feat(furc): implement lexer

This commit is contained in:
2026-08-05 12:34:58 +02:00
parent 4604f5186e
commit 3faafe371f
5 changed files with 297 additions and 8 deletions
+14 -3
View File
@@ -1,7 +1,18 @@
#include "furc/front/lexer.hpp"
#include <iostream>
int main(void) {
std::cout << "Farewell, stasiu!\n";
return 0;
furc::lexer lexer = { "<AK>", "func main(argc: u64) -> s32 { return '\\\\'; }" };
while (true) {
furc::token token = lexer.next_token();
std::cout << token.loc.filepath << ':' << token.loc.row + 1 << ':' << token.loc.col + 1 << ": " << token
<< '\n';
switch (token.type) {
case furc::token::UnexpectedCharacter:
case furc::token::UnexpectedEOF: return 1;
case furc::token::EndOfFile: return 0;
default: break;
}
}
}