Skip to content

Commit

Permalink
libcommon|HexLex: Cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
danij-deng committed Jan 25, 2014
1 parent 2c8a931 commit d738c53
Showing 1 changed file with 21 additions and 23 deletions.
44 changes: 21 additions & 23 deletions doomsday/plugins/common/src/hexlex.cpp
Expand Up @@ -71,10 +71,10 @@ HexLex::~HexLex()

void HexLex::parse(Str const *script)
{
_script = script;
_readPos = 0;
_lineNumber = 1;
_alreadyGot = false;
_script = script;
_readPos = 0;
_lineNumber = 1;
_alreadyGot = false;
Str_Clear(&_token);
}

Expand Down Expand Up @@ -181,19 +181,22 @@ bool HexLex::readToken()
return true;
}

Str const *HexLex::readString()
void HexLex::unreadToken()
{
if(!readToken())
if(_readPos == 0)
{
syntaxError("Missing string");
return;
}
_alreadyGot = true;
}

Str const *HexLex::token()
{
return &_token;
}

int HexLex::readNumber()
{
checkOpen();

if(!readToken())
{
syntaxError("Missing integer");
Expand All @@ -210,30 +213,25 @@ int HexLex::readNumber()
return number;
}

Uri *HexLex::readUri(char const *defaultScheme)
Str const *HexLex::readString()
{
if(!readToken())
{
syntaxError("Missing uri");
syntaxError("Missing string");
}

Uri *uri = Uri_SetScheme(Uri_New(), defaultScheme);
Uri_SetPath(uri, Str_Text(Str_PercentEncode(AutoStr_FromTextStd(Str_Text(&_token)))));
return uri;
return &_token;
}

void HexLex::unreadToken()
Uri *HexLex::readUri(char const *defaultScheme)
{
if(_readPos == 0)
if(!readToken())
{
return;
syntaxError("Missing uri");
}
_alreadyGot = true;
}

Str const *HexLex::token()
{
return &_token;
Uri *uri = Uri_SetScheme(Uri_New(), defaultScheme);
Uri_SetPath(uri, Str_Text(Str_PercentEncode(AutoStr_FromTextStd(Str_Text(&_token)))));
return uri;
}

int HexLex::lineNumber() const
Expand Down

0 comments on commit d738c53

Please sign in to comment.