class Interpreter::Interpreter

Defined in:

interpreter/interpreter.cr

Constructors

Instance Method Summary

Macro Summary

Constructor Detail

def self.new(ast : Array(Ast::Statement)) #

[View source]

Instance Method Detail

def evaluate(ast : Ast::Variable) #

[View source]
def evaluate(ast : Ast::Literal) #

[View source]
def evaluate(ast : Ast::Grouping) #

[View source]
def evaluate(ast : Ast::Unary) #

[View source]
def evaluate(ast : Ast::Binary) #

[View source]
def evaluate(ast : Ast::Logical) #

[View source]
def evaluate(ast : Ast::Stmt) #

[View source]
def evaluate(ast : Ast::Var) #

[View source]
def evaluate(ast : Ast::Assign) #

[View source]
def evaluate(ast : Ast::Print) #

[View source]
def evaluate(ast : Ast::Block) #

[View source]
def evaluate(ast : Ast::If) #

[View source]
def evaluate(ast : Ast::While) #

[View source]
def is_truthy(val : Literal) : Bool #

[View source]
def run #

[View source]

Macro Detail

macro safe_cast(value, type) #

[View source]
macro safe_op(type, expr) #

[View source]