/* * Copyright (c) 2010-2019 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include #include #include namespace Swift { /** * Warning: This constructor is not thread-safe, because it depends on global state to * check whether it is initialized. */ class LibXMLParser : public XMLParser, public boost::noncopyable { public: LibXMLParser(XMLParserClient* client); virtual ~LibXMLParser(); bool parse(const std::string& data, bool finalData = false); private: static bool initialized; struct Private; const std::unique_ptr p; }; }