pike.git / src / constants.h

version» Context lines:

pike.git/src/constants.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: constants.h,v 1.10 1999/12/07 09:40:55 hubbe Exp $ +  * $Id: constants.h,v 1.11 1999/12/13 12:08:12 mast Exp $    */   #ifndef ADD_EFUN_H   #define ADD_EFUN_H      #include "svalue.h"   #include "hashtable.h"   #include "las.h" /* For OPT_SIDE_EFFECT etc. */   #include "block_alloc_h.h"      typedef int (*docode_fun)(node *n);
pike.git/src/constants.h:71:   /* Prototypes end here */         #include "pike_macros.h"      #define ADD_EFUN(NAME,FUN,TYPE,FLAGS) \    quick_add_efun(NAME,CONSTANT_STRLEN(NAME),FUN,TYPE,CONSTANT_STRLEN(TYPE),FLAGS,0,0)      #define ADD_EFUN2(NAME,FUN,TYPE,FLAGS,OPTIMIZE,DOCODE) \    quick_add_efun(NAME,CONSTANT_STRLEN(NAME),FUN,TYPE,CONSTANT_STRLEN(TYPE),FLAGS,OPTIMIZE,DOCODE) +  + #define ADD_EFUN_DTYPE(NAME,FUN,DTYPE,FLAGS) do { \ +  DTYPE_START; \ +  {DTYPE} \ +  { \ +  struct pike_string *_t; \ +  DTYPE_END(_t); \ +  quick_add_efun(NAME,CONSTANT_STRLEN(NAME),FUN,_t->str,_t->len,FLAGS,0,0); \ +  free_string(_t); \ +  } \ + } while (0) +    #endif