oboard/moonbit-eval/interpreter does not have a README file
pub(all) struct ClosureInterpreter {
extern_fns : Map[String, (RuntimeFunctionContext) -> RuntimeValue]
embedded_fns : Map[String, (RuntimeFunctionContext) -> RuntimeValue]
embedded_methods : Map[String, Map[String, (RuntimeFunctionContext) -> RuntimeValue]]
fn_aliases : Map[String, String]
env : RuntimeEnvironment
type_definitions : Map[String, TypeDecl]
struct_methods : Map[String, Map[String, Func]]
type_environments : Array[TypeEnvironment]
}fn ClosureInterpreter::add_embedded_fn(self : ClosureInterpreter, name : String, f : (RuntimeFunctionContext) -> RuntimeValue) -> Unitfn ClosureInterpreter::add_embedded_method(self : ClosureInterpreter, type_name : String, method_name : String, f : (RuntimeFunctionContext) -> RuntimeValue) -> Unitfn ClosureInterpreter::add_extern_fn(self : ClosureInterpreter, name : String, f : (RuntimeFunctionContext) -> RuntimeValue) -> Unitfn ClosureInterpreter::bind_function_parameters(self : ClosureInterpreter, params : List[Parameter], args : List[Argument]) -> Unitfn ClosureInterpreter::bind_function_parameters_runtime(self : ClosureInterpreter, params : List[Parameter], args : List[Argument]) -> Unitfn ClosureInterpreter::call(self : ClosureInterpreter, function : Func, args : List[Argument]) -> RuntimeValuefn ClosureInterpreter::call_closure(self : ClosureInterpreter, function : Func, env : RuntimeEnvironment, args : List[Argument]) -> RuntimeValuefn ClosureInterpreter::constants_equal(_self : ClosureInterpreter, c1 : Constant, c2 : Constant) -> Boolfn ClosureInterpreter::constants_equal_expr(self : ClosureInterpreter, expr1 : Expr, expr2 : Expr) -> Boolfn ClosureInterpreter::define_struct_method(self : ClosureInterpreter, type_name : String, method_name : String, func : Func) -> Unitfn ClosureInterpreter::execute_function_call(self : ClosureInterpreter, function : Func, args : List[Argument]) -> Exprfn ClosureInterpreter::execute_match(self : ClosureInterpreter, value : Expr, cases : List[Case]) -> Exprfn ClosureInterpreter::execute_match_runtime(self : ClosureInterpreter, value : RuntimeValue, cases : List[Case]) -> RuntimeValuefn ClosureInterpreter::get_function_type_string(self : ClosureInterpreter, value : RuntimeValue) -> Stringfn ClosureInterpreter::pattern_matches(self : ClosureInterpreter, value : Expr, pattern : Pattern) -> Boolfn ClosureInterpreter::set_mutable_variable(self : ClosureInterpreter, name : String, value : RuntimeValue) -> Unitfn ClosureInterpreter::set_variable(self : ClosureInterpreter, name : String, value : RuntimeValue) -> Unitfn ClosureInterpreter::update_variable(self : ClosureInterpreter, name : String, new_value : RuntimeValue) -> Unitfn ClosureInterpreter::value_in_range(self : ClosureInterpreter, value : Expr, lhs : Pattern, rhs : Pattern, inclusive : Bool) -> Boolpub(all) struct RuntimeFunctionContext {
context : ClosureInterpreter
arguments : Array[RuntimeArgument]
}