Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 10:19:32

0001 /*
0002  * Summary: dynamic module loading
0003  * Description: basic API for dynamic module loading, used by
0004  *              libexslt added in 2.6.17
0005  *
0006  * Copy: See Copyright for the status of this software.
0007  *
0008  * Author: Joel W. Reed
0009  */
0010 
0011 #ifndef __XML_MODULE_H__
0012 #define __XML_MODULE_H__
0013 
0014 #include <libxml/xmlversion.h>
0015 
0016 #ifdef LIBXML_MODULES_ENABLED
0017 
0018 #ifdef __cplusplus
0019 extern "C" {
0020 #endif
0021 
0022 /**
0023  * xmlModulePtr:
0024  *
0025  * A handle to a dynamically loaded module
0026  */
0027 typedef struct _xmlModule xmlModule;
0028 typedef xmlModule *xmlModulePtr;
0029 
0030 /**
0031  * xmlModuleOption:
0032  *
0033  * enumeration of options that can be passed down to xmlModuleOpen()
0034  */
0035 typedef enum {
0036     XML_MODULE_LAZY = 1,    /* lazy binding */
0037     XML_MODULE_LOCAL= 2     /* local binding */
0038 } xmlModuleOption;
0039 
0040 XMLPUBFUN xmlModulePtr xmlModuleOpen    (const char *filename,
0041                          int options);
0042 
0043 XMLPUBFUN int xmlModuleSymbol       (xmlModulePtr module,
0044                          const char* name,
0045                          void **result);
0046 
0047 XMLPUBFUN int xmlModuleClose        (xmlModulePtr module);
0048 
0049 XMLPUBFUN int xmlModuleFree     (xmlModulePtr module);
0050 
0051 #ifdef __cplusplus
0052 }
0053 #endif
0054 
0055 #endif /* LIBXML_MODULES_ENABLED */
0056 
0057 #endif /*__XML_MODULE_H__ */