serene-rust-implementation/src/compiler.rs

19 lines
504 B
Rust

use inkwell::builder::Builder;
use inkwell::context::Context;
use inkwell::module::Module;
use inkwell::values::{BasicValue, BasicValueEnum, FloatValue, FunctionValue, PointerValue};
use crate::types::Expression;
use std::collections::HashMap;
pub struct Compiler<'a, 'ctx> {
context: &'ctx Context,
builder: &'a Builder<'ctx>,
module: &'a Module<'ctx>,
scope: HashMap<String, PointerValue<'ctx>>,
}
impl<'a, 'ctx> Compiler<'a, 'ctx> {
pub fn compile(exprs: &impl Expression) {}
}