Module: KoiReferenceCompiler
- Defined in:
- lib/koi-reference-compiler/vm_opcodes.rb,
lib/koi-reference-compiler/syntax_node.rb,
lib/koi-reference-compiler/koi-reference-compiler.rb,
lib/koi-reference-compiler/node_extensions/blocks/block.rb,
lib/koi-reference-compiler/node_extensions/control_flow/if.rb,
lib/koi-reference-compiler/node_extensions/control_flow/unless.rb,
lib/koi-reference-compiler/node_extensions/literals/nil_literal.rb,
lib/koi-reference-compiler/node_extensions/statements/statement.rb,
lib/koi-reference-compiler/node_extensions/assignment/assignment.rb,
lib/koi-reference-compiler/node_extensions/literals/true_literal.rb,
lib/koi-reference-compiler/node_extensions/expressions/expression.rb,
lib/koi-reference-compiler/node_extensions/identifiers/identifier.rb,
lib/koi-reference-compiler/node_extensions/literals/false_literal.rb,
lib/koi-reference-compiler/node_extensions/literals/float_literal.rb,
lib/koi-reference-compiler/node_extensions/functions/function_call.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/key_value.rb,
lib/koi-reference-compiler/node_extensions/literals/string_literal.rb,
lib/koi-reference-compiler/node_extensions/literals/integer_literal.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/hash_access.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/hash_literal.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/hash_accessor.rb,
lib/koi-reference-compiler/node_extensions/operators/addition_operator.rb,
lib/koi-reference-compiler/node_extensions/operators/division_operator.rb,
lib/koi-reference-compiler/node_extensions/operators/equality_operator.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/key_value_list.rb,
lib/koi-reference-compiler/node_extensions/operators/less_than_operator.rb,
lib/koi-reference-compiler/node_extensions/functions/function_definition.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/hash_assignment.rb,
lib/koi-reference-compiler/node_extensions/operators/assignment_operator.rb,
lib/koi-reference-compiler/node_extensions/operators/great_than_operator.rb,
lib/koi-reference-compiler/node_extensions/operators/inequality_operator.rb,
lib/koi-reference-compiler/node_extensions/operators/subtraction_operator.rb,
lib/koi-reference-compiler/node_extensions/expressions/additive_expression.rb,
lib/koi-reference-compiler/node_extensions/expressions/multitive_expression.rb,
lib/koi-reference-compiler/node_extensions/hash_literals/hash_accessor_list.rb,
lib/koi-reference-compiler/node_extensions/operators/multiplication_operator.rb,
lib/koi-reference-compiler/node_extensions/expressions/comparative_expression.rb
Defined Under Namespace
Classes: AdditionOperator, AdditiveExpression, Assignment, AssignmentOperator, Block, ComparativeExpression, Compiler, DivisionOperator, EqualityOperator, Expression, FalseLiteral, FloatLiteral, FunctionCall, FunctionDefinition, GreaterThanOperator, HashAccess, HashAccessor, HashAccessorList, HashAssignment, HashLiteral, Identifier, If, InequalityOperator, IntegerLiteral, KeyValue, KeyValueList, LessThanOperator, MultiplicationOperator, MultitiveExpression, NilLiteral, Statement, StringLiteral, SubtractionOperator, SyntaxNode, TrueLiteral, Unless
Constant Summary collapse
- PUSH_NIL =
0
0
- PUSH_BOOL =
1
- PUSH_INT =
2
- PUSH_FLOAT =
3
- PUSH_STRING =
4
- JUMP =
20
20
- JUMP_IF =
21
- JUMP_UNLESS =
22
- POP =
40
40
- SWAP =
41
- DUP =
42
- STKSIZE =
43
- TYPEOF =
44
- TOP =
45
- ADD =
60
60
- SUBTRACT =
61
- MULTIPLY =
62
- DIVIDE =
63
- CONCAT =
80
80
- STRLEN =
81
- TO_STRING =
82
- EQUAL =
100
100
- LESS_THAN =
101
- GREATER_THAN =
102
- INVERT =
103
- PRINT =
120
120
- GETS =
121
- SET_LOCAL =
140
140
- GET_LOCAL =
141
- SET_GLOBAL =
142
- GET_GLOBAL =
143
- PUSH_FUNCTION =
160
160
- END_FUNCTION =
161
- CALL =
162
- RETURN =
163
- TAILCALL =
164
- PUSH_HASH =
180
180
- SET_KEY =
181
- GET_KEY =
182
- HAS_KEY =
183
- LENGTH =
184
- NUM_PAIRS =
185
- PAIRS =
186
- NO_OP =
240
240
- EXIT =
255