MCPcopy Create free account
hub / github.com/KhronosGroup/OpenCOLLADA / xmlGetCharEncodingHandler

Function xmlGetCharEncodingHandler

Externals/LibXML/encoding.c:1440–1560  ·  view source on GitHub ↗

* xmlGetCharEncodingHandler: * @enc: an xmlCharEncoding value. * * Search in the registered set the handler able to read/write that encoding. * * Returns the handler or NULL if not found */

Source from the content-addressed store, hash-verified

1438 * Returns the handler or NULL if not found
1439 */
1440xmlCharEncodingHandlerPtr
1441xmlGetCharEncodingHandler(xmlCharEncoding enc) {
1442 xmlCharEncodingHandlerPtr handler;
1443
1444 if (handlers == NULL) xmlInitCharEncodingHandlers();
1445 switch (enc) {
1446 case XML_CHAR_ENCODING_ERROR:
1447 return(NULL);
1448 case XML_CHAR_ENCODING_NONE:
1449 return(NULL);
1450 case XML_CHAR_ENCODING_UTF8:
1451 return(NULL);
1452 case XML_CHAR_ENCODING_UTF16LE:
1453 return(xmlUTF16LEHandler);
1454 case XML_CHAR_ENCODING_UTF16BE:
1455 return(xmlUTF16BEHandler);
1456 case XML_CHAR_ENCODING_EBCDIC:
1457 handler = xmlFindCharEncodingHandler("EBCDIC");
1458 if (handler != NULL) return(handler);
1459 handler = xmlFindCharEncodingHandler("ebcdic");
1460 if (handler != NULL) return(handler);
1461 break;
1462 case XML_CHAR_ENCODING_UCS4BE:
1463 handler = xmlFindCharEncodingHandler("ISO-10646-UCS-4");
1464 if (handler != NULL) return(handler);
1465 handler = xmlFindCharEncodingHandler("UCS-4");
1466 if (handler != NULL) return(handler);
1467 handler = xmlFindCharEncodingHandler("UCS4");
1468 if (handler != NULL) return(handler);
1469 break;
1470 case XML_CHAR_ENCODING_UCS4LE:
1471 handler = xmlFindCharEncodingHandler("ISO-10646-UCS-4");
1472 if (handler != NULL) return(handler);
1473 handler = xmlFindCharEncodingHandler("UCS-4");
1474 if (handler != NULL) return(handler);
1475 handler = xmlFindCharEncodingHandler("UCS4");
1476 if (handler != NULL) return(handler);
1477 break;
1478 case XML_CHAR_ENCODING_UCS4_2143:
1479 break;
1480 case XML_CHAR_ENCODING_UCS4_3412:
1481 break;
1482 case XML_CHAR_ENCODING_UCS2:
1483 handler = xmlFindCharEncodingHandler("ISO-10646-UCS-2");
1484 if (handler != NULL) return(handler);
1485 handler = xmlFindCharEncodingHandler("UCS-2");
1486 if (handler != NULL) return(handler);
1487 handler = xmlFindCharEncodingHandler("UCS2");
1488 if (handler != NULL) return(handler);
1489 break;
1490
1491 /*
1492 * We used to keep ISO Latin encodings native in the
1493 * generated data. This led to so many problems that
1494 * this has been removed. One can still change this
1495 * back by registering no-ops encoders for those
1496 */
1497 case XML_CHAR_ENCODING_8859_1:

Callers 3

xmlSwitchEncodingFunction · 0.85

Calls 2

Tested by

no test coverage detected