[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 16 snarf macros
From: |
Dale P. Smith |
Subject: |
Re: 16 snarf macros |
Date: |
Sat, 9 Mar 2002 07:53:14 -0500 |
On 08 Mar 2002 23:15:16 +0100
Marius Vollmer <address@hidden> wrote:
> "Dale P. Smith" <address@hidden> writes:
>
> > #define TYPE_GET(TYPE, GETTER, C_NAME, S_NAME) \
> > SCM_SNARF_HERE (\
> > static const char s_##TYPE##_get_##C_NAME [] = S_NAME; \
> > static SCM TYPE##_get_##C_NAME (SCM obj) \
> > { \
> > TYPE *o; \
> > SCM_ASSERT(SCM_SMOB_PREDICATE(tc_##TYPE, obj), obj, SCM_ARG1,
> > s_##TYPE##_get_##C_NAME);\
> > o = (TYPE *) SCM_SMOB_DATA(obj); \
> > return GETTER; \
> > }\
> > )SCM_SNARF_INIT (\
> > scm_c_define_gsubr(s_##TYPE##_get_##C_NAME, 1, 0, 0,
> > TYPE##_get_##C_NAME);\
> > )
>
> Can't you do the following?
>
> #define TYPE_GET(TYPE, GETTER, C_NAME, S_NAME) \
> SCM_PROC (s_##TYPE##_get_##C_NAME, S_NAME, 1, 0, 0, TYPE##_get_##C_NAME) \
> static SCM \
> TYPE##_get_##C_NAME (SCM obj) \
> { \
> TYPE *o; \
> SCM_ASSERT (SCM_SMOB_PREDICATE(tc_##TYPE, obj), obj, SCM_ARG1, \
> s_##TYPE##_get_##C_NAME); \
> o = (TYPE *) SCM_SMOB_DATA(obj); \
> return GETTER; \
> }
>
No. The function bodies end up in the .x file.
-Dale
--
Dale P. Smith
Treasurer, Cleveland Linux Users Group http://cleveland.lug.net
Senior Systems Consultant, Altus Technologies Corporation
address@hidden
440-746-9000 x339
- 16 snarf macros, Thien-Thi Nguyen, 2002/03/08
- Re: 16 snarf macros, Dale P. Smith, 2002/03/08
- Re: 16 snarf macros, Thien-Thi Nguyen, 2002/03/08
- Re: 16 snarf macros, Dale P. Smith, 2002/03/08
- Re: 16 snarf macros, Thien-Thi Nguyen, 2002/03/08
- Re: 16 snarf macros, Marius Vollmer, 2002/03/08
- Re: 16 snarf macros, Dale P. Smith, 2002/03/08
- Re: 16 snarf macros,
Dale P. Smith <=
- Re: 16 snarf macros, Marius Vollmer, 2002/03/14
Re: 16 snarf macros, Neil Jerram, 2002/03/08
Re: 16 snarf macros, Marius Vollmer, 2002/03/08