/* */ #ifndef D_METALINK_PARSER_STATE_H #define D_METALINK_PARSER_STATE_H #include "common.h" #include #include namespace aria2 { class MetalinkParserStateMachine; struct XmlAttr { std::string localname; std::string prefix; std::string nsUri; std::string value; XmlAttr(); XmlAttr(const XmlAttr& attr); ~XmlAttr(); XmlAttr& operator=(const XmlAttr&); }; class MetalinkParserState { public: virtual ~MetalinkParserState() {} virtual void beginElement (MetalinkParserStateMachine* stm, const std::string& localname, const std::string& prefix, const std::string& nsUri, const std::vector& attrs) {} virtual void endElement (MetalinkParserStateMachine* stm, const std::string& localname, const std::string& prefix, const std::string& nsUri, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; } // namespace aria2 #endif // D_METALINK_PARSER_STATE_H