X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbinaryparser.h;h=4f33d954602d3c5454f1cd8d8729a2d674cc6a3e;hb=6f94aaece716a31e75166e261cc47579288892b4;hp=560703c66ddb337791a98b7e72d8dc1c81262169;hpb=27630d44298cb67e075c166f4421288cc8ca117e;p=libs%2Fdatafile.git diff --git a/source/binaryparser.h b/source/binaryparser.h index 560703c..4f33d95 100644 --- a/source/binaryparser.h +++ b/source/binaryparser.h @@ -1,40 +1,38 @@ -/* $Id$ - -This file is part of libmspdatafile -Copyright © 2007 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef MSP_DATAFILE_BINARYPARSER_H_ #define MSP_DATAFILE_BINARYPARSER_H_ #include #include "binarydict.h" #include "parsermode.h" +#include "type.h" namespace Msp { namespace DataFile { +/** +Parses data in binary format. +*/ class BinaryParser: public ParserMode { private: typedef std::map Dictionary; - typedef std::map EnumMap; + typedef std::map StringMap; Dictionary dict; - EnumMap enums; + StringMap strings; bool first; public: BinaryParser(Input &i, const std::string &s); - Statement parse(); + + virtual Statement parse(); private: Statement parse_statement(); long long parse_int(); float parse_float(); std::string parse_string(); bool parse_bool(); - std::string parse_enum(); + Symbol parse_symbol(); }; } // namespace DataFile