• Home
  • Raw
  • Download

Lines Matching refs:ctxt

89 xmlXPtrErr(xmlXPathParserContextPtr ctxt, int error,  in xmlXPtrErr()  argument
92 if (ctxt != NULL) in xmlXPtrErr()
93 ctxt->error = error; in xmlXPtrErr()
94 if ((ctxt == NULL) || (ctxt->context == NULL)) { in xmlXPtrErr()
102 ctxt->context->lastError.domain = XML_FROM_XPOINTER; in xmlXPtrErr()
103 ctxt->context->lastError.code = error; in xmlXPtrErr()
104 ctxt->context->lastError.level = XML_ERR_ERROR; in xmlXPtrErr()
105 ctxt->context->lastError.str1 = (char *) xmlStrdup(ctxt->base); in xmlXPtrErr()
106 ctxt->context->lastError.int1 = ctxt->cur - ctxt->base; in xmlXPtrErr()
107 ctxt->context->lastError.node = ctxt->context->debugNode; in xmlXPtrErr()
108 if (ctxt->context->error != NULL) { in xmlXPtrErr()
109 ctxt->context->error(ctxt->context->userData, in xmlXPtrErr()
110 &ctxt->context->lastError); in xmlXPtrErr()
113 NULL, ctxt->context->debugNode, XML_FROM_XPOINTER, in xmlXPtrErr()
115 (const char *) extra, (const char *) ctxt->base, NULL, in xmlXPtrErr()
116 ctxt->cur - ctxt->base, 0, in xmlXPtrErr()
876 static void xmlXPtrEvalChildSeq(xmlXPathParserContextPtr ctxt, xmlChar *name);
901 #define CUR (*ctxt->cur)
902 #define SKIP(val) ctxt->cur += (val)
903 #define NXT(val) ctxt->cur[(val)]
904 #define CUR_PTR ctxt->cur
907 while (IS_BLANK_CH(*(ctxt->cur))) NEXT
909 #define CURRENT (*ctxt->cur)
910 #define NEXT ((*ctxt->cur) ? ctxt->cur++: ctxt->cur)
921 xmlXPtrGetChildNo(xmlXPathParserContextPtr ctxt, int indx) { in xmlXPtrGetChildNo() argument
927 obj = valuePop(ctxt); in xmlXPtrGetChildNo()
931 valuePush(ctxt, xmlXPathNewNodeSet(NULL)); in xmlXPtrGetChildNo()
937 valuePush(ctxt, xmlXPathNewNodeSet(NULL)); in xmlXPtrGetChildNo()
941 valuePush(ctxt, obj); in xmlXPtrGetChildNo()
979 xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) { in xmlXPtrEvalXPtrPart() argument
985 name = xmlXPathParseName(ctxt); in xmlXPtrEvalXPtrPart()
994 len = xmlStrlen(ctxt->cur); in xmlXPtrEvalXPtrPart()
1044 ctxt->context->node = (xmlNodePtr)ctxt->context->doc; in xmlXPtrEvalXPtrPart()
1045 ctxt->context->proximityPosition = 1; in xmlXPtrEvalXPtrPart()
1046 ctxt->context->contextSize = 1; in xmlXPtrEvalXPtrPart()
1047 xmlXPathEvalExpr(ctxt); in xmlXPtrEvalXPtrPart()
1055 xmlXPathRoot(ctxt); in xmlXPtrEvalXPtrPart()
1056 xmlXPtrEvalChildSeq(ctxt, NULL); in xmlXPtrEvalXPtrPart()
1058 name2 = xmlXPathParseName(ctxt); in xmlXPtrEvalXPtrPart()
1064 xmlXPtrEvalChildSeq(ctxt, name2); in xmlXPtrEvalXPtrPart()
1075 prefix = xmlXPathParseNCName(ctxt); in xmlXPtrEvalXPtrPart()
1092 value = xmlParseURI((const char *)ctxt->cur); in xmlXPtrEvalXPtrPart()
1108 xmlXPathRegisterNs(ctxt->context, prefix, URI); in xmlXPtrEvalXPtrPart()
1114 xmlXPtrErr(ctxt, XML_XPTR_UNKNOWN_SCHEME, in xmlXPtrEvalXPtrPart()
1149 xmlXPtrEvalFullXPtr(xmlXPathParserContextPtr ctxt, xmlChar *name) { in xmlXPtrEvalFullXPtr() argument
1151 name = xmlXPathParseName(ctxt); in xmlXPtrEvalFullXPtr()
1155 ctxt->error = XPATH_EXPRESSION_OK; in xmlXPtrEvalFullXPtr()
1156 xmlXPtrEvalXPtrPart(ctxt, name); in xmlXPtrEvalFullXPtr()
1159 if ((ctxt->error != XPATH_EXPRESSION_OK) && in xmlXPtrEvalFullXPtr()
1160 (ctxt->error != XML_XPTR_UNKNOWN_SCHEME)) in xmlXPtrEvalFullXPtr()
1167 if (ctxt->value != NULL) { in xmlXPtrEvalFullXPtr()
1168 xmlXPathObjectPtr obj = ctxt->value; in xmlXPtrEvalFullXPtr()
1172 xmlLocationSetPtr loc = ctxt->value->user; in xmlXPtrEvalFullXPtr()
1178 xmlNodeSetPtr loc = ctxt->value->nodesetval; in xmlXPtrEvalFullXPtr()
1192 obj = valuePop(ctxt); in xmlXPtrEvalFullXPtr()
1203 name = xmlXPathParseName(ctxt); in xmlXPtrEvalFullXPtr()
1219 xmlXPtrEvalChildSeq(xmlXPathParserContextPtr ctxt, xmlChar *name) { in xmlXPtrEvalChildSeq() argument
1225 xmlXPtrErr(ctxt, XML_XPTR_CHILDSEQ_START, in xmlXPtrEvalChildSeq()
1230 valuePush(ctxt, xmlXPathNewString(name)); in xmlXPtrEvalChildSeq()
1232 xmlXPathIdFunction(ctxt, 1); in xmlXPtrEvalChildSeq()
1244 xmlXPtrGetChildNo(ctxt, child); in xmlXPtrEvalChildSeq()
1260 xmlXPtrEvalXPointer(xmlXPathParserContextPtr ctxt) { in xmlXPtrEvalXPointer() argument
1261 if (ctxt->valueTab == NULL) { in xmlXPtrEvalXPointer()
1263 ctxt->valueTab = (xmlXPathObjectPtr *) in xmlXPtrEvalXPointer()
1265 if (ctxt->valueTab == NULL) { in xmlXPtrEvalXPointer()
1269 ctxt->valueNr = 0; in xmlXPtrEvalXPointer()
1270 ctxt->valueMax = 10; in xmlXPtrEvalXPointer()
1271 ctxt->value = NULL; in xmlXPtrEvalXPointer()
1272 ctxt->valueFrame = 0; in xmlXPtrEvalXPointer()
1276 xmlXPathRoot(ctxt); in xmlXPtrEvalXPointer()
1277 xmlXPtrEvalChildSeq(ctxt, NULL); in xmlXPtrEvalXPointer()
1281 name = xmlXPathParseName(ctxt); in xmlXPtrEvalXPointer()
1285 xmlXPtrEvalFullXPtr(ctxt, name); in xmlXPtrEvalXPointer()
1290 xmlXPtrEvalChildSeq(ctxt, name); in xmlXPtrEvalXPointer()
1306 void xmlXPtrStringRangeFunction(xmlXPathParserContextPtr ctxt, int nargs);
1308 void xmlXPtrStartPointFunction(xmlXPathParserContextPtr ctxt, int nargs);
1310 void xmlXPtrEndPointFunction(xmlXPathParserContextPtr ctxt, int nargs);
1312 void xmlXPtrHereFunction(xmlXPathParserContextPtr ctxt, int nargs);
1314 void xmlXPtrOriginFunction(xmlXPathParserContextPtr ctxt, int nargs);
1316 void xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs);
1318 void xmlXPtrRangeFunction(xmlXPathParserContextPtr ctxt, int nargs);
1374 xmlXPathParserContextPtr ctxt; in xmlXPtrEval() local
1384 ctxt = xmlXPathNewParserContext(str, ctx); in xmlXPtrEval()
1385 ctxt->xptr = 1; in xmlXPtrEval()
1386 xmlXPtrEvalXPointer(ctxt); in xmlXPtrEval()
1388 if ((ctxt->value != NULL) && in xmlXPtrEval()
1389 (ctxt->value->type != XPATH_NODESET) && in xmlXPtrEval()
1390 (ctxt->value->type != XPATH_LOCATIONSET)) { in xmlXPtrEval()
1391 xmlXPtrErr(ctxt, XML_XPTR_EVAL_FAILED, in xmlXPtrEval()
1395 res = valuePop(ctxt); in xmlXPtrEval()
1399 tmp = valuePop(ctxt); in xmlXPtrEval()
1418 xmlXPtrErr(ctxt, XML_XPTR_EXTRA_OBJECTS, in xmlXPtrEval()
1422 if (ctxt->error != XPATH_EXPRESSION_OK) { in xmlXPtrEval()
1427 xmlXPathFreeParserContext(ctxt); in xmlXPtrEval()
1746 xmlXPtrHereFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrHereFunction() argument
1749 if (ctxt->context->here == NULL) in xmlXPtrHereFunction()
1752 valuePush(ctxt, xmlXPtrNewLocationSetNodes(ctxt->context->here, NULL)); in xmlXPtrHereFunction()
1764 xmlXPtrOriginFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrOriginFunction() argument
1767 if (ctxt->context->origin == NULL) in xmlXPtrOriginFunction()
1770 valuePush(ctxt, xmlXPtrNewLocationSetNodes(ctxt->context->origin, NULL)); in xmlXPtrOriginFunction()
1797 xmlXPtrStartPointFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrStartPointFunction() argument
1803 if ((ctxt->value == NULL) || in xmlXPtrStartPointFunction()
1804 ((ctxt->value->type != XPATH_LOCATIONSET) && in xmlXPtrStartPointFunction()
1805 (ctxt->value->type != XPATH_NODESET))) in xmlXPtrStartPointFunction()
1808 obj = valuePop(ctxt); in xmlXPtrStartPointFunction()
1862 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrStartPointFunction()
1891 xmlXPtrEndPointFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrEndPointFunction() argument
1897 if ((ctxt->value == NULL) || in xmlXPtrEndPointFunction()
1898 ((ctxt->value->type != XPATH_LOCATIONSET) && in xmlXPtrEndPointFunction()
1899 (ctxt->value->type != XPATH_NODESET))) in xmlXPtrEndPointFunction()
1902 obj = valuePop(ctxt); in xmlXPtrEndPointFunction()
1955 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrEndPointFunction()
1971 xmlXPtrCoveringRange(xmlXPathParserContextPtr ctxt, xmlXPathObjectPtr loc) { in xmlXPtrCoveringRange() argument
1974 if ((ctxt == NULL) || (ctxt->context == NULL) || in xmlXPtrCoveringRange()
1975 (ctxt->context->doc == NULL)) in xmlXPtrCoveringRange()
1987 if (node == (xmlNodePtr) ctxt->context->doc) { in xmlXPtrCoveringRange()
2036 xmlXPtrRangeFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrRangeFunction() argument
2043 if ((ctxt->value == NULL) || in xmlXPtrRangeFunction()
2044 ((ctxt->value->type != XPATH_LOCATIONSET) && in xmlXPtrRangeFunction()
2045 (ctxt->value->type != XPATH_NODESET))) in xmlXPtrRangeFunction()
2048 set = valuePop(ctxt); in xmlXPtrRangeFunction()
2067 xmlXPtrCoveringRange(ctxt, oldset->locTab[i])); in xmlXPtrRangeFunction()
2073 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrRangeFunction()
2087 xmlXPtrInsideRange(xmlXPathParserContextPtr ctxt, xmlXPathObjectPtr loc) { in xmlXPtrInsideRange() argument
2090 if ((ctxt == NULL) || (ctxt->context == NULL) || in xmlXPtrInsideRange()
2091 (ctxt->context->doc == NULL)) in xmlXPtrInsideRange()
2182 xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrRangeInsideFunction() argument
2189 if ((ctxt->value == NULL) || in xmlXPtrRangeInsideFunction()
2190 ((ctxt->value->type != XPATH_LOCATIONSET) && in xmlXPtrRangeInsideFunction()
2191 (ctxt->value->type != XPATH_NODESET))) in xmlXPtrRangeInsideFunction()
2194 set = valuePop(ctxt); in xmlXPtrRangeInsideFunction()
2213 xmlXPtrInsideRange(ctxt, oldset->locTab[i])); in xmlXPtrRangeInsideFunction()
2219 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrRangeInsideFunction()
2231 xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrRangeToFunction() argument
2240 if (ctxt == NULL) return; in xmlXPtrRangeToFunction()
2247 obj = valuePop(ctxt); in xmlXPtrRangeToFunction()
2249 ctxt->context->node = NULL; in xmlXPtrRangeToFunction()
2251 cur = ctxt->cur; in xmlXPtrRangeToFunction()
2255 ctxt->cur = cur; in xmlXPtrRangeToFunction()
2261 ctxt->context->node = oldset->nodeTab[i]; in xmlXPtrRangeToFunction()
2262 tmp = xmlXPathNewNodeSet(ctxt->context->node); in xmlXPtrRangeToFunction()
2263 valuePush(ctxt, tmp); in xmlXPtrRangeToFunction()
2265 xmlXPathEvalExpr(ctxt); in xmlXPtrRangeToFunction()
2272 res = valuePop(ctxt); in xmlXPtrRangeToFunction()
2283 if (ctxt->value == tmp) { in xmlXPtrRangeToFunction()
2284 res = valuePop(ctxt); in xmlXPtrRangeToFunction()
2288 ctxt->context->node = NULL; in xmlXPtrRangeToFunction()
2295 ctxt->context->node = NULL; in xmlXPtrRangeToFunction()
2296 ctxt->context->contextSize = -1; in xmlXPtrRangeToFunction()
2297 ctxt->context->proximityPosition = -1; in xmlXPtrRangeToFunction()
2298 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrRangeToFunction()
2770 xmlXPtrStringRangeFunction(xmlXPathParserContextPtr ctxt, int nargs) { in xmlXPtrStringRangeFunction() argument
2789 number = valuePop(ctxt); in xmlXPtrStringRangeFunction()
2795 position = valuePop(ctxt); in xmlXPtrStringRangeFunction()
2800 string = valuePop(ctxt); in xmlXPtrStringRangeFunction()
2801 if ((ctxt->value == NULL) || in xmlXPtrStringRangeFunction()
2802 ((ctxt->value->type != XPATH_LOCATIONSET) && in xmlXPtrStringRangeFunction()
2803 (ctxt->value->type != XPATH_NODESET))) in xmlXPtrStringRangeFunction()
2806 set = valuePop(ctxt); in xmlXPtrStringRangeFunction()
2891 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrStringRangeFunction()
2909 xmlXPtrEvalRangePredicate(xmlXPathParserContextPtr ctxt) { in xmlXPtrEvalRangePredicate() argument
2917 if (ctxt == NULL) return; in xmlXPtrEvalRangePredicate()
2932 obj = valuePop(ctxt); in xmlXPtrEvalRangePredicate()
2934 ctxt->context->node = NULL; in xmlXPtrEvalRangePredicate()
2937 ctxt->context->contextSize = 0; in xmlXPtrEvalRangePredicate()
2938 ctxt->context->proximityPosition = 0; in xmlXPtrEvalRangePredicate()
2939 xmlXPathEvalExpr(ctxt); in xmlXPtrEvalRangePredicate()
2940 res = valuePop(ctxt); in xmlXPtrEvalRangePredicate()
2943 valuePush(ctxt, obj); in xmlXPtrEvalRangePredicate()
2950 cur = ctxt->cur; in xmlXPtrEvalRangePredicate()
2954 ctxt->cur = cur; in xmlXPtrEvalRangePredicate()
2960 ctxt->context->node = oldset->locTab[i]->user; in xmlXPtrEvalRangePredicate()
2961 tmp = xmlXPathNewNodeSet(ctxt->context->node); in xmlXPtrEvalRangePredicate()
2962 valuePush(ctxt, tmp); in xmlXPtrEvalRangePredicate()
2963 ctxt->context->contextSize = oldset->locNr; in xmlXPtrEvalRangePredicate()
2964 ctxt->context->proximityPosition = i + 1; in xmlXPtrEvalRangePredicate()
2966 xmlXPathEvalExpr(ctxt); in xmlXPtrEvalRangePredicate()
2973 res = valuePop(ctxt); in xmlXPtrEvalRangePredicate()
2974 if (xmlXPathEvaluatePredicateResult(ctxt, res)) { in xmlXPtrEvalRangePredicate()
2984 if (ctxt->value == tmp) { in xmlXPtrEvalRangePredicate()
2985 res = valuePop(ctxt); in xmlXPtrEvalRangePredicate()
2989 ctxt->context->node = NULL; in xmlXPtrEvalRangePredicate()
2996 ctxt->context->node = NULL; in xmlXPtrEvalRangePredicate()
2997 ctxt->context->contextSize = -1; in xmlXPtrEvalRangePredicate()
2998 ctxt->context->proximityPosition = -1; in xmlXPtrEvalRangePredicate()
2999 valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); in xmlXPtrEvalRangePredicate()