MCPcopy Create free account
hub / github.com/Kitware/VTK / xmlXPathNodeSetCreate

Function xmlXPathNodeSetCreate

ThirdParty/libxml2/vtklibxml2/xpath.c:2768–2799  ·  view source on GitHub ↗

* xmlXPathNodeSetCreate: * @val: an initial xmlNodePtr, or NULL * * Create a new xmlNodeSetPtr of type double and of value @val * * Returns the newly created object. */

Source from the content-addressed store, hash-verified

2766 * Returns the newly created object.
2767 */
2768xmlNodeSetPtr
2769xmlXPathNodeSetCreate(xmlNodePtr val) {
2770 xmlNodeSetPtr ret;
2771
2772 ret = (xmlNodeSetPtr) xmlMalloc(sizeof(xmlNodeSet));
2773 if (ret == NULL)
2774 return(NULL);
2775 memset(ret, 0 , sizeof(xmlNodeSet));
2776 if (val != NULL) {
2777 ret->nodeTab = (xmlNodePtr *) xmlMalloc(XML_NODESET_DEFAULT *
2778 sizeof(xmlNodePtr));
2779 if (ret->nodeTab == NULL) {
2780 xmlFree(ret);
2781 return(NULL);
2782 }
2783 memset(ret->nodeTab, 0 ,
2784 XML_NODESET_DEFAULT * sizeof(xmlNodePtr));
2785 ret->nodeMax = XML_NODESET_DEFAULT;
2786 if (val->type == XML_NAMESPACE_DECL) {
2787 xmlNsPtr ns = (xmlNsPtr) val;
2788 xmlNodePtr nsNode = xmlXPathNodeSetDupNs((xmlNodePtr) ns->next, ns);
2789
2790 if (nsNode == NULL) {
2791 xmlXPathFreeNodeSet(ret);
2792 return(NULL);
2793 }
2794 ret->nodeTab[ret->nodeNr++] = nsNode;
2795 } else
2796 ret->nodeTab[ret->nodeNr++] = val;
2797 }
2798 return(ret);
2799}
2800
2801/**
2802 * xmlXPathNodeSetContains:

Callers 14

xmlXPathCacheNewNodeSetFunction · 0.85
xmlXPathNodeSetMergeFunction · 0.85
xmlXPathNewNodeSetFunction · 0.85
xmlXPathDifferenceFunction · 0.85
xmlXPathIntersectionFunction · 0.85
xmlXPathDistinctSortedFunction · 0.85
xmlXPathLeadingFunction · 0.85
xmlXPathTrailingFunction · 0.85
xmlXPathObjectCopyFunction · 0.85
xmlXPathGetElementsByIdsFunction · 0.85

Calls 2

xmlXPathNodeSetDupNsFunction · 0.85
xmlXPathFreeNodeSetFunction · 0.85

Tested by

no test coverage detected