C# Class WhiteCore.ScriptEngine.DotNetEngine.CompilerTools.LSL2CSCodeTransformer

Afficher le fichier Open project: WhiteCoreSim/WhiteCore-Dev Class Usage Examples

Méthodes publiques

Méthode Description
AddLSLEvent ( EventInfo ev ) : void
FixEventName ( string script, ScriptEngineParser.StateEvent &evt ) : void
GetAllLSLEvents ( ) : List
GetNewLSLEvents ( ) : List
LSL2CSCodeTransformer ( SYMBOL astRoot, string originalScript ) : System.Collections.Generic

Pass the new CodeTransformer an abstract syntax tree.

Transform ( ) : SYMBOL

Transform the code in the AST we have.

Transform ( string>.Dictionary GlobalMethods, ObjectList>.Dictionary MethodArguements ) : SYMBOL

Private Methods

Méthode Description
AddImplicitInitialization ( SYMBOL s, int didx ) : void

Replaces an instance of the node at s.kids[didx] with an assignment node. The assignment node has the Declaration node on the left hand side and a default initializer on the right hand side.

GetLocalVariableDictionaryKey ( ) : string
GetZeroConstant ( Parser p, string constantType ) : SYMBOL

Generates the node structure required to generate a default initialization.

TransformNode ( SYMBOL s, string>.Dictionary GlobalMethods, ObjectList>.Dictionary MethodArguements ) : void

Recursively called to transform each type of node. Will transform this node, then all it's children.

TransformNode ( SYMBOL s, string>.Dictionary GlobalMethods, ObjectList>.Dictionary MethodArguements, List scopesParent, int scopeCurrent ) : void

Recursively called to transform each type of node. Will transform this node, then all it's children.

Method Details

AddLSLEvent() public static méthode

public static AddLSLEvent ( EventInfo ev ) : void
ev EventInfo
Résultat void

FixEventName() public static méthode

public static FixEventName ( string script, ScriptEngineParser.StateEvent &evt ) : void
script string
evt ScriptEngineParser.StateEvent
Résultat void

GetAllLSLEvents() public static méthode

public static GetAllLSLEvents ( ) : List
Résultat List

GetNewLSLEvents() public static méthode

public static GetNewLSLEvents ( ) : List
Résultat List

LSL2CSCodeTransformer() public méthode

Pass the new CodeTransformer an abstract syntax tree.
public LSL2CSCodeTransformer ( SYMBOL astRoot, string originalScript ) : System.Collections.Generic
astRoot Tools.SYMBOL The root node of the AST.
originalScript string The original script that we are converting
Résultat System.Collections.Generic

Transform() public méthode

Transform the code in the AST we have.
public Transform ( ) : SYMBOL
Résultat Tools.SYMBOL

Transform() public méthode

public Transform ( string>.Dictionary GlobalMethods, ObjectList>.Dictionary MethodArguements ) : SYMBOL
GlobalMethods string>.Dictionary
MethodArguements ObjectList>.Dictionary
Résultat Tools.SYMBOL