#pragma once #include #include #include #include #include #include #include namespace NXml { namespace NDetail { struct TSignedCharPtrTraits { static void Destroy(char* handle) { xmlFree(handle); } }; struct TCharPtrTraits { static void Destroy(xmlChar* handle) { xmlFree(handle); } }; struct TOutputBufferPtrTraits { static void Destroy(xmlOutputBufferPtr handle) { xmlOutputBufferClose(handle); } }; struct TSaveCtxtPtrTraits { static void Destroy(xmlSaveCtxtPtr handle) { xmlSaveClose(handle); } }; } typedef TxmlXPathContextPtr TXPathContextPtr; typedef TxmlXPathObjectPtr TXPathObjectPtr; typedef TAutoPtr TSignedCharPtr; typedef TAutoPtr TCharPtr; typedef TxmlDocHolder TDocHolder; typedef TxmlURIPtr TURIPtr; typedef TxmlNodePtr TNodePtr; typedef TAutoPtr TOutputBufferPtr; typedef TxmlParserCtxtPtr TParserCtxtPtr; typedef TAutoPtr TSaveCtxtPtr; }