marianoguerra/wax/check does not have a README file
type MissingBatchfn Operands::pop(self : Operands, info : SubtypingInfo, diagnostics : Context, kind : StackKind, location : Location, current : Int, expected : Int, ty : Cell[InferredType]) -> Unitfn Operands::pop_any(self : Operands, batch : Ref[MissingBatch?], current : Int, expected : Int) -> Cell[InferredType]fn Operands::pop_args(self : Operands, info : SubtypingInfo, diagnostics : Context, kind : StackKind, location : Location, args : Array[Cell[InferredType]]) -> Unitpub(all) enum ResolvedVar {
Local(InferredValType?, Location)
Global(Bool, InferredValType?)
FuncRef(Id, String, Bool)
Poisoned
Unbound
}fn assign_target(ctx : ModuleContext, idx : Ident, resolved : ResolvedVar, compound? : Bool) -> Unitfn block_signature(ctx : TypeContext, diagnostics : Context, typ : FuncType) -> (Array[Cell[InferredType]], Array[Cell[InferredType]])?fn check_float_bin_op(diagnostics : Context, location : Location, typ1 : Cell[InferredType], typ2 : Cell[InferredType]) -> Cell[InferredType]fn check_int_bin_op(diagnostics : Context, location : Location, typ1 : Cell[InferredType], typ2 : Cell[InferredType]) -> Cell[InferredType]fn check_module(diagnostics : Context, store : TypeStore, features : Set, fields : Array[Annotated[ModuleField[Location], Location]], simplify? : Bool, warn_unused? : Bool) -> (ModuleContext, Array[Annotated[ModuleField[(Array[Cell[InferredType]], Location)], Location]])fn check_num_concrete(diagnostics : Context, location : Location, ty1 : Cell[InferredType], ty2 : Cell[InferredType]) -> Unitfn check_operands(info : SubtypingInfo, diagnostics : Context, location : Location, args : Array[(Array[Cell[InferredType]], Location)], expected : Array[Cell[InferredType]]) -> Unitfn check_subtypes(info : SubtypingInfo, diagnostics : Context, location : Location, provided : Array[Cell[InferredType]], expected : Array[Cell[InferredType]], pin? : Bool) -> Unitfn checked_block(ctx : ModuleContext, ops : Operands, location : Location, label : Ident?, params : Array[Cell[InferredType]], results : Array[Cell[InferredType]], branch_target : Array[Cell[InferredType]], check_body : () -> Unit) -> Unitfn collect_into(ctx : ModuleContext, ops : Operands, location : Location, label : Ident?, cs : Collecting, r : Cell[InferredType], check_body : () -> Unit, branch_target? : Array[Cell[InferredType]]?) -> Unitfn[Info] declare_fields(ctx : ModuleContext, fields : Array[Annotated[ModuleField[Info], Location]]) -> Unitfn deliver_to_branch_target(info : SubtypingInfo, diagnostics : Context, location : Location, types : Array[Cell[InferredType]], params : Array[Cell[InferredType]]) -> Array[Cell[InferredType]]fn expression_type(ctx : ModuleContext, annotation : (Array[Cell[InferredType]], Location)) -> Cell[InferredType]fn field_read_type(ctx : TypeContext, diagnostics : Context, f : MutType[StorageType[Ident]]) -> Cell[InferredType]?fn field_subtype(info : SubtypingInfo, ty : MutType[StorageType[Id]], ty_ : MutType[StorageType[Id]]) -> Boolfn finalize_inferred(ctx : ModuleContext, typ : FuncType, inferred : Cell[InferredType]?, needed? : Bool, exacts? : Array[(Location?, Cell[InferredType])], natural? : Array[InferredType], location? : Location?) -> (Array[Cell[InferredType]], FuncType)fn fresh_collecting(declared : Cell[InferredType]?, needed? : Bool) -> (Collecting, Cell[InferredType])fn hex_u64(v : UInt64) -> Stringfn infer_result(ctx : ModuleContext, location : Location, cs : Collecting, lub : (InferredValType, InferredValType) -> InferredValType?) -> Cell[InferredType]?fn internalize(ctx : TypeContext, diagnostics : Context, typ : ValType[Ident], inline? : CompType?) -> Cell[InferredType]?fn internalize_valtype(ctx : TypeContext, diagnostics : Context, typ : ValType[Ident]) -> InferredValType?fn join_collected(diagnostics : Context, location : Location, collected : Array[(Location?, Cell[InferredType])], lub : (InferredValType, InferredValType) -> InferredValType?) -> Cell[InferredType]?fn join_value_types(ty1 : Cell[InferredType], ty2 : Cell[InferredType], lub : (InferredValType, InferredValType) -> InferredValType?) -> Cell[InferredType]?fn lint_ref_cast(ctx : ModuleContext, location : Location, is_test~ : Bool, operand : InferredType, target : InferredType, operand_location? : Location?) -> Unitfn lookup_array_type(ctx : TypeContext, diagnostics : Context, name : Ident, location? : Location?) -> MutType[StorageType[Ident]]?fn lookup_func_type(ctx : TypeContext, diagnostics : Context, name : Ident, location? : Location?) -> FuncType?fn mem_lane_bound(natural_align : Int) -> Intfn mem_natural_align(meth : String) -> Intfn missing_else_ok(info : SubtypingInfo, params : Array[Cell[InferredType]], results : Array[Cell[InferredType]]) -> Boolfn report_exact_mismatches(diagnostics : Context, location : Location, result : Cell[InferredType], exacts : Array[(Location?, Cell[InferredType])]) -> Unitfn report_missing_hole(ops : Operands, diagnostics : Context, location : Location, ty : Cell[InferredType]) -> Unitfn subtype(info : SubtypingInfo, ty : Cell[InferredType], ty_ : Cell[InferredType], location? : Location?, pin? : Bool) -> Boolfn tee_target(ctx : ModuleContext, idx : Ident, resolved : ResolvedVar, operand : Cell[InferredType]) -> Cell[InferredType]fn[Info] walk_fields(ctx : ModuleContext, fields : Array[Annotated[ModuleField[Info], Location]], f : (Annotated[ModuleField[Info], Location]) -> Unit) -> UnitThe Wax language in MoonBit: parser, formatter, type checker, and wasm/wat emitters