1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Need this for rusty_peg
#![recursion_limit="256"]

// I hate this lint.
#![allow(unused_parens)]

// The builtin tests don't cover the CLI and so forth, and it's just
// too darn annoying to try and make them do so.
#![cfg_attr(test, allow(dead_code))]

extern crate diff;
extern crate lalrpop_intern as intern;
extern crate lalrpop_util;
extern crate rand;
extern crate regex;
extern crate term;
extern crate itertools;
extern crate unicode_xid;

// rust exports a macro that others use, so hoist it early.
#[macro_use]
mod rust;

mod build;
mod grammar;
mod lexer;
mod lr1;
mod normalize;
mod parser;
mod kernel_set;
mod tok;
mod util;

#[cfg(test)] mod generate;
#[cfg(test)] mod test_util;

pub use build::process_root;
pub use build::process_root_unconditionally;