19 #ifndef __XML_XPATH_H__ 20 #define __XML_XPATH_H__ 24 #ifdef LIBXML_XPATH_ENABLED 31 #if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 37 #ifdef LIBXML_XPATH_ENABLED 39 typedef struct _xmlXPathContext xmlXPathContext;
40 typedef xmlXPathContext *xmlXPathContextPtr;
41 typedef struct _xmlXPathParserContext xmlXPathParserContext;
42 typedef xmlXPathParserContext *xmlXPathParserContextPtr;
49 XPATH_EXPRESSION_OK = 0,
51 XPATH_UNFINISHED_LITERAL_ERROR,
52 XPATH_START_LITERAL_ERROR,
53 XPATH_VARIABLE_REF_ERROR,
54 XPATH_UNDEF_VARIABLE_ERROR,
55 XPATH_INVALID_PREDICATE_ERROR,
58 XPATH_UNKNOWN_FUNC_ERROR,
59 XPATH_INVALID_OPERAND,
62 XPATH_INVALID_CTXT_SIZE,
63 XPATH_INVALID_CTXT_POSITION,
67 XPTR_SUB_RESOURCE_ERROR,
68 XPATH_UNDEF_PREFIX_ERROR,
70 XPATH_INVALID_CHAR_ERROR,
73 XPATH_FORBID_VARIABLE_ERROR,
74 XPATH_OP_LIMIT_EXCEEDED,
75 XPATH_RECURSION_LIMIT_EXCEEDED
81 typedef struct _xmlNodeSet xmlNodeSet;
82 typedef xmlNodeSet *xmlNodeSetPtr;
109 XPATH_LOCATIONSET = 7,
112 } xmlXPathObjectType;
114 typedef struct _xmlXPathObject xmlXPathObject;
115 typedef xmlXPathObject *xmlXPathObjectPtr;
116 struct _xmlXPathObject {
117 xmlXPathObjectType
type;
118 xmlNodeSetPtr nodesetval;
138 typedef int (*xmlXPathConvertFunc) (xmlXPathObjectPtr
obj,
int type);
144 typedef struct _xmlXPathType xmlXPathType;
145 typedef xmlXPathType *xmlXPathTypePtr;
146 struct _xmlXPathType {
148 xmlXPathConvertFunc
func;
155 typedef struct _xmlXPathVariable xmlXPathVariable;
156 typedef xmlXPathVariable *xmlXPathVariablePtr;
157 struct _xmlXPathVariable {
159 xmlXPathObjectPtr
value;
170 typedef void (*xmlXPathEvalFunc)(xmlXPathParserContextPtr ctxt,
177 typedef struct _xmlXPathFunct xmlXPathFunct;
178 typedef xmlXPathFunct *xmlXPathFuncPtr;
179 struct _xmlXPathFunct {
181 xmlXPathEvalFunc
func;
196 typedef xmlXPathObjectPtr (*xmlXPathAxisFunc) (xmlXPathParserContextPtr ctxt,
197 xmlXPathObjectPtr
cur);
203 typedef struct _xmlXPathAxis xmlXPathAxis;
204 typedef xmlXPathAxis *xmlXPathAxisPtr;
205 struct _xmlXPathAxis {
207 xmlXPathAxisFunc
func;
220 typedef void (*xmlXPathFunction) (xmlXPathParserContextPtr ctxt,
int nargs);
237 typedef xmlXPathObjectPtr (*xmlXPathVariableLookupFunc) (
void *ctxt,
252 typedef xmlXPathFunction (*xmlXPathFuncLookupFunc) (
void *ctxt,
265 #define XML_XPATH_CHECKNS (1<<0) 271 #define XML_XPATH_NOVAR (1<<1) 290 struct _xmlXPathContext {
294 int nb_variables_unused;
295 int max_variables_unused;
300 xmlXPathTypePtr
types;
303 int max_funcs_unused;
308 xmlXPathAxisPtr axis;
317 int proximityPosition;
326 xmlXPathVariableLookupFunc varLookupFunc;
337 xmlXPathFuncLookupFunc funcLookupFunc;
338 void *funcLookupData;
346 xmlStructuredErrorFunc
error;
359 unsigned long opLimit;
360 unsigned long opCount;
370 typedef struct _xmlXPathCompExpr xmlXPathCompExpr;
371 typedef xmlXPathCompExpr *xmlXPathCompExprPtr;
379 struct _xmlXPathParserContext {
386 xmlXPathObjectPtr
value;
389 xmlXPathObjectPtr *valueTab;
391 xmlXPathCompExprPtr comp;
421 #define xmlXPathNodeSetGetLength(ns) ((ns) ? (ns)->nodeNr : 0) 432 #define xmlXPathNodeSetItem(ns, index) \ 433 ((((ns) != NULL) && \ 434 ((index) >= 0) && ((index) < (ns)->nodeNr)) ? \ 435 (ns)->nodeTab[(index)] \ 445 #define xmlXPathNodeSetIsEmpty(ns) \ 446 (((ns) == NULL) || ((ns)->nodeNr == 0) || ((ns)->nodeTab == NULL)) 450 xmlXPathFreeObject (xmlXPathObjectPtr
obj);
454 xmlXPathFreeNodeSetList (xmlXPathObjectPtr
obj);
456 xmlXPathFreeNodeSet (xmlNodeSetPtr
obj);
458 xmlXPathObjectCopy (xmlXPathObjectPtr
val);
466 xmlXPathCastNumberToBoolean (
double val);
468 xmlXPathCastStringToBoolean (
const xmlChar *
val);
470 xmlXPathCastNodeSetToBoolean(xmlNodeSetPtr
ns);
472 xmlXPathCastToBoolean (xmlXPathObjectPtr
val);
475 xmlXPathCastBooleanToNumber (
int val);
477 xmlXPathCastStringToNumber (
const xmlChar *
val);
481 xmlXPathCastNodeSetToNumber (xmlNodeSetPtr
ns);
483 xmlXPathCastToNumber (xmlXPathObjectPtr
val);
486 xmlXPathCastBooleanToString (
int val);
488 xmlXPathCastNumberToString (
double val);
492 xmlXPathCastNodeSetToString (xmlNodeSetPtr
ns);
494 xmlXPathCastToString (xmlXPathObjectPtr
val);
497 xmlXPathConvertBoolean (xmlXPathObjectPtr
val);
499 xmlXPathConvertNumber (xmlXPathObjectPtr
val);
501 xmlXPathConvertString (xmlXPathObjectPtr
val);
509 xmlXPathFreeContext (xmlXPathContextPtr ctxt);
511 xmlXPathContextSetCache(xmlXPathContextPtr ctxt,
522 xmlXPathContextPtr
ctx);
526 xmlXPathContextPtr
ctx);
529 xmlXPathContextPtr
ctx);
532 xmlXPathContextPtr ctxt);
534 xmlXPathEvalPredicate (xmlXPathContextPtr ctxt,
535 xmlXPathObjectPtr
res);
542 xmlXPathCtxtCompile (xmlXPathContextPtr ctxt,
545 xmlXPathCompiledEval (xmlXPathCompExprPtr comp,
546 xmlXPathContextPtr
ctx);
548 xmlXPathCompiledEvalToBoolean(xmlXPathCompExprPtr comp,
549 xmlXPathContextPtr ctxt);
551 xmlXPathFreeCompExpr (xmlXPathCompExprPtr comp);
553 #if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 557 xmlXPathIsNaN (
double val);
559 xmlXPathIsInf (
double val);
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
GLsizei GLenum GLenum * types
GLsizei GLsizei GLuint * obj
_In_opt_ PVOID _In_ ULONG _In_ PVOID context
GLint GLint GLsizei GLsizei GLsizei depth
GLsizei const GLfloat * value
GLuint GLuint GLsizei GLenum type
void user(int argc, const char *argv[])
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLuint const GLchar * name