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 stdlib_spec;
13pub mod checker;
14pub mod discharge;
15pub mod trust;
16
17pub use checker::{
18    check_and_rewrite_program, check_program, check_program_with_positions, rewrite_parse_calls,
19    ParseSite, ProgramTypes,
20};
21pub use error::{PositionedError, TypeError};
22pub use position::{byte_to_line_col, Position};
23pub use rules::{all_rules, suggested_transform_for, RuleInfo};
24pub use trust::{Dimension, Grant, GrantId, Level, TrustError};
25pub use types::{EffectSet, Prim, Scheme, Ty, TyVarId};