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)
SourceInstance methods
argv
Sourceenvironment
Sourceerror_reporter
Sourceevaluate(expr : Expr) : Value
Sourceexecute(stmt : Stmt) : Value
Sourceexecute_block(stmts : Array(Stmt), environment : Environment, in_initializer : Bool) : Value
Sourceinterpret(stmts) : Value
Sourceresolve(expr, depth)
Sourcetype_of(value : Value) : String
Sourcevisit_array_literal_expr(expr) : Value
Sourcevisit_assign_expr(expr) : Value
Sourcevisit_binary_expr(expr) : Value
Sourcevisit_block_expr(expr) : Value
Sourcevisit_break_expr(expr) : Nil
Sourcevisit_call_expr(expr) : Value
Sourcevisit_expression_stmt(stmt) : Nil
Sourcevisit_function_expr(expr) : Value
Sourcevisit_function_stmt(stmt) : Nil
Sourcevisit_get_expr(expr) : Value
Sourcevisit_grouping_expr(expr) : Value
Sourcevisit_if_expr(expr) : Value
Sourcevisit_import_expr(expr) : Nil
Sourcevisit_literal_expr(expr) : Value
Sourcevisit_logical_expr(expr) : Value
Sourcevisit_loop_expr(expr) : Value
Sourcevisit_map_literal_expr(expr) : Value
Sourcevisit_match_expr(expr) : Value
Sourcevisit_next_expr(expr) : Nil
Sourcevisit_return_expr(expr) : Nil
Sourcevisit_self_expr(expr) : Value
Sourcevisit_set_expr(expr) : Value
Sourcevisit_string_interpolation_expr(expr) : String
Sourcevisit_type_stmt(stmt) : Nil
Sourcevisit_unary_expr(expr) : Value
Sourcevisit_var_expr(expr) : Value
Sourcevisit_variable_expr(expr) : Value
Sourcevisit_while_expr(expr) : Value
Source