submilli_engine/typechecker/
mod.rs1pub mod capture;
2pub mod desugar;
3pub mod infer;
4pub mod json_schema;
5pub mod json_strategy;
6pub mod rules;
7pub mod type_param_substitution;
8
9pub use capture::capture;
10pub(crate) use capture::{ResolvedLocals, resolve_locals};
11pub use desugar::desugar;
12pub use infer::{infer, infer_package};
13pub use rules::{capability_binding_type, check};
14
15pub(crate) fn arena_failure(
16 error: crate::arena::ArenaError,
17) -> crate::compiler_error::CompilerFailure {
18 error.into_compiler_failure(crate::compiler_error::CompilerStage::Infer)
19}
20
21pub(crate) fn invariant_failure(
22 message: impl Into<String>,
23) -> crate::compiler_error::CompilerFailure {
24 crate::compiler_error::CompilerFailure::Internal {
25 stage: crate::compiler_error::CompilerStage::Infer,
26 span: None,
27 message: message.into(),
28 }
29}