Module passerine::compiler [−][src]
This module contains the compiler implementation.
Note that these modules are public for documentation visiblility,
But should never be used outside of the module by common
or vm
.
Each step in the compiler pipeline turns one datatype into another.
loosely, starting with Source
(string + path):
- Tokens:
lex.rs
- Absrtact ST:
parse.rs
- Concrete ST:
desugar.rs
- Bytecode:
gen.rs
Note that more steps (e.g. ones applying macro transformations, optimization passes, etc.) may be implemented in the future.
Re-exports
pub use lex::lex; |
pub use parse::parse; |
pub use desugar::desugar; |
pub use gen::gen; |
Modules
ast | |
cst | |
desugar | |
gen | |
lex | |
parse | |
rule | |
syntax | |
token |