Skip to main content

aver/
lib.rs

1// `Value` carries `OnceLock<…>` (typed-AST stamps + per-arm pattern
2// binding slots) deep in its substructure, which is interior mutability
3// — but those cells are write-once and never reach the hash code path,
4// so HashMap<Value, …> is safe in practice. Silence the clippy lint at
5// the crate level rather than papering over every `HashMap::new()` site.
6#![allow(clippy::mutable_key_type)]
7
8extern crate self as aver;
9
10pub mod ast;
11pub mod ast_rewrite;
12#[cfg(feature = "runtime")]
13pub mod bench;
14pub mod call_graph;
15pub mod checker;
16pub mod codegen;
17#[cfg(feature = "runtime")]
18pub mod config;
19pub mod diagnostics;
20pub mod effects;
21#[cfg(all(feature = "runtime", feature = "tty-render"))]
22#[allow(dead_code)]
23#[path = "main/format_cmd.rs"]
24pub mod format;
25pub mod ir;
26pub mod lexer;
27pub mod nan_value;
28pub mod parser;
29#[cfg(any(feature = "wasm-compile", feature = "playground"))]
30pub mod playground;
31#[cfg(feature = "runtime")]
32pub mod replay;
33pub mod resolver;
34#[cfg(feature = "runtime")]
35pub mod runtime_bench_cases;
36#[cfg(feature = "runtime")]
37pub mod services;
38pub mod source;
39pub mod tail_check;
40pub mod tco;
41#[cfg(feature = "tty-render")]
42pub mod tty_render;
43pub mod types;
44pub mod value;
45pub mod verify_law;
46pub mod visibility;
47#[cfg(feature = "runtime")]
48pub mod vm;