BadScript 2
Loading...
Searching...
No Matches
BadTableExpressionCompiler.cs
Go to the documentation of this file.
1
using
BadScript2.Parser.Expressions
;
2
using
BadScript2.Parser.Expressions.Constant
;
3
using
BadScript2.Reader.Token
;
4
using
BadScript2.Runtime.Objects
;
5
6
namespace
BadScript2.Runtime.VirtualMachine.Compiler.ExpressionCompilers.Constant
;
7
11
public
class
BadTableExpressionCompiler
:
BadExpressionCompiler
<BadTableExpression>
12
{
14
public
override
void
Compile
(
BadExpressionCompileContext
context,
BadTableExpression
expression)
15
{
16
foreach
(KeyValuePair<BadWordToken, BadExpression> kvp
in
expression.Table.ToArray().Reverse())
17
{
18
context.Emit(
BadOpCode
.Push, kvp.Key.SourcePosition, (
BadObject
)kvp.Key.Text);
19
context.Compile(kvp.Value);
20
}
21
22
context.Emit(
BadOpCode
.TableInit, expression.Position, expression.Length);
23
}
24
}
BadScript2.Parser.Expressions.Constant.BadTableExpression
Implements the Table Expression.
Definition
BadTableExpression.cs:13
BadScript2.Runtime.Objects.BadObject
The Base Class for all BadScript Objects.
Definition
BadObject.cs:14
BadScript2.Runtime.VirtualMachine.Compiler.ExpressionCompilers.BadExpressionCompiler
Compiles a BadScript Expression of type T.
Definition
BadExpressionCompiler.cs:11
BadScript2.Runtime.VirtualMachine.Compiler.ExpressionCompilers.Constant.BadTableExpressionCompiler
Compiles the BadTableExpression.
Definition
BadTableExpressionCompiler.cs:12
BadScript2.Runtime.VirtualMachine.Compiler.ExpressionCompilers.Constant.BadTableExpressionCompiler.Compile
override void Compile(BadExpressionCompileContext context, BadTableExpression expression)
Definition
BadTableExpressionCompiler.cs:14
BadScript2.Parser.Expressions.Constant
Contains the Constant Expressions for the BadScript2 Language.
Definition
BadArrayExpression.cs:9
BadScript2.Parser.Expressions
Contains the Expressions for the BadScript2 Language.
Definition
BadArrayAccessExpression.cs:11
BadScript2.Reader.Token
Contains the Reader Tokens for the BadScript2 Language.
Definition
BadSymbolToken.cs:6
BadScript2.Runtime.Objects
Contains the Runtime Objects.
Definition
BadArray.cs:10
BadScript2.Runtime.VirtualMachine.Compiler.ExpressionCompilers.Constant
Contains Constant Expression Compilers.
Definition
BadArrayExpressionCompiler.cs:6
BadScript2.Runtime.VirtualMachine.BadOpCode
BadOpCode
Defines the Operations that the BadVirtualMachine can execute.
Definition
BadOpCode.cs:7
BadScript2.Runtime.VirtualMachine.Compiler.ExpressionCompilers.BadExpressionCompileContext
Definition
IBadExpressionCompiler.cs:7
src
BadScript2
Runtime
VirtualMachine
Compiler
ExpressionCompilers
Constant
BadTableExpressionCompiler.cs
Generated by
1.9.8