* Author : Maxim Mamontov <faust@stargazer.dp.ua>
*/
-#ifndef __STG_STGLIBS_SRVCONF_PARSER_SERVER_INFO_H__
-#define __STG_STGLIBS_SRVCONF_PARSER_SERVER_INFO_H__
+#pragma once
#include "base.h"
#include "property.h"
namespace STG
{
-namespace SERVER_INFO
+namespace ServerInfo
{
-class PARSER: public STG::PARSER
+class Parser: public STG::Parser
{
-public:
- PARSER(CALLBACK f, void * data, const std::string & encoding);
- int ParseStart(const char * el, const char ** attr);
- void ParseEnd(const char * el);
- void Failure(const std::string & reason) { callback(false, reason, info, data); }
-
-private:
- PROPERTY_PARSERS propertyParsers;
- CALLBACK callback;
- void * data;
- std::string encoding;
- int depth;
- bool parsingAnswer;
- INFO info;
- std::string error;
+ public:
+ Parser(Callback f, void* data, const std::string& encoding);
+
+ int ParseStart(const char* el, const char** attr) override;
+ void ParseEnd(const char* el) override;
+ void Failure(const std::string& reason) override { callback(false, reason, info, data); }
+
+ private:
+ PropertyParsers propertyParsers;
+ Callback callback;
+ void* data;
+ std::string encoding;
+ int depth;
+ bool parsingAnswer;
+ Info info;
+ std::string error;
};
-} // namespace SERVER_INFO
+} // namespace ServerInfo
} // namespace STG
-
-#endif