fn compile_eval(
        &mut self,
        expression: &ast::Expr,
        symbol_table: SymbolTable,
    ) -> CompileResult<()> {
        self.symbol_table_stack.push(symbol_table);
        self.compile_expression(expression)?;
        self.emit(Instruction::ReturnValue);
        Ok(())
    }
// Compile statement in eval mode:
Compile statement in eval mode.
Compile statement in eval mode .
fn compile_eval(
        &mut self,
        expression: &ast::Expr,
        symbol_table: SymbolTable,
    ) -> CompileResult<()> {
        self.symbol_table_stack.push(symbol_table);
        self.compile_expression(expression)?;
        self.emit(Instruction::ReturnValue);
        Ok(())
    }
fn compile_eval ( & mut self , expression : & ast :: Expr , symbol_table : SymbolTable , ) -> CompileResult < ( ) > { self . symbol_table_stack . push ( symbol_table ) ; self . compile_expression ( expression ) ? ; self . emit ( Instruction :: ReturnValue ) ; Ok ( ( ) ) }
Compile statement in eval mode:
Compile statement in eval mode :
&mut self
expression
&ast::Expr
symbol_table
SymbolTable