X-Git-Url: http://git.tdb.fi/?p=libs%2Fdatafile.git;a=blobdiff_plain;f=source%2Fbinarywriter.cpp;h=0fbf8ce503058f5aaa89734250856777e083409e;hp=d1433304c251744a7a51c702a2b80b73b3d24139;hb=9d97c6c5d3f125dd0ed23ccfa4bf0bb728a753fa;hpb=8e3fad222e174b7c659fd3d994d54314657ed989 diff --git a/source/binarywriter.cpp b/source/binarywriter.cpp index d143330..0fbf8ce 100644 --- a/source/binarywriter.cpp +++ b/source/binarywriter.cpp @@ -16,9 +16,9 @@ BinaryWriter::BinaryWriter(Output &o): next_str_id(1), float_precision(32) { - dict[DictEntry("__kwd", "iss")] = -1; - dict[DictEntry("__str", "is")] = -2; - dict[DictEntry("__flt", "i")] = -3; + dict[StatementKey("__kwd", "iss")] = -1; + dict[StatementKey("__str", "is")] = -2; + dict[StatementKey("__flt", "i")] = -3; } void BinaryWriter::set_float_precision(unsigned fp) @@ -40,7 +40,7 @@ void BinaryWriter::write(const Statement &st) void BinaryWriter::write_(const Statement &st) { - int id = get_item(dict, DictEntry(st.keyword, st.get_signature())); + int id = get_item(dict, StatementKey(st.keyword, st.get_signature())); write_int(id); for(Statement::Arguments::const_iterator j = st.args.begin(); j!=st.args.end(); ++j) @@ -60,21 +60,21 @@ void BinaryWriter::write_(const Statement &st) void BinaryWriter::collect_keywords(const Statement &st) { - DictEntry de(st.keyword, st.get_signature()); + StatementKey key(st.keyword, st.get_signature()); - if(!dict.count(de)) + if(!dict.count(key)) { Statement kst; kst.keyword = "__kwd"; kst.args.push_back(next_kwd_id); - kst.args.push_back(de.keyword); - kst.args.push_back(de.args); + kst.args.push_back(key.keyword); + kst.args.push_back(key.signature); write_(kst); - dict[de] = next_kwd_id++; + dict[key] = next_kwd_id++; } - for(ValueArray::const_iterator i = st.args.begin(); i!=st.args.end(); ++i) + for(vector::const_iterator i = st.args.begin(); i!=st.args.end(); ++i) { char sig = i->get_signature(); string str;