/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/xml/document/libxml-guards.h
50 строк
1 KB
qkrorlqr
Initial NBS OpenSource export
28 апр 2023, 21:54
28 апр 2023, 21:54
783a858
Код
Авторство
О чём код?
#pragma once #include <library/cpp/xml/init/ptr.h> #include <util/generic/ptr.h> #include <libxml/xmlstring.h> #include <libxml/tree.h> #include <libxml/xpath.h> #include <libxml/uri.h> #include <libxml/xmlsave.h> 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<char, NDetail::TSignedCharPtrTraits> TSignedCharPtr; typedef TAutoPtr<xmlChar, NDetail::TCharPtrTraits> TCharPtr; typedef TxmlDocHolder TDocHolder; typedef TxmlURIPtr TURIPtr; typedef TxmlNodePtr TNodePtr; typedef TAutoPtr<xmlOutputBuffer, NDetail::TOutputBufferPtrTraits> TOutputBufferPtr; typedef TxmlParserCtxtPtr TParserCtxtPtr; typedef TAutoPtr<xmlSaveCtxt, NDetail::TSaveCtxtPtrTraits> TSaveCtxtPtr; }