Add the as symbol

This commit is contained in:
Pranav Gaddamadugu 2023-06-22 23:57:09 -04:00
parent 84043469bc
commit 6ef4779925
4 changed files with 8 additions and 1 deletions

View File

@ -376,6 +376,7 @@ impl Token {
match &*identifier {
x if x.starts_with("aleo1") => Token::AddressLit(identifier),
"address" => Token::Address,
"as" => Token::As,
"assert" => Token::Assert,
"assert_eq" => Token::AssertEq,
"assert_neq" => Token::AssertNeq,

View File

@ -83,6 +83,7 @@ mod tests {
test_ident
12345
address
as
assert
assert_eq
assert_neq
@ -168,7 +169,7 @@ mod tests {
assert_eq!(
output,
r#""test" "test{}test" "test{}" "{}test" "test{" "test}" "test{test" "test}test" "te{{}}" test_ident 12345 address assert assert_eq assert_neq async bool const else false field finalize for function group i128 i64 i32 i16 i8 if in inline input let mut private program public return scalar self string struct test then transition true u128 u64 u32 u16 u8 console ! != && ( ) * ** + , - -> => _ . .. / : ; < <= = == > >= [ ] { { } } || ? @ // test
r#""test" "test{}test" "test{}" "{}test" "test{" "test}" "test{test" "test}test" "te{{}}" test_ident 12345 address as assert assert_eq assert_neq async bool const else false field finalize for function group i128 i64 i32 i16 i8 if in inline input let mut private program public return scalar self string struct test then transition true u128 u64 u32 u16 u8 console ! != && ( ) * ** + , - -> => _ . .. / : ; < <= = == > >= [ ] { { } } || ? @ // test
/* test */ // "#
);
});

View File

@ -108,6 +108,7 @@ pub enum Token {
Record,
// Regular Keywords
As,
Assert,
AssertEq,
AssertNeq,
@ -146,6 +147,7 @@ pub enum Token {
/// because true and false are also boolean literals, which are different tokens from keywords.
pub const KEYWORD_TOKENS: &[Token] = &[
Token::Address,
Token::As,
Token::Assert,
Token::AssertEq,
Token::AssertNeq,
@ -199,6 +201,7 @@ impl Token {
pub fn keyword_to_symbol(&self) -> Option<Symbol> {
Some(match self {
Token::Address => sym::address,
Token::As => sym::As,
Token::Assert => sym::assert,
Token::AssertEq => sym::assert_eq,
Token::AssertNeq => sym::assert_neq,
@ -331,6 +334,7 @@ impl fmt::Display for Token {
U128 => write!(f, "u128"),
Record => write!(f, "record"),
As => write!(f, "as"),
Assert => write!(f, "assert"),
AssertEq => write!(f, "assert_eq"),
AssertNeq => write!(f, "assert_neq"),

View File

@ -201,6 +201,7 @@ symbols! {
True: "true",
// general keywords
As: "as",
assert,
assert_eq,
assert_neq,