[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 16 snarf macros
From: |
Marius Vollmer |
Subject: |
Re: 16 snarf macros |
Date: |
08 Mar 2002 23:15:16 +0100 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 |
"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; \
}
- 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 <=
- Re: 16 snarf macros, Dale P. Smith, 2002/03/08
- Re: 16 snarf macros, Dale P. Smith, 2002/03/09
- 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