comparison src/lisp.h @ 30218:70f3583c5da1

(FUNCTIONP): New macro. (internal_condition_case_2, call_function): Add prototypes.
author Gerd Moellmann <gerd@gnu.org>
date Fri, 14 Jul 2000 13:57:22 +0000
parents 7438876dc5c9
children 6dd0219378f5
comparison
equal deleted inserted replaced
30217:887b4d52a334 30218:70f3583c5da1
1436 Lisp_Object, Lisp_Object, Lisp_Object) 1436 Lisp_Object, Lisp_Object, Lisp_Object)
1437 #define DEFUN_ARGS_8 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, \ 1437 #define DEFUN_ARGS_8 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, \
1438 Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object) 1438 Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object)
1439 #endif 1439 #endif
1440 1440
1441 /* Non-zero if OBJ is a Lisp function. */
1442
1443 #define FUNCTIONP(OBJ) \
1444 ((CONSP (OBJ) && EQ (XCAR (OBJ), Qlambda)) \
1445 || (SYMBOLP (OBJ) && !NILP (Ffboundp (OBJ))) \
1446 || COMPILEDP (OBJ) \
1447 || SUBRP (OBJ))
1448
1441 /* defsubr (Sname); 1449 /* defsubr (Sname);
1442 is how we define the symbol for function `name' at start-up time. */ 1450 is how we define the symbol for function `name' at start-up time. */
1443 extern void defsubr P_ ((struct Lisp_Subr *)); 1451 extern void defsubr P_ ((struct Lisp_Subr *));
1444 1452
1445 #define MANY -2 1453 #define MANY -2
2308 EXFUN (Fdo_auto_save, 2); 2316 EXFUN (Fdo_auto_save, 2);
2309 extern Lisp_Object apply_lambda P_ ((Lisp_Object, Lisp_Object, int)); 2317 extern Lisp_Object apply_lambda P_ ((Lisp_Object, Lisp_Object, int));
2310 extern Lisp_Object internal_catch P_ ((Lisp_Object, Lisp_Object (*) (Lisp_Object), Lisp_Object)); 2318 extern Lisp_Object internal_catch P_ ((Lisp_Object, Lisp_Object (*) (Lisp_Object), Lisp_Object));
2311 extern Lisp_Object internal_condition_case P_ ((Lisp_Object (*) (void), Lisp_Object, Lisp_Object (*) (Lisp_Object))); 2319 extern Lisp_Object internal_condition_case P_ ((Lisp_Object (*) (void), Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2312 extern Lisp_Object internal_condition_case_1 P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object, Lisp_Object, Lisp_Object (*) (Lisp_Object))); 2320 extern Lisp_Object internal_condition_case_1 P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object, Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2321 extern Lisp_Object internal_condition_case_2 P_ ((Lisp_Object (*) (int, Lisp_Object *), int, Lisp_Object *, Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2313 extern void specbind P_ ((Lisp_Object, Lisp_Object)); 2322 extern void specbind P_ ((Lisp_Object, Lisp_Object));
2314 extern void record_unwind_protect P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object)); 2323 extern void record_unwind_protect P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object));
2315 extern Lisp_Object unbind_to P_ ((int, Lisp_Object)); 2324 extern Lisp_Object unbind_to P_ ((int, Lisp_Object));
2316 extern void error P_ ((/* char *, ... */)); 2325 extern void error P_ ((/* char *, ... */));
2317 extern void do_autoload P_ ((Lisp_Object, Lisp_Object)); 2326 extern void do_autoload P_ ((Lisp_Object, Lisp_Object));
2318 extern Lisp_Object un_autoload P_ ((Lisp_Object)); 2327 extern Lisp_Object un_autoload P_ ((Lisp_Object));
2319 EXFUN (Ffetch_bytecode, 1); 2328 EXFUN (Ffetch_bytecode, 1);
2320 extern void init_eval_once P_ ((void)); 2329 extern void init_eval_once P_ ((void));
2330 extern Lisp_Object call_function P_ ((int, Lisp_Object *));
2321 extern void init_eval P_ ((void)); 2331 extern void init_eval P_ ((void));
2322 extern void syms_of_eval P_ ((void)); 2332 extern void syms_of_eval P_ ((void));
2323 2333
2324 /* Defined in editfns.c */ 2334 /* Defined in editfns.c */
2325 EXFUN (Fcurrent_message, 0); 2335 EXFUN (Fcurrent_message, 0);