namespace Msp {
namespace DataFile {
+/**
+Writes data in binary format.
+*/
class BinaryWriter: public WriterMode
{
private:
typedef std::map<DictEntry, unsigned> Dictionary;
- typedef std::map<std::string, unsigned> EnumMap;
+ typedef std::map<std::string, unsigned> StringMap;
Dictionary dict;
- unsigned next_st_id;
- EnumMap enums;
- unsigned next_enum_id;
+ unsigned next_kwd_id;
+ StringMap strings;
+ unsigned next_str_id;
public:
- BinaryWriter(std::ostream &o);
+ BinaryWriter(IO::Base &o);
void write(const Statement &st);
private:
void write_(const Statement &st);