marianoguerra/wax/check/env does not have a README file
type Declarationpub struct ModuleContext {
diagnostics : Context
warn_unused : Bool
simplify : Bool
suggest : Bool
faithful : Bool
type_context : TypeContext
types : Tbl[(RefIndex, SubType)]
functions : Tbl[(Id, String, Bool)?]
globals : Tbl[(Bool, InferredValType?)]
import_globals : Tbl[(Bool, InferredValType?)]
tags : Tbl[FuncType]
memories : Tbl[(Int, AddressType)]
datas : Tbl[Unit]
tables : Tbl[(AddressType, RefType[Ident])]
elems : Tbl[RefType[Ident]]
assigned_globals : Map[String, Unit]
cast_traps_reported : Map[(Int, Int), Unit]
canonical_type_references : Array[(Origin, Id)]
origin : Ref[Origin]
structs_by_fields : Map[String, Ident?]
not_expression_reported : Map[(Int, Int), Unit]
locals : Map[String, (InferredValType?, Location)]
initialized_locals : Map[String, Unit]
deferred_uninit : Array[Array[Ident]]
unresolved_label : Ref[Bool]
read_locals : Array[Int]
local_decls : Array[Ident]
used_labels : Array[Int]
deferred_lints : Array[() -> Unit]
label_decls : Array[Ident]
assigned_locals : Map[String, Unit]
control_types : Array[ControlFrame]
return_types : Array[Cell[InferredType]]
cond : Ref[T]
cond_env : Env
resolve_links : Array[Reference]?
pun_spans : Array[Location]?
member_completions : Array[(Location, MemberReceiver)]?
}fn ModuleContext::enter_function(self : ModuleContext, return_types~ : Array[Cell[InferredType]], label_decls? : Array[Ident], assigned_locals? : Map[String, Unit]) -> Unitfn ModuleContext::new(diagnostics : Context, store : TypeStore, features : Set, warn_unused? : Bool, simplify? : Bool, suggest? : Bool, faithful? : Bool, resolve_links? : Array[Reference]?, pun_spans? : Array[Location]?, member_completions? : Array[(Location, MemberReceiver)]?) -> ModuleContextfn TypeContext::new(store : TypeStore, types : Tbl[(RefIndex, SubType)], features : Set) -> TypeContextfn blank_comments(s : String) -> Stringfn record_members(sink : Array[(Location, MemberReceiver)]?, field : Location, receiver : MemberReceiver) -> UnitThe Wax language in MoonBit: parser, formatter, type checker, and wasm/wat emitters