schala/schala-lang/language/src/lib.rs

38 lines
753 B
Rust
Raw Normal View History

2018-07-16 03:40:35 -07:00
#![feature(trace_macros)]
//#![feature(unrestricted_attribute_tokens)]
2021-10-07 00:51:45 -07:00
#![feature(box_patterns, box_syntax)]
2018-11-11 18:04:44 -08:00
//! `schala-lang` is where the Schala programming language is actually implemented.
//! It defines the `Schala` type, which contains the state for a Schala REPL, and implements
//! `ProgrammingLanguageInterface` and the chain of compiler passes for it.
2018-03-23 18:43:43 -07:00
extern crate schala_repl;
2018-05-02 02:14:36 -07:00
#[macro_use]
2018-10-19 09:57:35 -07:00
extern crate schala_lang_codegen;
2019-09-18 01:58:38 -07:00
extern crate derivative;
2018-03-23 18:43:43 -07:00
macro_rules! bx {
($e:expr) => { Box::new($e) }
}
2019-02-17 03:36:12 -08:00
#[macro_use]
mod util;
#[macro_use]
mod typechecking;
mod tokenizing;
2018-06-04 19:25:40 -07:00
mod ast;
mod parsing;
2019-08-30 19:03:52 -07:00
#[macro_use]
mod symbol_table;
2019-09-03 01:42:28 -07:00
mod scope_resolution;
2019-02-17 03:36:12 -08:00
mod builtin;
2018-06-04 19:12:48 -07:00
mod reduced_ast;
mod eval;
2021-10-14 04:11:53 -07:00
mod error;
mod schala;
2018-10-20 14:27:00 -07:00
pub use schala::Schala;