/* * Copyright (c) 2011 Jan Kaluza * Licensed under the Simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include #include #include #include namespace Swift { class DefaultStringTreeParser : public StringTreeParser { public: void handleTree(ParserElement::ref root) { root_ = root; } ParserElement::ref getRoot() { return root_; } private: ParserElement::ref root_; }; ParserElement::ref StringTreeParser::parse(const std::string &xml) { PlatformXMLParserFactory factory; DefaultStringTreeParser client; XMLParser *parser = factory.createXMLParser(&client); parser->parse(xml); ParserElement::ref root = client.getRoot(); delete parser; return root; } }