• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/libxml2-26/libxml2/

Lines Matching +defs:val +defs:pos

91 * If defined, this will optimize expressions like "key('foo', 'val')[b][1]"
215 * @val: a double value
224 xmlXPathIsNaN(double val) {
225 return(trio_isnan(val));
230 * @val: a double value
239 xmlXPathIsInf(double val) {
240 return(trio_isinf(val));
247 * @val: a double value
256 xmlXPathGetSign(double val) {
257 return(trio_signbit(val));
873 #define PUSH_FULL_EXPR(op, op1, op2, val, val2, val3, val4, val5) \
875 (op), (val), (val2), (val3), (val4), (val5))
876 #define PUSH_LONG_EXPR(op, val, val2, val3, val4, val5) \
878 (op), (val), (val2), (val3), (val4), (val5))
880 #define PUSH_LEAVE_EXPR(op, val, val2) \
881 xmlXPathCompExprAdd(ctxt->comp, -1, -1, (op), (val), (val2), 0 ,NULL ,NULL)
883 #define PUSH_UNARY_EXPR(op, ch, val, val2) \
884 xmlXPathCompExprAdd(ctxt->comp, (ch), -1, (op), (val), (val2), 0 ,NULL ,NULL)
886 #define PUSH_BINARY_EXPR(op, ch1, ch2, val, val2) \
888 (val), (val2), 0 ,NULL ,NULL)
1994 * @val: the NodePtr value
1997 * Wrap the Nodeset @val in a new xmlXPathObjectPtr
2002 xmlXPathCacheWrapNodeSet(xmlXPathContextPtr ctxt, xmlNodeSetPtr val)
2016 ret->nodesetval = val;
2024 return(xmlXPathWrapNodeSet(val));
2031 * @val: the xmlChar * value
2034 * Wraps the @val string into an XPath object.
2039 xmlXPathCacheWrapString(xmlXPathContextPtr ctxt, xmlChar *val)
2053 ret->stringval = val;
2069 ret->stringval = val;
2076 return(xmlXPathWrapString(val));
2082 * @val: the NodePtr value
2086 * it with the single Node @val
2091 xmlXPathCacheNewNodeSet(xmlXPathContextPtr ctxt, xmlNodePtr val)
2107 if (val) {
2109 (val->type == XML_NAMESPACE_DECL))
2111 xmlXPathNodeSetAddUnique(ret->nodesetval, val);
2113 ret->nodesetval->nodeTab[0] = val;
2134 ret->nodesetval = xmlXPathNodeSetCreate(val);
2146 return(xmlXPathNewNodeSet(val));
2152 * @val: the char * value
2155 * Acquire an xmlXPathObjectPtr of type string and of value @val
2160 xmlXPathCacheNewCString(xmlXPathContextPtr ctxt, const char *val)
2174 ret->stringval = xmlStrdup(BAD_CAST val);
2188 ret->stringval = xmlStrdup(BAD_CAST val);
2195 return(xmlXPathNewCString(val));
2201 * @val: the xmlChar * value
2204 * Acquire an xmlXPathObjectPtr of type string and of value @val
2209 xmlXPathCacheNewString(xmlXPathContextPtr ctxt, const xmlChar *val)
2222 if (val != NULL)
2223 ret->stringval = xmlStrdup(val);
2239 if (val != NULL)
2240 ret->stringval = xmlStrdup(val);
2249 return(xmlXPathNewString(val));
2255 * @val: the boolean value
2258 * Acquires an xmlXPathObjectPtr of type boolean and of value @val
2263 xmlXPathCacheNewBoolean(xmlXPathContextPtr ctxt, int val)
2276 ret->boolval = (val != 0);
2290 ret->boolval = (val != 0);
2297 return(xmlXPathNewBoolean(val));
2303 * @val: the double value
2306 * Acquires an xmlXPathObjectPtr of type double and of value @val
2311 xmlXPathCacheNewFloat(xmlXPathContextPtr ctxt, double val)
2324 ret->floatval = val;
2338 ret->floatval = val;
2345 return(xmlXPathNewFloat(val));
2351 * @val: an XPath object
2357 * (or the operation is done directly on @val)
2361 xmlXPathCacheConvertString(xmlXPathContextPtr ctxt, xmlXPathObjectPtr val) {
2364 if (val == NULL)
2367 switch (val->type) {
2375 res = xmlXPathCastNodeSetToString(val->nodesetval);
2378 return(val);
2380 res = xmlXPathCastBooleanToString(val->boolval);
2383 res = xmlXPathCastNumberToString(val->floatval);
2392 xmlXPathReleaseObject(ctxt, val);
2401 * @val: the original object
2409 xmlXPathCacheObjectCopy(xmlXPathContextPtr ctxt, xmlXPathObjectPtr val)
2411 if (val == NULL)
2415 switch (val->type) {
2418 xmlXPathNodeSetMerge(NULL, val->nodesetval)));
2420 return(xmlXPathCacheNewString(ctxt, val->stringval));
2422 return(xmlXPathCacheNewBoolean(ctxt, val->boolval));
2424 return(xmlXPathCacheNewFloat(ctxt, val->floatval));
2429 return(xmlXPathObjectCopy(val));
2435 * @val: an XPath object
2441 * is done directly on @val)
2444 xmlXPathCacheConvertBoolean(xmlXPathContextPtr ctxt, xmlXPathObjectPtr val) {
2447 if (val == NULL)
2449 if (val->type == XPATH_BOOLEAN)
2450 return(val);
2451 ret = xmlXPathCacheNewBoolean(ctxt, xmlXPathCastToBoolean(val));
2452 xmlXPathReleaseObject(ctxt, val);
2459 * @val: an XPath object
2465 * is done directly on @val)
2468 xmlXPathCacheConvertNumber(xmlXPathContextPtr ctxt, xmlXPathObjectPtr val) {
2471 if (val == NULL)
2473 if (val->type == XPATH_NUMBER)
2474 return(val);
2475 ret = xmlXPathCacheNewFloat(ctxt, xmlXPathCastToNumber(val));
2476 xmlXPathReleaseObject(ctxt, val);
2758 #define SKIP(val) ctxt->cur += (val)
2759 #define NXT(val) ctxt->cur[(val)]
3516 * @val: an initial xmlNodePtr, or NULL
3518 * Create a new xmlNodeSetPtr of type double and of value @val
3523 xmlXPathNodeSetCreate(xmlNodePtr val) {
3532 if (val != NULL) {
3543 if (val->type == XML_NAMESPACE_DECL) {
3544 xmlNsPtr ns = (xmlNsPtr) val;
3549 ret->nodeTab[ret->nodeNr++] = val;
3558 * Create a new xmlNodeSetPtr of type double and of value @val
3588 * @val: the node
3590 * checks whether @cur contains @val
3592 * Returns true (1) if @cur contains @val, false (0) otherwise
3595 xmlXPathNodeSetContains (xmlNodeSetPtr cur, xmlNodePtr val) {
3598 if ((cur == NULL) || (val == NULL)) return(0);
3599 if (val->type == XML_NAMESPACE_DECL) {
3604 ns1 = (xmlNsPtr) val;
3615 if (cur->nodeTab[i] == val)
3690 * @val: a new xmlNodePtr
3697 xmlXPathNodeSetAdd(xmlNodeSetPtr cur, xmlNodePtr val) {
3700 if ((cur == NULL) || (val == NULL)) return(-1);
3707 if (cur->nodeTab[i] == val) return(0);
3738 if (val->type == XML_NAMESPACE_DECL) {
3739 xmlNsPtr ns = (xmlNsPtr) val;
3744 cur->nodeTab[cur->nodeNr++] = val;
3751 * @val: a new xmlNodePtr
3759 xmlXPathNodeSetAddUnique(xmlNodeSetPtr cur, xmlNodePtr val) {
3760 if ((cur == NULL) || (val == NULL)) return(-1);
3792 if (val->type == XML_NAMESPACE_DECL) {
3793 xmlNsPtr ns = (xmlNsPtr) val;
3798 cur->nodeTab[cur->nodeNr++] = val;
4117 * @val: an xmlNodePtr
4122 xmlXPathNodeSetDel(xmlNodeSetPtr cur, xmlNodePtr val) {
4126 if (val == NULL) return;
4132 if (cur->nodeTab[i] == val) break;
4138 val->name);
4154 * @val: the index to remove
4159 xmlXPathNodeSetRemove(xmlNodeSetPtr cur, int val) {
4161 if (val >= cur->nodeNr) return;
4162 if ((cur->nodeTab[val] != NULL) &&
4163 (cur->nodeTab[val]->type == XML_NAMESPACE_DECL))
4164 xmlXPathNodeSetFreeNs((xmlNsPtr) cur->nodeTab[val]);
4166 for (;val < cur->nodeNr;val++)
4167 cur->nodeTab[val] = cur->nodeTab[val + 1];
4223 * @pos: the start position to clear from
4226 * are feed) starting with the entry at @pos, but does *not* free the list
4227 * itself. Sets the length of the list to @pos.
4230 xmlXPathNodeSetClearFromPos(xmlNodeSetPtr set, int pos, int hasNsNodes)
4232 if ((set == NULL) || (set->nodeNr <= 0) || (pos >= set->nodeNr))
4238 for (i = pos; i < set->nodeNr; i++) {
4245 set->nodeNr = pos;
4319 * @val: the NodePtr value
4322 * it with the single Node @val
4327 xmlXPathNewNodeSet(xmlNodePtr val) {
4338 ret->nodesetval = xmlXPathNodeSetCreate(val);
4348 * @val: the NodePtr value
4351 * it with the tree root @val
4356 xmlXPathNewValueTree(xmlNodePtr val) {
4367 ret->user = (void *) val;
4368 ret->nodesetval = xmlXPathNodeSetCreate(val);
4377 * @val: an existing NodeSet
4380 * it with the Nodeset @val
4385 xmlXPathNewNodeSetList(xmlNodeSetPtr val)
4390 if (val == NULL)
4392 else if (val->nodeTab == NULL)
4395 ret = xmlXPathNewNodeSet(val->nodeTab[0]);
4397 for (i = 1; i < val->nodeNr; ++i) {
4398 if (xmlXPathNodeSetAddUnique(ret->nodesetval, val->nodeTab[i])
4409 * @val: the NodePtr value
4411 * Wrap the Nodeset @val in a new xmlXPathObjectPtr
4416 xmlXPathWrapNodeSet(xmlNodeSetPtr val) {
4426 ret->nodesetval = val;
5209 * @val: the double value
5211 * Create a new xmlXPathObjectPtr of type double and of value @val
5216 xmlXPathNewFloat(double val) {
5226 ret->floatval = val;
5235 * @val: the boolean value
5237 * Create a new xmlXPathObjectPtr of type boolean and of value @val
5242 xmlXPathNewBoolean(int val) {
5252 ret->boolval = (val != 0);
5261 * @val: the xmlChar * value
5263 * Create a new xmlXPathObjectPtr of type string and of value @val
5268 xmlXPathNewString(const xmlChar *val) {
5278 if (val != NULL)
5279 ret->stringval = xmlStrdup(val);
5290 * @val: the xmlChar * value
5292 * Wraps the @val string into an XPath object.
5297 xmlXPathWrapString (xmlChar *val) {
5307 ret->stringval = val;
5316 * @val: the char * value
5318 * Create a new xmlXPathObjectPtr of type string and of value @val
5323 xmlXPathNewCString(const char *val) {
5333 ret->stringval = xmlStrdup(BAD_CAST val);
5342 * @val: the char * value
5349 xmlXPathWrapCString (char * val) {
5350 return(xmlXPathWrapString((xmlChar *)(val)));
5355 * @val: the user data
5357 * Wraps the @val data into an XPath object.
5362 xmlXPathWrapExternal (void *val) {
5372 ret->user = val;
5381 * @val: the original object
5388 xmlXPathObjectCopy(xmlXPathObjectPtr val) {
5391 if (val == NULL)
5399 memcpy(ret, val , (size_t) sizeof(xmlXPathObject));
5401 xmlXPathDebugObjUsageRequested(NULL, val->type);
5403 switch (val->type) {
5410 ret->stringval = xmlStrdup(val->stringval);
5419 if ((val->nodesetval != NULL) &&
5420 (val->nodesetval->nodeTab != NULL)) {
5427 xmlStrdup(val->nodesetval->nodeTab[0]->name);
5431 cur = val->nodesetval->nodeTab[0]->children;
5446 ret->nodesetval = xmlXPathNodeSetMerge(NULL, val->nodesetval);
5453 xmlLocationSetPtr loc = val->user;
5459 ret->user = val->user;
5464 val->type);
5661 * @val: a boolean
5668 xmlXPathCastBooleanToString (int val) {
5670 if (val)
5679 * @val: a number
5686 xmlXPathCastNumberToString (double val) {
5688 switch (xmlXPathIsInf(val)) {
5696 if (xmlXPathIsNaN(val)) {
5698 } else if (val == 0 && xmlXPathGetSign(val) != 0) {
5703 xmlXPathFormatNumber(val, buf, 99);
5747 * @val: an XPath object
5755 xmlXPathCastToString(xmlXPathObjectPtr val) {
5758 if (val == NULL)
5760 switch (val->type) {
5769 ret = xmlXPathCastNodeSetToString(val->nodesetval);
5772 return(xmlStrdup(val->stringval));
5774 ret = xmlXPathCastBooleanToString(val->boolval);
5777 ret = xmlXPathCastNumberToString(val->floatval);
5793 * @val: an XPath object
5798 * is done directly on @val)
5801 xmlXPathConvertString(xmlXPathObjectPtr val) {
5804 if (val == NULL)
5807 switch (val->type) {
5815 res = xmlXPathCastNodeSetToString(val->nodesetval);
5818 return(val);
5820 res = xmlXPathCastBooleanToString(val->boolval);
5823 res = xmlXPathCastNumberToString(val->floatval);
5832 xmlXPathFreeObject(val);
5840 * @val: a boolean
5847 xmlXPathCastBooleanToNumber(int val) {
5848 if (val)
5855 * @val: a string
5862 xmlXPathCastStringToNumber(const xmlChar * val) {
5863 return(xmlXPathStringEvalNumber(val));
5913 * @val: an XPath object
5920 xmlXPathCastToNumber(xmlXPathObjectPtr val) {
5923 if (val == NULL)
5925 switch (val->type) {
5934 ret = xmlXPathCastNodeSetToNumber(val->nodesetval);
5937 ret = xmlXPathCastStringToNumber(val->stringval);
5940 ret = val->floatval;
5943 ret = xmlXPathCastBooleanToNumber(val->boolval);
5958 * @val: an XPath object
5963 * is done directly on @val)
5966 xmlXPathConvertNumber(xmlXPathObjectPtr val) {
5969 if (val == NULL)
5971 if (val->type == XPATH_NUMBER)
5972 return(val);
5973 ret = xmlXPathNewFloat(xmlXPathCastToNumber(val));
5974 xmlXPathFreeObject(val);
5980 * @val: a number
5987 xmlXPathCastNumberToBoolean (double val) {
5988 if (xmlXPathIsNaN(val) || (val == 0.0))
5995 * @val: a string
6002 xmlXPathCastStringToBoolean (const xmlChar *val) {
6003 if ((val == NULL) || (xmlStrlen(val) == 0))
6025 * @val: an XPath object
6032 xmlXPathCastToBoolean (xmlXPathObjectPtr val) {
6035 if (val == NULL)
6037 switch (val->type) {
6046 ret = xmlXPathCastNodeSetToBoolean(val->nodesetval);
6049 ret = xmlXPathCastStringToBoolean(val->stringval);
6052 ret = xmlXPathCastNumberToBoolean(val->floatval);
6055 ret = val->boolval;
6071 * @val: an XPath object
6076 * is done directly on @val)
6079 xmlXPathConvertBoolean(xmlXPathObjectPtr val) {
6082 if (val == NULL)
6084 if (val->type == XPATH_BOOLEAN)
6085 return(val);
6086 ret = xmlXPathNewBoolean(xmlXPathCastToBoolean(val));
6087 xmlXPathFreeObject(val);
6455 * @ns < @val (1, 1, ...
6456 * @ns <= @val (1, 0, ...
6457 * @ns > @val (0, 1, ...
6458 * @ns >= @val (0, 0, ...
6511 * @ns < @val (1, 1, ...
6512 * @ns <= @val (1, 0, ...
6513 * @ns > @val (0, 1, ...
6514 * @ns >= @val (0, 0, ...
6664 * @val: the value
6667 * @ns < @val (1, 1, ...
6668 * @ns <= @val (1, 0, ...
6669 * @ns > @val (0, 1, ...
6670 * @ns >= @val (0, 0, ...
6681 xmlXPathObjectPtr arg, xmlXPathObjectPtr val) {
6682 if ((val == NULL) || (arg == NULL) ||
6686 switch(val->type) {
6688 return(xmlXPathCompareNodeSetFloat(ctxt, inf, strict, arg, val));
6691 return(xmlXPathCompareNodeSets(inf, strict, arg, val));
6693 return(xmlXPathCompareNodeSetString(ctxt, inf, strict, arg, val));
6697 valuePush(ctxt, val);
6784 xmlXPathObjectPtr val;
6799 val = valuePop(ctxt);
6800 v = val->floatval;
6801 xmlXPathReleaseObject(ctxt->context, val);
7471 double val;
7476 val = xmlXPathCastToNumber(arg);
7480 ctxt->value->floatval += val;
7494 double val;
7499 val = xmlXPathCastToNumber(arg);
7503 ctxt->value->floatval -= val;
7517 double val;
7522 val = xmlXPathCastToNumber(arg);
7526 ctxt->value->floatval *= val;
7540 double val;
7545 val = xmlXPathCastToNumber(arg);
7549 if (xmlXPathIsNaN(val) || xmlXPathIsNaN(ctxt->value->floatval))
7551 else if (val == 0 && xmlXPathGetSign(val) != 0) {
7559 else if (val == 0) {
7567 ctxt->value->floatval /= val;
9151 * If last pos not present, calculate last position
9541 xmlXPathObjectPtr val = NULL;
9550 val = valuePop(ctxt);
9551 lang = val->stringval;
9564 xmlXPathReleaseObject(ctxt->context, val);
9780 unsigned int val;
9812 val = (cur[0] & 0x7) << 18;
9813 val |= (cur[1] & 0x3f) << 12;
9814 val |= (cur[2] & 0x3f) << 6;
9815 val |= cur[3] & 0x3f;
9819 val = (cur[0] & 0xf) << 12;
9820 val |= (cur[1] & 0x3f) << 6;
9821 val |= cur[2] & 0x3f;
9826 val = (cur[0] & 0x1f) << 6;
9827 val |= cur[1] & 0x3f;
9829 if (!IS_CHAR(val)) {
9832 return(val);
11709 * node-set context pos
11714 * node-set context pos
11850 int i, pos = 0, newContextSize = 0, contextPos = 0, res;
11929 pos++;
11931 if (res && (pos >= minPos) && (pos <= maxPos)) {
11952 if (pos == maxPos) {
12077 if (++pos == maxPos) { \
12088 if (++pos == maxPos) { \
12127 int hasPredicateRange, hasAxisRange, pos, size, newSize;
12327 pos = 0;
13475 xmlXPathObjectPtr val;
13481 val = xmlXPathVariableLookup(ctxt->context, op->value4);
13482 if (val == NULL) {
13486 valuePush(ctxt, val);
13498 val = xmlXPathVariableLookupNS(ctxt->context,
13500 if (val == NULL) {
13504 valuePush(ctxt, val);
13624 xmlXPathObjectPtr val;
13626 val = comp->steps[op->ch2].value4;
13627 if ((val != NULL) && (val->type == XPATH_NUMBER) &&
13628 (val->floatval == 1.0)) {
13857 * node-set context pos
13862 * node-set context pos