minor implement lexer
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
|
||||
typedef enum {
|
||||
LBRACK,
|
||||
@@ -21,15 +22,23 @@ typedef enum {
|
||||
NUM,
|
||||
STRING_LITERAL,
|
||||
|
||||
VAL,
|
||||
RETURN,
|
||||
IF,
|
||||
ELSE,
|
||||
|
||||
|
||||
EOF_TOKEN,
|
||||
ERROR
|
||||
} TokenType;
|
||||
|
||||
typedef struct {
|
||||
size_t len;
|
||||
char* string;
|
||||
} TokenString;
|
||||
|
||||
typedef struct {
|
||||
TokenType type;
|
||||
char *data;
|
||||
uint32_t line;
|
||||
TokenString data;
|
||||
} Token;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user