Latest stuff, rewriting lexer
This commit is contained in:
@@ -1,12 +1,22 @@
|
||||
/// AUTOGENERATED COPYRIGHT HEADER START
|
||||
// Copyright (C) 2017-2024 Michael Fabian 'Xaymar' Dirks <info@xaymar.com>
|
||||
// AUTOGENERATED COPYRIGHT HEADER END
|
||||
#pragma once
|
||||
#include <string>
|
||||
#include <filesystem>
|
||||
|
||||
// Compiling requires several steps
|
||||
// 1. Lexing to known tokens
|
||||
// - This part may require a unicode library/framework, like Qt or ICU
|
||||
// 2. Parsing the lexical tokens into an Abstract Syntax Tree (AST)
|
||||
// - This is where we convert everything to logical steps, like math and function calls.
|
||||
// 3. Compiling from the AST to some kind of runnable binary.
|
||||
// - In our case, we convert the AST to LLVM IR, and then compile it with LLVM.
|
||||
|
||||
namespace blitz {
|
||||
class compiler {
|
||||
public:
|
||||
compiler();
|
||||
~compiler();
|
||||
|
||||
bool compile(std::string in, std::string out);
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user