/// Creates and returns a new `Compiler`
Creates and returns a new `Compiler`
Creates and returns a new ` Compiler `
pub fn new() -> Compiler {
        let mut free_registers = vec![];
        for i in 0..31 {
            free_registers.push(i);
        }
        free_registers.reverse();
        Compiler{
            free_registers: free_registers,
            used_registers: vec![],
            assembly: vec![],
            assembler: Assembler::new(),
            scopes: vec![Scope::new()],
            scope_pointer: 1,
            identifier_buffer: vec![],
            in_return: false
        }
    }
pub fn new ( ) -> Compiler { let mut free_registers = vec ! [ ] ; for i in 0 .. 31 { free_registers . push ( i ) ; } free_registers . reverse ( ) ; Compiler { free_registers : free_registers , used_registers : vec ! [ ] , assembly : vec ! [ ] , assembler : Assembler :: new ( ) , scopes : vec ! [ Scope new ( ) ] , scope_pointer : 1 , identifier_buffer : vec ! [ ] , in_return : false } }
Creates and returns a new `Compiler`
Creates and returns a new ` Compiler `