pike.git / src / program.h

version» Context lines:

pike.git/src/program.h:1:   /*\   ||| This file a part of Pike, and is copyright by Fredrik Hubinette   ||| Pike is distributed as GPL (General Public License)   ||| See the files COPYING and DISCLAIMER for more information.   \*/      /* -  * $Id: program.h,v 1.68 1999/11/23 10:38:16 mast Exp $ +  * $Id: program.h,v 1.69 1999/12/13 12:08:13 mast Exp $    */   #ifndef PROGRAM_H   #define PROGRAM_H      #include <stdarg.h>   #include "global.h"   #include "pike_types.h"   #include "pike_macros.h"   #include "svalue.h"   #include "time_stuff.h"
pike.git/src/program.h:458:   struct implements_cache_s;   int implements(struct program *a, struct program *b);   /* Prototypes end here */      #define ADD_FUNCTION(NAME,FUNC,TYPE,FLAGS) \    quick_add_function(NAME,CONSTANT_STRLEN(NAME),FUNC,TYPE,CONSTANT_STRLEN(TYPE),FLAGS,0)      #define ADD_INT_CONSTANT(NAME,CONST,FLAGS) \    quick_add_integer_constant(NAME,CONSTANT_STRLEN(NAME),CONST,FLAGS)    + #define ADD_FUNCTION_DTYPE(NAME,FUN,DTYPE,FLAGS) do { \ +  DTYPE_START; \ +  {DTYPE} \ +  { \ +  struct pike_string *_t; \ +  DTYPE_END(_t); \ +  quick_add_function(NAME,CONSTANT_STRLEN(NAME),FUN,_t->str,_t->len,FLAGS,0); \ +  free_string(_t); \ +  } \ + } while (0) +    #ifndef NO_PIKE_SHORTHAND   #define add_function pike_add_function   #endif      #endif /* PROGRAM_H */      #ifdef DEBUG_MALLOC   #define end_program() ((struct program *)debug_malloc_pass(debug_end_program()))   #define end_class(NAME, FLAGS) do { debug_malloc_touch(new_program); debug_end_class(NAME, CONSTANT_STRLEN(NAME), FLAGS); }while(0)   #else   #define end_class(NAME,FLAGS) debug_end_class(NAME, CONSTANT_STRLEN(NAME), FLAGS)   #define end_program debug_end_program   #endif         #ifdef PIKE_DEBUG   #define start_new_program() debug_start_new_program(__LINE__,__FILE__)   #else   #define start_new_program() debug_start_new_program()   #endif