basic/lang/
mod.rs

1/*!
2## Rust Language Module
3
4This Rust module provides lexical analysis and parsing of the BASIC language.
5
6*/
7
8pub type Column = std::ops::Range<usize>;
9pub type LineNumber = Option<u16>;
10pub trait MaxValue<T> {
11    fn max_value() -> T;
12}
13impl MaxValue<u16> for LineNumber {
14    fn max_value() -> u16 {
15        65529
16    }
17}
18
19mod error;
20mod lex;
21mod line;
22mod parse;
23
24pub use error::Error;
25pub use error::ErrorCode;
26pub use lex::lex;
27pub use line::Line;
28pub use parse::parse;
29
30pub mod ast;
31pub mod token;