brain/codegen/
mod.rs

1//! **THE MOST IMPORTANT RULE:** ALL OPERATIONS MUST RETURN TO THE CELL WHERE THEY STARTED.
2//! That means that if you move right by 10, you must move left by 10 at the end of your operation
3//! The extra movement instructions will be optimized away as needed
4//! This constraint exists because it makes writing code generation for brainfuck sane
5//! You don't have to know where the pointer currently is because you can always trust this reference
6//! This constraint does not need to hold *during* an operation. Only
7//! enforce it before and after. We just need a consistent reference between operations.
8//! That is all.
9
10mod errors;
11mod statements;
12mod declarations;
13mod input;
14mod output;
15mod while_loop;
16
17pub use self::errors::*;
18pub use self::statements::*;