/* Declarations for built-in function stuff. */ #ifndef FUNCS_H #define FUNCS_H /*************************************************************************/ /* Return the ID number for a given function name, or -1 if no such * function exists. */ extern int func_id(const char *name); /* Return the type of a given function. */ extern int func_type(int id); /* Return the minimum number of arguments needed by a given function. */ extern int func_minargs(int id); /* Return the maximum number of arguments needed by a given function. */ extern int func_maxargs(int id); /* Return the required type of the `arg'th argument, or -1 if there is * either no such argument or no required type for that argument. */ extern int func_argtype(int id, int arg); /* Return the value of a function. The number and types of arguments are * assumed to be correct. */ extern ETree *func_eval(int id, ETree **args); /*************************************************************************/ #endif /* FUNCS_H */