#pragma once #include namespace LXC::Lexer { struct LexerContext { // Constructor to set the information of the context // LexerContext(const std::string& _source); // Trackers for the Lexer itself // const std::string& source; size_t index; LexerOutput out; const size_t len; // Trackers for where the Lexer is within the user version of source // unsigned short column; unsigned short line; }; struct LexerError {}; // Turns a file into a vector of tokens // Util::ReturnVal TokenizeFile(const std::string& fileContents); }