C# Class Boo.Lang.Compiler.Steps.OptimizeIterationStatements

AST semantic evaluation.
Inheritance: Boo.Lang.Compiler.Steps.AbstractTransformerCompilerStep
Afficher le fichier Open project: boo/boo-lang

Méthodes publiques

Méthode Description
Initialize ( CompilerContext context ) : void
LeaveForStatement ( Boo.Lang.Compiler.Ast.ForStatement node ) : void
OnBlockExpression ( BlockExpression node ) : void
OnConstructor ( Constructor node ) : void
OnDestructor ( Boo.Lang.Compiler.Ast.Destructor node ) : void
OnMethod ( Method node ) : void
OptimizeIterationStatements ( ) : System
Run ( ) : void

Private Methods

Méthode Description
CheckForItemInArrayLoop ( Boo.Lang.Compiler.Ast.ForStatement node ) : void

Optimize the for item in array construct

CheckForItemInRangeLoop ( Boo.Lang.Compiler.Ast.ForStatement node ) : void

Optimize the for item in range() construct

CreateRawArraySlicing ( ReferenceExpression arrayRef, Expression numRef, IType elementType ) : Boo.Lang.Compiler.Ast.SlicingExpression
CreateUpdateLabel ( Boo.Lang.Compiler.Ast.ForStatement node ) : Boo.Lang.Compiler.Ast.LabelStatement
DeclareTempLocal ( IType type ) : InternalLocal
FixContinueStatements ( Boo.Lang.Compiler.Ast.ForStatement node, Boo.Lang.Compiler.Ast.WhileStatement ws ) : void
IsRangeInvocation ( MethodInvocationExpression mi ) : bool
Map ( System method ) : IMethod
UnpackExpression ( Block block, Expression expression, Boo.Lang.Compiler.Ast.DeclarationCollection declarations ) : void

Unpacks an expression onto a list of declarations.

Method Details

Initialize() public méthode

public Initialize ( CompilerContext context ) : void
context CompilerContext
Résultat void

LeaveForStatement() public méthode

public LeaveForStatement ( Boo.Lang.Compiler.Ast.ForStatement node ) : void
node Boo.Lang.Compiler.Ast.ForStatement
Résultat void

OnBlockExpression() public méthode

public OnBlockExpression ( BlockExpression node ) : void
node Boo.Lang.Compiler.Ast.BlockExpression
Résultat void

OnConstructor() public méthode

public OnConstructor ( Constructor node ) : void
node Boo.Lang.Compiler.Ast.Constructor
Résultat void

OnDestructor() public méthode

public OnDestructor ( Boo.Lang.Compiler.Ast.Destructor node ) : void
node Boo.Lang.Compiler.Ast.Destructor
Résultat void

OnMethod() public méthode

public OnMethod ( Method node ) : void
node Boo.Lang.Compiler.Ast.Method
Résultat void

OptimizeIterationStatements() public méthode

public OptimizeIterationStatements ( ) : System
Résultat System

Run() public méthode

public Run ( ) : void
Résultat void