Mercurial > hg > xemacs-beta
comparison src/symeval.h @ 1632:64eaceca611d
[xemacs-hg @ 2003-08-19 02:07:03 by james]
Enable module building and running on Cygwin and MinGW.
author | james |
---|---|
date | Tue, 19 Aug 2003 02:07:16 +0000 |
parents | 184461bc8de4 |
children | 34abfb24e891 |
comparison
equal
deleted
inserted
replaced
1631:1bf7b032a45d | 1632:64eaceca611d |
---|---|
273 | 273 |
274 /* To define a Lisp primitive function using a C function `Fname', do this: | 274 /* To define a Lisp primitive function using a C function `Fname', do this: |
275 DEFUN ("name, Fname, ...); // at top level in foo.c | 275 DEFUN ("name, Fname, ...); // at top level in foo.c |
276 DEFSUBR (Fname); // in syms_of_foo(); | 276 DEFSUBR (Fname); // in syms_of_foo(); |
277 */ | 277 */ |
278 void defsubr (Lisp_Subr *); | 278 MODULE_API void defsubr (Lisp_Subr *); |
279 #define DEFSUBR(Fname) defsubr (&S##Fname) | 279 #define DEFSUBR(Fname) defsubr (&S##Fname) |
280 | 280 |
281 /* To define a Lisp primitive macro using a C function `Fname', do this: | 281 /* To define a Lisp primitive macro using a C function `Fname', do this: |
282 DEFUN ("name, Fname, ...); // at top level in foo.c | 282 DEFUN ("name, Fname, ...); // at top level in foo.c |
283 DEFSUBR_MACRO (Fname); // in syms_of_foo(); | 283 DEFSUBR_MACRO (Fname); // in syms_of_foo(); |
284 */ | 284 */ |
285 void defsubr_macro (Lisp_Subr *); | 285 MODULE_API void defsubr_macro (Lisp_Subr *); |
286 #define DEFSUBR_MACRO(Fname) defsubr_macro (&S##Fname) | 286 #define DEFSUBR_MACRO(Fname) defsubr_macro (&S##Fname) |
287 | 287 |
288 void defsymbol_massage_name (Lisp_Object *location, const char *name); | 288 MODULE_API void defsymbol_massage_name (Lisp_Object *location, |
289 void defsymbol_massage_name_nodump (Lisp_Object *location, const char *name); | 289 const char *name); |
290 void defsymbol_massage_multiword_predicate (Lisp_Object *location, | 290 MODULE_API void defsymbol_massage_name_nodump (Lisp_Object *location, |
291 const char *name); | 291 const char *name); |
292 void defsymbol_massage_multiword_predicate_nodump (Lisp_Object *location, | 292 MODULE_API void defsymbol_massage_multiword_predicate (Lisp_Object *location, |
293 const char *name); | 293 const char *name); |
294 void defsymbol (Lisp_Object *location, const char *name); | 294 MODULE_API void |
295 void defsymbol_nodump (Lisp_Object *location, const char *name); | 295 defsymbol_massage_multiword_predicate_nodump (Lisp_Object *location, |
296 const char *name); | |
297 MODULE_API void defsymbol (Lisp_Object *location, const char *name); | |
298 MODULE_API void defsymbol_nodump (Lisp_Object *location, const char *name); | |
296 | 299 |
297 /* Defining symbols: | 300 /* Defining symbols: |
298 | 301 |
299 (1) A standard symbol is defined with DEFSYMBOL. That means that | 302 (1) A standard symbol is defined with DEFSYMBOL. That means that |
300 the symbol's print name can be derived from the symbol's variable | 303 the symbol's print name can be derived from the symbol's variable |
325 #define DEFSYMBOL_MULTIWORD_PREDICATE(name) \ | 328 #define DEFSYMBOL_MULTIWORD_PREDICATE(name) \ |
326 defsymbol_massage_multiword_predicate (&name, #name) | 329 defsymbol_massage_multiword_predicate (&name, #name) |
327 #define DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP(name) \ | 330 #define DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP(name) \ |
328 defsymbol_massage_multiword_predicate_nodump (&name, #name) | 331 defsymbol_massage_multiword_predicate_nodump (&name, #name) |
329 | 332 |
330 void defkeyword (Lisp_Object *location, const char *name); | 333 MODULE_API void defkeyword (Lisp_Object *location, const char *name); |
331 void defkeyword_massage_name (Lisp_Object *location, const char *name); | 334 MODULE_API void defkeyword_massage_name (Lisp_Object *location, |
335 const char *name); | |
332 #define DEFKEYWORD(name) defkeyword_massage_name (&name, #name) | 336 #define DEFKEYWORD(name) defkeyword_massage_name (&name, #name) |
333 | 337 |
334 void deferror (Lisp_Object *symbol, const char *name, | 338 MODULE_API void deferror (Lisp_Object *symbol, const char *name, |
335 const char *message, Lisp_Object inherits_from); | 339 const char *message, Lisp_Object inherits_from); |
336 void deferror_massage_name (Lisp_Object *symbol, const char *name, | 340 MODULE_API void deferror_massage_name (Lisp_Object *symbol, const char *name, |
337 const char *message, Lisp_Object inherits_from); | 341 const char *message, |
338 void deferror_massage_name_and_message (Lisp_Object *symbol, const char *name, | 342 Lisp_Object inherits_from); |
339 Lisp_Object inherits_from); | 343 MODULE_API void deferror_massage_name_and_message (Lisp_Object *symbol, |
344 const char *name, | |
345 Lisp_Object inherits_from); | |
340 #define DEFERROR(name, message, inherits_from) \ | 346 #define DEFERROR(name, message, inherits_from) \ |
341 deferror_massage_name (&name, #name, message, inherits_from) | 347 deferror_massage_name (&name, #name, message, inherits_from) |
342 /* In this case, the error message is the same as the name, modulo some | 348 /* In this case, the error message is the same as the name, modulo some |
343 prettifying */ | 349 prettifying */ |
344 #define DEFERROR_STANDARD(name, inherits_from) \ | 350 #define DEFERROR_STANDARD(name, inherits_from) \ |
345 deferror_massage_name_and_message (&name, #name, inherits_from) | 351 deferror_massage_name_and_message (&name, #name, inherits_from) |
346 | 352 |
347 /* Macros we use to define forwarded Lisp variables. | 353 /* Macros we use to define forwarded Lisp variables. |
348 These are used in the syms_of_FILENAME functions. */ | 354 These are used in the syms_of_FILENAME functions. */ |
349 | 355 |
350 void defvar_magic (const char *symbol_name, | 356 MODULE_API void defvar_magic (const char *symbol_name, |
351 const struct symbol_value_forward *magic); | 357 const struct symbol_value_forward *magic); |
352 | 358 |
353 #define DEFVAR_SYMVAL_FWD(lname, c_location, forward_type, magicfun) \ | 359 #define DEFVAR_SYMVAL_FWD(lname, c_location, forward_type, magicfun) \ |
354 do \ | 360 do \ |
355 { \ | 361 { \ |
356 static const struct symbol_value_forward I_hate_C = \ | 362 static const struct symbol_value_forward I_hate_C = \ |