class
Lit::Interpreter
- Lit::Interpreter
- Reference
- Object
Included Modules
- Lit::Expr::Visitor(Bool | Float64 | Int64 | Lit::Callable | Lit::Instance | Lit::Uninitialized | String | Nil)
- Lit::Stmt::Visitor(Bool | Float64 | Int64 | Lit::Callable | Lit::Instance | Lit::Uninitialized | String | Nil)
Defined in:
lit/interpreter.crConstant Summary
-
BINARY_OP_TO_METHOD =
{"+": "add", "-": "sub", "*": "mul", "/": "div", "%": "mod", ">": "gt", ">=": "gte", "<": "lt", "<=": "lte", "==": "eq"}
Constructors
Class Method Summary
Instance Method Summary
- #argv : LitArray
- #environment : Lit::Environment
- #evaluate(expr : Expr) : Value
- #execute(stmt : Stmt) : Value
- #execute_block(stmts : Array(Stmt), environment : Environment, in_initializer : Bool) : Nil
- #interpret(stmts) : Nil
- #resolve(expr, depth)
- #type_of(value : Value) : String
- #visit_array_literal_expr(expr) : Value
- #visit_assign_expr(expr) : Value
- #visit_binary_expr(expr) : Value
- #visit_block_stmt(stmt) : Nil
- #visit_break_stmt(stmt) : Nil
- #visit_call_expr(expr) : Value
- #visit_expression_stmt(stmt) : Nil
- #visit_function_expr(expr) : Value
- #visit_function_stmt(stmt) : Nil
- #visit_get_expr(expr) : Value
- #visit_grouping_expr(expr) : Value
- #visit_if_stmt(stmt) : Nil
- #visit_literal_expr(expr) : Value
- #visit_logical_expr(expr) : Value
- #visit_loop_stmt(stmt) : Nil
- #visit_map_literal_expr(expr) : Value
- #visit_next_stmt(stmt) : Nil
- #visit_return_stmt(stmt) : Nil
- #visit_self_expr(expr) : Value
- #visit_set_expr(expr) : Value
- #visit_string_interpolation_expr(expr) : String
- #visit_ternary_expr(expr) : Value
- #visit_type_stmt(stmt) : Nil
- #visit_unary_expr(expr) : Value
- #visit_var_stmt(stmt) : Nil
- #visit_variable_expr(expr) : Value
- #visit_while_stmt(stmt) : Nil