6#include <llvm/IR/Instructions.h>
7#include <llvm/IR/LLVMContext.h>
8#include <llvm/IR/Type.h>
13namespace sammine_lang::AST {
16 llvm::LLVMContext &context;
19 llvm::Type *get_type(
Type t);
20 llvm::Type *get_return_type(
Type t);
21 llvm::CmpInst::Predicate get_cmp_func(
Type a,
Type b, TokenType tok);
23 TypeConverter(
LLVMRes &resPtr) : context(*resPtr.Context.get()) {}
Defined LLVMRes, which encapsulates the state of LLVM (Context, Modules, IRBuilder,...
Defines the token structure (TokenType, TokStream, TokenMap)
Defines the core Type system for Sammine.
Holds classes and functionalities for dealing with Error handling, source locations caching & indexin...