A scanner to break up a code input into LLVM Tokens though Lexical Analysis
When you make the lexer, you want to define all:
- Enum for Reserved Keywords (like
def
, if
, func
, etc…)
- Enum for Identifiers (for variables, functions, classnames, etc)
- Enum for Literals (for numbers, for chars, etc..)
- Enum for Whitespace (like
, \n
, etc..)
- A variable to store identifier token’s name
- A variable to store a literal’s value
- A function to grab the next token
If any token is not defined, the lexer shall return as its ascii code instead.