Skip to main content

lex_types/
lib.rs

1//! M3: type system, effect system. See spec §6, §7.
2
3#![allow(clippy::result_large_err)]
4
5pub mod types;
6pub mod unifier;
7pub mod env;
8pub mod error;
9pub mod position;
10pub mod rules;
11pub mod builtins;
12pub mod checker;
13pub mod discharge;
14pub mod trust;
15
16pub use checker::{
17    check_and_rewrite_program, check_program, check_program_with_positions, ProgramTypes,
18};
19pub use error::{PositionedError, TypeError};
20pub use position::{byte_to_line_col, Position};
21pub use rules::{all_rules, suggested_transform_for, RuleInfo};
22pub use trust::{Dimension, Grant, GrantId, Level, TrustError};
23pub use types::{EffectSet, Prim, Scheme, Ty, TyVarId};