X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fstatement.cpp;h=baa9054e0cfb2f50cbb95ee17074d55dac3b9d0e;hb=256b44a5009467171af53316141277027bcc0ba4;hp=9dfb54421a47c6f041b344cc175a6c67e232f43c;hpb=cd3de49e76305a50ae61696210ce10804a59cef1;p=libs%2Fdatafile.git diff --git a/source/statement.cpp b/source/statement.cpp index 9dfb544..baa9054 100644 --- a/source/statement.cpp +++ b/source/statement.cpp @@ -32,15 +32,15 @@ string Statement::get_location() const string Statement::get_signature() const { string result; - for(Arguments::const_iterator i = args.begin(); i!=args.end(); ++i) - result += i->get_signature(); + for(const Value &a: args) + result += a.get_signature(); return result; } Statement &Statement::append_from_token(const Token &token) { if(token.type==Token::INTEGER) - return append(lexical_cast(token.str)); + return append(lexical_cast(token.str, Fmt().autobase())); else if(token.type==Token::FLOAT) return append(lexical_cast(token.str)); else if(token.type==Token::STRING) @@ -67,10 +67,10 @@ StatementInfo::StatementInfo(const string &k, const string &s): key(k, s), args_size(0) { - for(string::const_iterator i=key.signature.begin(); i!=key.signature.end(); ++i) + for(char c: key.signature) { arg_offsets.push_back(args_size); - switch(*i) + switch(c) { case IntType::signature: args_size += sizeof(IntType::Store);