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

Function xmlTextReaderName

ThirdParty/libxml2/vtklibxml2/xmlreader.c:3178–3240  ·  view source on GitHub ↗

* xmlTextReaderName: * @reader: the xmlTextReaderPtr used * * The qualified name of the node, equal to Prefix :LocalName. * * Returns the local name or NULL if not available, * if non NULL it need to be freed by the caller. */

Source from the content-addressed store, hash-verified

3176 * if non NULL it need to be freed by the caller.
3177 */
3178xmlChar *
3179xmlTextReaderName(xmlTextReaderPtr reader) {
3180 xmlNodePtr node;
3181 xmlChar *ret;
3182
3183 if ((reader == NULL) || (reader->node == NULL))
3184 return(NULL);
3185 if (reader->curnode != NULL)
3186 node = reader->curnode;
3187 else
3188 node = reader->node;
3189 switch (node->type) {
3190 case XML_ELEMENT_NODE:
3191 case XML_ATTRIBUTE_NODE:
3192 if ((node->ns == NULL) ||
3193 (node->ns->prefix == NULL))
3194 return(readerStrdup(reader, node->name));
3195
3196 ret = xmlBuildQName(node->name, node->ns->prefix, NULL, 0);
3197 if (ret == NULL)
3198 xmlTextReaderErrMemory(reader);
3199 return(ret);
3200 case XML_TEXT_NODE:
3201 return(readerStrdup(reader, BAD_CAST "#text"));
3202 case XML_CDATA_SECTION_NODE:
3203 return(readerStrdup(reader, BAD_CAST "#cdata-section"));
3204 case XML_ENTITY_NODE:
3205 case XML_ENTITY_REF_NODE:
3206 return(readerStrdup(reader, node->name));
3207 case XML_PI_NODE:
3208 return(readerStrdup(reader, node->name));
3209 case XML_COMMENT_NODE:
3210 return(readerStrdup(reader, BAD_CAST "#comment"));
3211 case XML_DOCUMENT_NODE:
3212 case XML_HTML_DOCUMENT_NODE:
3213 return(readerStrdup(reader, BAD_CAST "#document"));
3214 case XML_DOCUMENT_FRAG_NODE:
3215 return(readerStrdup(reader, BAD_CAST "#document-fragment"));
3216 case XML_NOTATION_NODE:
3217 return(readerStrdup(reader, node->name));
3218 case XML_DOCUMENT_TYPE_NODE:
3219 case XML_DTD_NODE:
3220 return(readerStrdup(reader, node->name));
3221 case XML_NAMESPACE_DECL: {
3222 xmlNsPtr ns = (xmlNsPtr) node;
3223
3224 if (ns->prefix == NULL)
3225 return(readerStrdup(reader, BAD_CAST "xmlns"));
3226 ret = xmlBuildQName(ns->prefix, BAD_CAST "xmlns", NULL, 0);
3227 if (ret == NULL)
3228 xmlTextReaderErrMemory(reader);
3229 return(ret);
3230 }
3231
3232 case XML_ELEMENT_DECL:
3233 case XML_ATTRIBUTE_DECL:
3234 case XML_ENTITY_DECL:
3235 case XML_XINCLUDE_START:

Callers 1

xmlTextReaderLocalNameFunction · 0.85

Calls 3

readerStrdupFunction · 0.85
xmlBuildQNameFunction · 0.85
xmlTextReaderErrMemoryFunction · 0.85

Tested by

no test coverage detected