char literals

This commit is contained in:
2025-06-16 17:29:52 +02:00
parent 2b6f39135a
commit e15715f86d
5 changed files with 31 additions and 15 deletions

View File

@@ -30,6 +30,7 @@ pub enum TokenType {
Identifier,
String,
Char,
Number,
True,
False,
@@ -208,6 +209,14 @@ impl Tokenizer {
self.add_token(TokenType::Less)
}
}
// TODO: escape sequences
'\'' => {
self.advance();
if !self.match_char('\'') {
return error!(self.loc, "expected ' after char literal");
}
self.add_token(TokenType::Char);
}
'"' => {
while !self.eof() && self.peek() != '"' {
if self.peek() == '\n' {