C# Class Jint.ExecutionVisitor

Inheritance: IStatementVisitor, IJintVisitor, IDeserializationCallback
Show file Open project: splhack/unity-jint Class Usage Examples

Protected Properties

Property Type Description
Scopes Stack
breakStatement BreakStatement
continueStatement ContinueStatement
exit bool
recursionLevel int
returnInstance JsInstance
typeResolver ITypeResolver

Public Methods

Method Description
Assign ( Jint.Expressions.MemberExpression left, JsInstance value ) : void
CallFunction ( JsFunction function, JsDictionaryObject that, JsInstance parameters ) : void

Compare ( JsInstance x, JsInstance y ) : JsBoolean
CreateDebugInformation ( Statement statement ) : Jint.Debugger.DebugInformation
CreateFunction ( IFunctionDeclaration functionDeclaration ) : JsFunction
EnsureIdentifierIsDefined ( object value ) : void
ExecuteFunction ( JsFunction function, JsDictionaryObject that, JsInstance parameters ) : void
ExecuteFunction ( JsFunction function, JsDictionaryObject that, JsInstance parameters, Type genericParameters ) : void
ExecutionVisitor ( Jint.Options options ) : System
IsNullOrUndefined ( JsInstance o ) : bool
OnDeserialization ( object sender ) : void
OnStep ( Jint.Debugger.DebugInformation info ) : void
Return ( JsInstance instance ) : JsInstance
SetResult ( JsInstance value, JsDictionaryObject baseObject ) : void
Visit ( ArrayDeclaration expression ) : void
Visit ( Jint.Expressions.AssignmentExpression statement ) : void
Visit ( BinaryExpression expression ) : void
Visit ( BlockStatement statement ) : void
Visit ( Jint.Expressions.BreakStatement statement ) : void
Visit ( CommaOperatorStatement statement ) : void
Visit ( Jint.Expressions.ContinueStatement statement ) : void
Visit ( Jint.Expressions.DoWhileStatement statement ) : void
Visit ( Jint.Expressions.EmptyStatement statement ) : void
Visit ( ForEachInStatement statement ) : void
Visit ( ForStatement statement ) : void
Visit ( FunctionDeclarationStatement statement ) : void
Visit ( FunctionExpression fe ) : void
Visit ( Jint.Expressions.Identifier expression ) : void
Visit ( IfStatement statement ) : void
Visit ( Indexer indexer ) : void
Visit ( Jint.Expressions.JsonExpression json ) : void
Visit ( Jint.Expressions.MemberExpression expression ) : void
Visit ( Jint.Expressions.MethodCall methodCall ) : void
Visit ( NewExpression expression ) : void
Visit ( Program program ) : void
Visit ( Jint.Expressions.PropertyDeclarationExpression expression ) : void
Visit ( Jint.Expressions.PropertyExpression expression ) : void
Visit ( Jint.Expressions.RegexpExpression expression ) : void
Visit ( ReturnStatement statement ) : void
Visit ( Statement expression ) : void
Visit ( SwitchStatement statement ) : void
Visit ( TernaryExpression expression ) : void
Visit ( ThrowStatement statement ) : void
Visit ( TryStatement statement ) : void
Visit ( UnaryExpression expression ) : void
Visit ( ValueExpression expression ) : void
Visit ( VariableDeclarationStatement statement ) : void
Visit ( WhileStatement statement ) : void
Visit ( WithStatement statement ) : void

Protected Methods

Method Description
EnterScope ( JsDictionaryObject scope ) : void
EnterScope ( JsScope scope ) : void
ExitScope ( ) : void
ResetContinueIfPresent ( string label ) : void

Called by a loop to stop the "continue" keyword escalation

StopStatementFlow ( ) : bool

Private Methods

Method Description
EnsureClrAllowed ( ) : void
HasOption ( Jint.Options options ) : bool
RestoreResult ( ) : void
SaveResult ( ) : void
Visit ( ExpressionStatement statement ) : void

Method Details

Assign() public method

public Assign ( Jint.Expressions.MemberExpression left, JsInstance value ) : void
left Jint.Expressions.MemberExpression
value Jint.Native.JsInstance
return void

CallFunction() public method

public CallFunction ( JsFunction function, JsDictionaryObject that, JsInstance parameters ) : void
function Jint.Native.JsFunction Function to exectue
that JsDictionaryObject Object to call the function on
parameters Jint.Native.JsInstance Parameters of the execution
return void

Compare() public method

public Compare ( JsInstance x, JsInstance y ) : JsBoolean
x Jint.Native.JsInstance
y Jint.Native.JsInstance
return Jint.Native.JsBoolean

CreateDebugInformation() public method

public CreateDebugInformation ( Statement statement ) : Jint.Debugger.DebugInformation
statement Jint.Expressions.Statement
return Jint.Debugger.DebugInformation

CreateFunction() public method

public CreateFunction ( IFunctionDeclaration functionDeclaration ) : JsFunction
functionDeclaration IFunctionDeclaration
return Jint.Native.JsFunction

EnsureIdentifierIsDefined() public method

public EnsureIdentifierIsDefined ( object value ) : void
value object
return void

EnterScope() protected method

protected EnterScope ( JsDictionaryObject scope ) : void
scope JsDictionaryObject
return void

EnterScope() protected method

protected EnterScope ( JsScope scope ) : void
scope Jint.Native.JsScope
return void

ExecuteFunction() public method

public ExecuteFunction ( JsFunction function, JsDictionaryObject that, JsInstance parameters ) : void
function Jint.Native.JsFunction
that JsDictionaryObject
parameters Jint.Native.JsInstance
return void

ExecuteFunction() public method

public ExecuteFunction ( JsFunction function, JsDictionaryObject that, JsInstance parameters, Type genericParameters ) : void
function Jint.Native.JsFunction
that JsDictionaryObject
parameters Jint.Native.JsInstance
genericParameters System.Type
return void

ExecutionVisitor() public method

public ExecutionVisitor ( Jint.Options options ) : System
options Jint.Options
return System

ExitScope() protected method

protected ExitScope ( ) : void
return void

IsNullOrUndefined() public static method

public static IsNullOrUndefined ( JsInstance o ) : bool
o Jint.Native.JsInstance
return bool

OnDeserialization() public method

public OnDeserialization ( object sender ) : void
sender object
return void

OnStep() public method

public OnStep ( Jint.Debugger.DebugInformation info ) : void
info Jint.Debugger.DebugInformation
return void

ResetContinueIfPresent() protected method

Called by a loop to stop the "continue" keyword escalation
protected ResetContinueIfPresent ( string label ) : void
label string
return void

Return() public method

public Return ( JsInstance instance ) : JsInstance
instance Jint.Native.JsInstance
return Jint.Native.JsInstance

SetResult() public method

public SetResult ( JsInstance value, JsDictionaryObject baseObject ) : void
value Jint.Native.JsInstance
baseObject JsDictionaryObject
return void

StopStatementFlow() protected method

protected StopStatementFlow ( ) : bool
return bool

Visit() public method

public Visit ( ArrayDeclaration expression ) : void
expression Jint.Expressions.ArrayDeclaration
return void

Visit() public method

public Visit ( Jint.Expressions.AssignmentExpression statement ) : void
statement Jint.Expressions.AssignmentExpression
return void

Visit() public method

public Visit ( BinaryExpression expression ) : void
expression Jint.Expressions.BinaryExpression
return void

Visit() public method

public Visit ( BlockStatement statement ) : void
statement Jint.Expressions.BlockStatement
return void

Visit() public method

public Visit ( Jint.Expressions.BreakStatement statement ) : void
statement Jint.Expressions.BreakStatement
return void

Visit() public method

public Visit ( CommaOperatorStatement statement ) : void
statement Jint.Expressions.CommaOperatorStatement
return void

Visit() public method

public Visit ( Jint.Expressions.ContinueStatement statement ) : void
statement Jint.Expressions.ContinueStatement
return void

Visit() public method

public Visit ( Jint.Expressions.DoWhileStatement statement ) : void
statement Jint.Expressions.DoWhileStatement
return void

Visit() public method

public Visit ( Jint.Expressions.EmptyStatement statement ) : void
statement Jint.Expressions.EmptyStatement
return void

Visit() public method

public Visit ( ForEachInStatement statement ) : void
statement Jint.Expressions.ForEachInStatement
return void

Visit() public method

public Visit ( ForStatement statement ) : void
statement Jint.Expressions.ForStatement
return void

Visit() public method

public Visit ( FunctionDeclarationStatement statement ) : void
statement Jint.Expressions.FunctionDeclarationStatement
return void

Visit() public method

public Visit ( FunctionExpression fe ) : void
fe Jint.Expressions.FunctionExpression
return void

Visit() public method

public Visit ( Jint.Expressions.Identifier expression ) : void
expression Jint.Expressions.Identifier
return void

Visit() public method

public Visit ( IfStatement statement ) : void
statement Jint.Expressions.IfStatement
return void

Visit() public method

public Visit ( Indexer indexer ) : void
indexer Jint.Expressions.Indexer
return void

Visit() public method

public Visit ( Jint.Expressions.JsonExpression json ) : void
json Jint.Expressions.JsonExpression
return void

Visit() public method

public Visit ( Jint.Expressions.MemberExpression expression ) : void
expression Jint.Expressions.MemberExpression
return void

Visit() public method

public Visit ( Jint.Expressions.MethodCall methodCall ) : void
methodCall Jint.Expressions.MethodCall
return void

Visit() public method

public Visit ( NewExpression expression ) : void
expression Jint.Expressions.NewExpression
return void

Visit() public method

public Visit ( Program program ) : void
program Program
return void

Visit() public method

public Visit ( Jint.Expressions.PropertyDeclarationExpression expression ) : void
expression Jint.Expressions.PropertyDeclarationExpression
return void

Visit() public method

public Visit ( Jint.Expressions.PropertyExpression expression ) : void
expression Jint.Expressions.PropertyExpression
return void

Visit() public method

public Visit ( Jint.Expressions.RegexpExpression expression ) : void
expression Jint.Expressions.RegexpExpression
return void

Visit() public method

public Visit ( ReturnStatement statement ) : void
statement ReturnStatement
return void

Visit() public method

public Visit ( Statement expression ) : void
expression Statement
return void

Visit() public method

public Visit ( SwitchStatement statement ) : void
statement SwitchStatement
return void

Visit() public method

public Visit ( TernaryExpression expression ) : void
expression TernaryExpression
return void

Visit() public method

public Visit ( ThrowStatement statement ) : void
statement ThrowStatement
return void

Visit() public method

public Visit ( TryStatement statement ) : void
statement TryStatement
return void

Visit() public method

public Visit ( UnaryExpression expression ) : void
expression UnaryExpression
return void

Visit() public method

public Visit ( ValueExpression expression ) : void
expression ValueExpression
return void

Visit() public method

public Visit ( VariableDeclarationStatement statement ) : void
statement VariableDeclarationStatement
return void

Visit() public method

public Visit ( WhileStatement statement ) : void
statement WhileStatement
return void

Visit() public method

public Visit ( WithStatement statement ) : void
statement WithStatement
return void

Property Details

Scopes protected property

protected Stack Scopes
return Stack

breakStatement protected property

protected BreakStatement breakStatement
return BreakStatement

continueStatement protected property

protected ContinueStatement continueStatement
return ContinueStatement

exit protected property

protected bool exit
return bool

recursionLevel protected property

protected int recursionLevel
return int

returnInstance protected property

protected JsInstance returnInstance
return JsInstance

typeResolver protected property

protected ITypeResolver typeResolver
return ITypeResolver