Statement TextParser::parse()
{
- return parse_statement(0);
+ return parse_statement(nullptr);
}
Statement TextParser::parse_statement(const Token *t)
if(t)
{
token = *t;
- t = 0;
+ t = nullptr;
}
else
token = parse_token();
bin.reserve(data.size()*3/4);
unsigned accum = 0;
unsigned a_bits = 0;
- for(string::const_iterator i=data.begin(); i!=data.end(); ++i)
+ for(char c: data)
{
unsigned d;
- if(*i>='A' && *i<='Z')
- d = *i-'A';
- else if(*i>='a' && *i<='z')
- d = 26+(*i-'a');
- else if(*i>='0' && *i<='9')
- d = 52+(*i-'0');
- else if(*i=='+')
+ if(c>='A' && c<='Z')
+ d = c-'A';
+ else if(c>='a' && c<='z')
+ d = 26+(c-'a');
+ else if(c>='0' && c<='9')
+ d = 52+(c-'0');
+ else if(c=='+')
d = 62;
- else if(*i=='/')
+ else if(c=='/')
d = 63;
- else if(*i=='=')
+ else if(c=='=')
continue;
else
throw invalid_argument("TextParser::base64_decode");