Shader: Add attribute and square bracket tokens (first step for attribute support)
This commit is contained in:
parent
3f74ee4d66
commit
8135f22b2f
|
|
@ -13,8 +13,10 @@
|
||||||
NAZARA_SHADERLANG_TOKEN(Assign)
|
NAZARA_SHADERLANG_TOKEN(Assign)
|
||||||
NAZARA_SHADERLANG_TOKEN(BoolFalse)
|
NAZARA_SHADERLANG_TOKEN(BoolFalse)
|
||||||
NAZARA_SHADERLANG_TOKEN(BoolTrue)
|
NAZARA_SHADERLANG_TOKEN(BoolTrue)
|
||||||
|
NAZARA_SHADERLANG_TOKEN(ClosingAttribute)
|
||||||
NAZARA_SHADERLANG_TOKEN(ClosingParenthesis)
|
NAZARA_SHADERLANG_TOKEN(ClosingParenthesis)
|
||||||
NAZARA_SHADERLANG_TOKEN(ClosingCurlyBracket)
|
NAZARA_SHADERLANG_TOKEN(ClosingCurlyBracket)
|
||||||
|
NAZARA_SHADERLANG_TOKEN(ClosingSquareBracket)
|
||||||
NAZARA_SHADERLANG_TOKEN(Colon)
|
NAZARA_SHADERLANG_TOKEN(Colon)
|
||||||
NAZARA_SHADERLANG_TOKEN(Comma)
|
NAZARA_SHADERLANG_TOKEN(Comma)
|
||||||
NAZARA_SHADERLANG_TOKEN(Divide)
|
NAZARA_SHADERLANG_TOKEN(Divide)
|
||||||
|
|
@ -29,7 +31,9 @@ NAZARA_SHADERLANG_TOKEN(Let)
|
||||||
NAZARA_SHADERLANG_TOKEN(Multiply)
|
NAZARA_SHADERLANG_TOKEN(Multiply)
|
||||||
NAZARA_SHADERLANG_TOKEN(Minus)
|
NAZARA_SHADERLANG_TOKEN(Minus)
|
||||||
NAZARA_SHADERLANG_TOKEN(Plus)
|
NAZARA_SHADERLANG_TOKEN(Plus)
|
||||||
|
NAZARA_SHADERLANG_TOKEN(OpenAttribute)
|
||||||
NAZARA_SHADERLANG_TOKEN(OpenCurlyBracket)
|
NAZARA_SHADERLANG_TOKEN(OpenCurlyBracket)
|
||||||
|
NAZARA_SHADERLANG_TOKEN(OpenSquareBracket)
|
||||||
NAZARA_SHADERLANG_TOKEN(OpenParenthesis)
|
NAZARA_SHADERLANG_TOKEN(OpenParenthesis)
|
||||||
NAZARA_SHADERLANG_TOKEN(Semicolon)
|
NAZARA_SHADERLANG_TOKEN(Semicolon)
|
||||||
NAZARA_SHADERLANG_TOKEN(Return)
|
NAZARA_SHADERLANG_TOKEN(Return)
|
||||||
|
|
|
||||||
|
|
@ -221,6 +221,28 @@ namespace Nz::ShaderLang
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case '[':
|
||||||
|
{
|
||||||
|
char next = Peek();
|
||||||
|
if (next == '[')
|
||||||
|
tokenType = TokenType::OpenAttribute;
|
||||||
|
else
|
||||||
|
tokenType = TokenType::OpenSquareBracket;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case ']':
|
||||||
|
{
|
||||||
|
char next = Peek();
|
||||||
|
if (next == ']')
|
||||||
|
tokenType = TokenType::ClosingAttribute;
|
||||||
|
else
|
||||||
|
tokenType = TokenType::ClosingSquareBracket;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case '=': tokenType = TokenType::Assign; break;
|
case '=': tokenType = TokenType::Assign; break;
|
||||||
case '+': tokenType = TokenType::Plus; break;
|
case '+': tokenType = TokenType::Plus; break;
|
||||||
case '*': tokenType = TokenType::Multiply; break;
|
case '*': tokenType = TokenType::Multiply; break;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue