X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fparsermode.h;h=319b0f1ae0bf5162bd08e0101f894bf48ab53375;hb=a2cce9e933089f483163456e9872e005c33dd678;hp=491647e4b09a0b9c307d4f4aa32a6078403ed9a5;hpb=3b78eeb8b92dc3524d6a0456b4daf0a0f3dbf813;p=libs%2Fdatafile.git diff --git a/source/parsermode.h b/source/parsermode.h index 491647e..319b0f1 100644 --- a/source/parsermode.h +++ b/source/parsermode.h @@ -1,6 +1,7 @@ #ifndef MSP_DATAFILE_PARSERMODE_H_ #define MSP_DATAFILE_PARSERMODE_H_ +#include #include "statement.h" namespace Msp { @@ -13,7 +14,7 @@ class LoaderAction; /** Base class for parse modes. */ -class ParserMode +class ParserMode: private NonCopyable { protected: Input ∈ @@ -21,12 +22,12 @@ protected: ParserMode(Input &i, const std::string &s): in(i), src(s) { } public: - virtual ~ParserMode() { } + virtual ~ParserMode() = default; virtual Statement parse() = 0; virtual void process_control_statement(const Statement &) { } - virtual const StatementKey *peek(unsigned) { return 0; } + virtual const StatementKey *peek(unsigned) { return nullptr; } virtual bool parse_and_load(unsigned, Loader &, const LoaderAction &) { return false; } };