mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-01 03:21:41 +00:00
Allow integer variable names
This commit is contained in:
parent
f70a154195
commit
dfb6bdf77e
@ -90,6 +90,16 @@ bool Compiler::DeclarationParser::parseSpecial (int code, const TokenLoc& loc, S
|
||||
return Parser::parseSpecial (code, loc, scanner);
|
||||
}
|
||||
|
||||
bool Compiler::DeclarationParser::parseInt(int value, const TokenLoc& loc, Scanner& scanner)
|
||||
{
|
||||
if(mState == State_Name)
|
||||
{
|
||||
// Allow integers to be used as variable names
|
||||
return parseName(loc.mLiteral, loc, scanner);
|
||||
}
|
||||
return Parser::parseInt(value, loc, scanner);
|
||||
}
|
||||
|
||||
void Compiler::DeclarationParser::reset()
|
||||
{
|
||||
mState = State_Begin;
|
||||
|
@ -35,6 +35,10 @@ namespace Compiler
|
||||
///< Handle a special character token.
|
||||
/// \return fetch another token?
|
||||
|
||||
bool parseInt (int value, const TokenLoc& loc, Scanner& scanner) override;
|
||||
///< Handle an int token.
|
||||
/// \return fetch another token?
|
||||
|
||||
void reset() override;
|
||||
|
||||
};
|
||||
|
@ -67,6 +67,11 @@ namespace Compiler
|
||||
parseExpression (scanner, loc);
|
||||
return true;
|
||||
}
|
||||
else if (mState == SetState)
|
||||
{
|
||||
// Allow ints to be used as variable names
|
||||
return parseName(loc.mLiteral, loc, scanner);
|
||||
}
|
||||
|
||||
return Parser::parseInt (value, loc, scanner);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user