Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/syntax/src/ast/expr_ext.rs')
| -rw-r--r-- | crates/syntax/src/ast/expr_ext.rs | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/crates/syntax/src/ast/expr_ext.rs b/crates/syntax/src/ast/expr_ext.rs index 1d0f393ec1..17785152bc 100644 --- a/crates/syntax/src/ast/expr_ext.rs +++ b/crates/syntax/src/ast/expr_ext.rs @@ -283,8 +283,8 @@ pub enum LiteralKind { ByteString(ast::ByteString), IntNumber(ast::IntNumber), FloatNumber(ast::FloatNumber), - Char, - Byte, + Char(ast::Char), + Byte(ast::Byte), Bool(bool), } @@ -312,12 +312,16 @@ impl ast::Literal { if let Some(t) = ast::ByteString::cast(token.clone()) { return LiteralKind::ByteString(t); } + if let Some(t) = ast::Char::cast(token.clone()) { + return LiteralKind::Char(t); + } + if let Some(t) = ast::Byte::cast(token.clone()) { + return LiteralKind::Byte(t); + } match token.kind() { T![true] => LiteralKind::Bool(true), T![false] => LiteralKind::Bool(false), - CHAR => LiteralKind::Char, - BYTE => LiteralKind::Byte, _ => unreachable!(), } } |