X-Git-Url: http://git.tdb.fi/?p=libs%2Fdatafile.git;a=blobdiff_plain;f=source%2Ftextwriter.cpp;h=04fccff5afaf43ae30f708be0870b1427dd67309;hp=921842279f133eabf555d57d97e609d563dacb72;hb=256b44a5009467171af53316141277027bcc0ba4;hpb=7e81da8d9a6e689e271f4f0450a69d8a14f515bb diff --git a/source/textwriter.cpp b/source/textwriter.cpp index 9218422..04fccff 100644 --- a/source/textwriter.cpp +++ b/source/textwriter.cpp @@ -30,20 +30,20 @@ void TextWriter::write_(const Statement &st, unsigned level) string indent(level, '\t'); out.write(format("%s%s", indent, st.keyword)); - for(vector::const_iterator i = st.args.begin(); i!=st.args.end(); ++i) + for(const Value &v: st.args) { out.put(' '); - if(i->get_signature()==StringType::signature) - out.write(format("\"%s\"", c_escape(i->get(), false))); - else if(i->get_signature()==BoolType::signature) - out.write(i->get() ? "true" : "false"); - else if(i->get_signature()==IntType::signature) - out.write(lexical_cast(i->get())); - else if(i->get_signature()==FloatType::signature) - out.write(lexical_cast(i->get(), float_format)); - else if(i->get_signature()==SymbolType::signature) + if(v.get_signature()==StringType::signature) + out.write(format("\"%s\"", c_escape(v.get(), false))); + else if(v.get_signature()==BoolType::signature) + out.write(v.get() ? "true" : "false"); + else if(v.get_signature()==IntType::signature) + out.write(lexical_cast(v.get())); + else if(v.get_signature()==FloatType::signature) + out.write(lexical_cast(v.get(), float_format)); + else if(v.get_signature()==SymbolType::signature) { - string name = i->get().name; + string name = v.get().name; if(isdigit(name[0])) out.write("\\"+name); else @@ -53,8 +53,8 @@ void TextWriter::write_(const Statement &st, unsigned level) if(!st.sub.empty()) { out.write(format("\n%s{\n", indent)); - for(list::const_iterator i = st.sub.begin(); i!=st.sub.end(); ++i) - write_(*i, level+1); + for(const Statement &s: st.sub) + write_(s, level+1); out.write(format("%s}", indent)); } out.write(";\n");