class

Lit::Interpreter

Inherits Lit::Stmt::Visitor / Lit::Expr::Visitor / Reference / Object

Constants

BINARY_OP_TO_METHOD = { "+": "add", "-": "sub", "*": "mul", "/": "div", "%": "mod", ">": "gt", ">=": "gte", "<": "lt", "<=": "lte", "==": "eq", }

Constructors

new(error_reporter : ErrorReporter)
Source

Instance methods

argv
Source
environment
Source
error_reporter
Source
evaluate(expr : Expr) : Value
Source
execute(stmt : Stmt) : Value
Source
execute_block(stmts : Array(Stmt), environment : Environment, in_initializer : Bool) : Value
Source
interpret(stmts) : Value
Source
resolve(expr, depth)
Source
type_of(value : Value) : String
Source
visit_array_literal_expr(expr) : Value
Source
visit_assign_expr(expr) : Value
Source
visit_binary_expr(expr) : Value
Source
visit_block_expr(expr) : Value
Source
visit_break_expr(expr) : Nil
Source
visit_call_expr(expr) : Value
Source
visit_expression_stmt(stmt) : Nil
Source
visit_function_expr(expr) : Value
Source
visit_function_stmt(stmt) : Nil
Source
visit_get_expr(expr) : Value
Source
visit_grouping_expr(expr) : Value
Source
visit_if_expr(expr) : Value
Source
visit_import_expr(expr) : Nil
Source
visit_literal_expr(expr) : Value
Source
visit_logical_expr(expr) : Value
Source
visit_loop_expr(expr) : Value
Source
visit_map_literal_expr(expr) : Value
Source
visit_match_expr(expr) : Value
Source
visit_next_expr(expr) : Nil
Source
visit_return_expr(expr) : Nil
Source
visit_self_expr(expr) : Value
Source
visit_set_expr(expr) : Value
Source
visit_string_interpolation_expr(expr) : String
Source
visit_type_stmt(stmt) : Nil
Source
visit_unary_expr(expr) : Value
Source
visit_var_expr(expr) : Value
Source
visit_variable_expr(expr) : Value
Source
visit_while_expr(expr) : Value
Source

Nested types