Struct arret_compiler::EvalHirCtx [−][src]
pub struct EvalHirCtx { /* fields omitted */ }
Implementations
impl EvalHirCtx
[src]
impl EvalHirCtx
[src]pub fn new(optimising: bool) -> EvalHirCtx
[src]
pub fn rust_fun_to_jit_boxed(&mut self, rust_fun: Arc<Fun>) -> Gc<FunThunk>
[src]
pub fn register_rust_fun_with_jit(&mut self, rust_fun: &Fun)
[src]
Ensures the passed RustFun
is known by the JIT
This can be called multiple times with the same Rust fun. Calling it with a fun that’s never used by the JIT is harmless
pub fn rust_fun_to_thunk_reg(
&mut self,
b: &mut Builder,
span: Span,
rust_fun: &Fun
) -> BuiltReg
[src]
&mut self,
b: &mut Builder,
span: Span,
rust_fun: &Fun
) -> BuiltReg
pub fn rust_fun_to_callback_reg(
&mut self,
b: &mut Builder,
span: Span,
rust_fun: &Fun,
entry_point_abi: &CallbackEntryPointAbiType
) -> BuiltReg
[src]
&mut self,
b: &mut Builder,
span: Span,
rust_fun: &Fun,
entry_point_abi: &CallbackEntryPointAbiType
) -> BuiltReg
pub fn arret_fun_to_jit_boxed(
&mut self,
arret_fun: &ArretFun
) -> Option<Gc<FunThunk>>
[src]
&mut self,
arret_fun: &ArretFun
) -> Option<Gc<FunThunk>>
pub fn evaled_record_class_for_cons(
&mut self,
record_cons: &ArcId<Cons>
) -> &EvaledRecordClass
[src]
&mut self,
record_cons: &ArcId<Cons>
) -> &EvaledRecordClass
pub fn cons_for_jit_record_class_id(
&self,
record_class_id: RecordClassId
) -> Option<&ArcId<Cons>>
[src]
&self,
record_class_id: RecordClassId
) -> Option<&ArcId<Cons>>
pub fn arret_fun_to_thunk_reg(
&mut self,
b: &mut Builder,
span: Span,
arret_fun: &ArretFun
) -> BuiltReg
[src]
&mut self,
b: &mut Builder,
span: Span,
arret_fun: &ArretFun
) -> BuiltReg
pub fn arret_fun_to_callback_reg(
&mut self,
b: &mut Builder,
span: Span,
arret_fun: &ArretFun,
entry_point_abi: &CallbackEntryPointAbiType
) -> BuiltReg
[src]
&mut self,
b: &mut Builder,
span: Span,
arret_fun: &ArretFun,
entry_point_abi: &CallbackEntryPointAbiType
) -> BuiltReg
pub fn thunk_reg_to_callback_reg(
&mut self,
b: &mut Builder,
span: Span,
thunk_reg_abi_type: &BoxedAbiType,
thunk_reg: BuiltReg,
entry_point_abi: &CallbackEntryPointAbiType
) -> BuiltReg
[src]
&mut self,
b: &mut Builder,
span: Span,
thunk_reg_abi_type: &BoxedAbiType,
thunk_reg: BuiltReg,
entry_point_abi: &CallbackEntryPointAbiType
) -> BuiltReg
pub fn jit_boxed_to_fun_value(
&self,
boxed_thunk: Gc<FunThunk>
) -> Option<&Value>
[src]
&self,
boxed_thunk: Gc<FunThunk>
) -> Option<&Value>
pub fn visit_module_defs<'a>(
&mut self,
module_id: ModuleId,
defs: impl IntoIterator<Item = &'a Def<Inferred>>
) -> Result<(), Error>
[src]
&mut self,
module_id: ModuleId,
defs: impl IntoIterator<Item = &'a Def<Inferred>>
) -> Result<(), Error>
pub fn consume_module_defs(
&mut self,
module_id: ModuleId,
defs: impl IntoIterator<Item = Def<Inferred>>
) -> Result<(), Error>
[src]
&mut self,
module_id: ModuleId,
defs: impl IntoIterator<Item = Def<Inferred>>
) -> Result<(), Error>
pub fn should_collect(&self) -> bool
[src]
pub fn collect_garbage(&mut self)
[src]
Collect any boxed values that are no longer reachable
pub fn eval_expr(
&mut self,
fcx: &mut FunCtx<'_>,
b: &mut Option<Builder>,
expr: &Expr<Inferred>
) -> Result<Value, Error>
[src]
&mut self,
fcx: &mut FunCtx<'_>,
b: &mut Option<Builder>,
expr: &Expr<Inferred>
) -> Result<Value, Error>
pub fn consume_expr(
&mut self,
fcx: &mut FunCtx<'_>,
b: &mut Option<Builder>,
expr: Expr<Inferred>
) -> Result<Value, Error>
[src]
&mut self,
fcx: &mut FunCtx<'_>,
b: &mut Option<Builder>,
expr: Expr<Inferred>
) -> Result<Value, Error>
pub fn eval_main_fun(&mut self, main_export_id: ExportId) -> Result<(), Error>
[src]
Evaluates the main function of a program
pub fn into_built_program(
self,
main_export_id: ExportId
) -> Result<BuiltProgram, Error>
[src]
self,
main_export_id: ExportId
) -> Result<BuiltProgram, Error>
Builds the main function of the program
pub fn value_to_const(&mut self, value: &Value) -> Option<Gc<Any>>
[src]
Trait Implementations
impl AsHeap for EvalHirCtx
[src]
impl AsHeap for EvalHirCtx
[src]impl AsInterner for EvalHirCtx
[src]
impl AsInterner for EvalHirCtx
[src]