* xmlTextReaderPrefix: * @reader: the xmlTextReaderPtr used * * A shorthand reference to the namespace associated with the node. * * Returns the prefix or NULL if not available, * if non NULL it need to be freed by the caller. */
| 3314 | * if non NULL it need to be freed by the caller. |
| 3315 | */ |
| 3316 | xmlChar * |
| 3317 | xmlTextReaderPrefix(xmlTextReaderPtr reader) { |
| 3318 | xmlNodePtr node; |
| 3319 | if ((reader == NULL) || (reader->node == NULL)) |
| 3320 | return(NULL); |
| 3321 | if (reader->curnode != NULL) |
| 3322 | node = reader->curnode; |
| 3323 | else |
| 3324 | node = reader->node; |
| 3325 | if (node->type == XML_NAMESPACE_DECL) { |
| 3326 | xmlNsPtr ns = (xmlNsPtr) node; |
| 3327 | if (ns->prefix == NULL) |
| 3328 | return(NULL); |
| 3329 | return(readerStrdup(reader, BAD_CAST "xmlns")); |
| 3330 | } |
| 3331 | if ((node->type != XML_ELEMENT_NODE) && |
| 3332 | (node->type != XML_ATTRIBUTE_NODE)) |
| 3333 | return(NULL); |
| 3334 | if ((node->ns != NULL) && (node->ns->prefix != NULL)) |
| 3335 | return(readerStrdup(reader, node->ns->prefix)); |
| 3336 | return(NULL); |
| 3337 | } |
| 3338 | |
| 3339 | /** |
| 3340 | * xmlTextReaderConstPrefix: |
nothing calls this directly
no test coverage detected