mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-12 14:50:19 +02:00
(SCM_DEFINE_PUBLIC): New.
This commit is contained in:
parent
f8a1712b11
commit
5527702a65
1 changed files with 13 additions and 1 deletions
|
@ -3,7 +3,7 @@
|
||||||
#ifndef SCM_SNARF_H
|
#ifndef SCM_SNARF_H
|
||||||
#define SCM_SNARF_H
|
#define SCM_SNARF_H
|
||||||
|
|
||||||
/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc.
|
/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
@ -108,6 +108,18 @@ scm_c_define_gsubr (s_ ## FNAME, REQ, OPT, VAR, \
|
||||||
)\
|
)\
|
||||||
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
|
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
|
||||||
|
|
||||||
|
#define SCM_DEFINE_PUBLIC(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
|
||||||
|
SCM_SNARF_HERE(\
|
||||||
|
static const char s_ ## FNAME [] = PRIMNAME; \
|
||||||
|
SCM FNAME ARGLIST\
|
||||||
|
)\
|
||||||
|
SCM_SNARF_INIT(\
|
||||||
|
scm_c_define_gsubr (s_ ## FNAME, REQ, OPT, VAR, \
|
||||||
|
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME); \
|
||||||
|
scm_c_export (s_ ## FNAME, NULL); \
|
||||||
|
)\
|
||||||
|
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
|
||||||
|
|
||||||
#define SCM_DEFINE1(FNAME, PRIMNAME, TYPE, ARGLIST, DOCSTRING) \
|
#define SCM_DEFINE1(FNAME, PRIMNAME, TYPE, ARGLIST, DOCSTRING) \
|
||||||
SCM_SNARF_HERE(\
|
SCM_SNARF_HERE(\
|
||||||
static const char s_ ## FNAME [] = PRIMNAME; \
|
static const char s_ ## FNAME [] = PRIMNAME; \
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue