pike.git / src / module_support.h

version» Context lines:

pike.git/src/module_support.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: module_support.h,v 1.8 2000/12/13 21:35:05 hubbe Exp $ + || This file is part of Pike. For copyright information see COPYRIGHT. + || Pike is distributed under GPL, LGPL and MPL. See the file COPYING + || for more information.   */ -  +    #ifndef MODULE_SUPPORT_H - #include <stdarg.h> + #define MODULE_SUPPORT_H    -  + #include "module.h" +    enum error_type {    ERR_NONE,    ERR_TOO_FEW,    ERR_TOO_MANY,    ERR_BAD_ARG   };      struct expect_result {    enum error_type error_type;    int argno; /* Which argument was it */    unsigned INT32 expected; /* What type was expected */    TYPE_T got; /* What type did we actually receive */   };      /* This should be used in module_init */   #define PIKE_MODULE_EXPORT(MOD, SYM) \ -  pike_module_export_symbol(#MOD "." #SYM, CONSTANT_STRLEN(#MOD "." #SYM), SYM) +  pike_module_export_symbol(#MOD "." #SYM, CONSTANT_STRLEN(#MOD "." #SYM), (void *)SYM)      #define PIKE_MODULE_IMPORT(MOD, SYM) \    pike_module_import_symbol(#MOD "." #SYM, CONSTANT_STRLEN(#MOD "." #SYM), #MOD, CONSTANT_STRLEN(#MOD))    -  + #define HIDE_MODULE() ADD_INT_CONSTANT("this_program_does_not_exist",1,0)      /* Prototypes begin here */   PMOD_EXPORT int check_args(int args, ...);   PMOD_EXPORT void check_all_args(const char *fnname, int args, ... );   int va_get_args(struct svalue *s,    INT32 num_args, -  char *fmt, +  const char *fmt,    va_list ap); -  + #ifdef NOT_USED   PMOD_EXPORT int get_args(struct svalue *s,    INT32 num_args, -  char *fmt, ...); - PMOD_EXPORT void get_all_args(char *fname, INT32 args, char *format, ... ); - PMOD_EXPORT void pike_module_export_symbol(char *str, +  const char *fmt, ...); + #endif + PMOD_EXPORT void get_all_args(const char *fname, INT32 args, +  const char *format, ... ); + PMOD_EXPORT void pike_module_export_symbol(const char *str,    int len,    void *ptr); - PMOD_EXPORT void *pike_module_import_symbol(char *str, + PMOD_EXPORT void *pike_module_import_symbol(const char *str,    int len, -  char *module, +  const char *module,    int module_len); -  + void cleanup_module_support (void);   /* Prototypes end here */      #endif