1*7c568831SAndroid Build Coastguard Worker /* 2*7c568831SAndroid Build Coastguard Worker * Summary: dynamic module loading 3*7c568831SAndroid Build Coastguard Worker * Description: basic API for dynamic module loading, used by 4*7c568831SAndroid Build Coastguard Worker * libexslt added in 2.6.17 5*7c568831SAndroid Build Coastguard Worker * 6*7c568831SAndroid Build Coastguard Worker * Copy: See Copyright for the status of this software. 7*7c568831SAndroid Build Coastguard Worker * 8*7c568831SAndroid Build Coastguard Worker * Author: Joel W. Reed 9*7c568831SAndroid Build Coastguard Worker */ 10*7c568831SAndroid Build Coastguard Worker 11*7c568831SAndroid Build Coastguard Worker #ifndef __XML_MODULE_H__ 12*7c568831SAndroid Build Coastguard Worker #define __XML_MODULE_H__ 13*7c568831SAndroid Build Coastguard Worker 14*7c568831SAndroid Build Coastguard Worker #include <libxml/xmlversion.h> 15*7c568831SAndroid Build Coastguard Worker 16*7c568831SAndroid Build Coastguard Worker #ifdef LIBXML_MODULES_ENABLED 17*7c568831SAndroid Build Coastguard Worker 18*7c568831SAndroid Build Coastguard Worker #ifdef __cplusplus 19*7c568831SAndroid Build Coastguard Worker extern "C" { 20*7c568831SAndroid Build Coastguard Worker #endif 21*7c568831SAndroid Build Coastguard Worker 22*7c568831SAndroid Build Coastguard Worker /** 23*7c568831SAndroid Build Coastguard Worker * xmlModulePtr: 24*7c568831SAndroid Build Coastguard Worker * 25*7c568831SAndroid Build Coastguard Worker * A handle to a dynamically loaded module 26*7c568831SAndroid Build Coastguard Worker */ 27*7c568831SAndroid Build Coastguard Worker typedef struct _xmlModule xmlModule; 28*7c568831SAndroid Build Coastguard Worker typedef xmlModule *xmlModulePtr; 29*7c568831SAndroid Build Coastguard Worker 30*7c568831SAndroid Build Coastguard Worker /** 31*7c568831SAndroid Build Coastguard Worker * xmlModuleOption: 32*7c568831SAndroid Build Coastguard Worker * 33*7c568831SAndroid Build Coastguard Worker * enumeration of options that can be passed down to xmlModuleOpen() 34*7c568831SAndroid Build Coastguard Worker */ 35*7c568831SAndroid Build Coastguard Worker typedef enum { 36*7c568831SAndroid Build Coastguard Worker XML_MODULE_LAZY = 1, /* lazy binding */ 37*7c568831SAndroid Build Coastguard Worker XML_MODULE_LOCAL= 2 /* local binding */ 38*7c568831SAndroid Build Coastguard Worker } xmlModuleOption; 39*7c568831SAndroid Build Coastguard Worker 40*7c568831SAndroid Build Coastguard Worker XML_DEPRECATED 41*7c568831SAndroid Build Coastguard Worker XMLPUBFUN xmlModulePtr xmlModuleOpen (const char *filename, 42*7c568831SAndroid Build Coastguard Worker int options); 43*7c568831SAndroid Build Coastguard Worker 44*7c568831SAndroid Build Coastguard Worker XML_DEPRECATED 45*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int xmlModuleSymbol (xmlModulePtr module, 46*7c568831SAndroid Build Coastguard Worker const char* name, 47*7c568831SAndroid Build Coastguard Worker void **result); 48*7c568831SAndroid Build Coastguard Worker 49*7c568831SAndroid Build Coastguard Worker XML_DEPRECATED 50*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int xmlModuleClose (xmlModulePtr module); 51*7c568831SAndroid Build Coastguard Worker 52*7c568831SAndroid Build Coastguard Worker XML_DEPRECATED 53*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int xmlModuleFree (xmlModulePtr module); 54*7c568831SAndroid Build Coastguard Worker 55*7c568831SAndroid Build Coastguard Worker #ifdef __cplusplus 56*7c568831SAndroid Build Coastguard Worker } 57*7c568831SAndroid Build Coastguard Worker #endif 58*7c568831SAndroid Build Coastguard Worker 59*7c568831SAndroid Build Coastguard Worker #endif /* LIBXML_MODULES_ENABLED */ 60*7c568831SAndroid Build Coastguard Worker 61*7c568831SAndroid Build Coastguard Worker #endif /*__XML_MODULE_H__ */ 62