C# 클래스 Boo.Lang.Compiler.Steps.OptimizeIterationStatements

AST semantic evaluation.
상속: Boo.Lang.Compiler.Steps.AbstractTransformerCompilerStep
파일 보기 프로젝트 열기: boo/boo-lang

공개 메소드들

메소드 설명
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

비공개 메소드들

메소드 설명
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.

메소드 상세

Initialize() 공개 메소드

public Initialize ( CompilerContext context ) : void
context CompilerContext
리턴 void

LeaveForStatement() 공개 메소드

public LeaveForStatement ( Boo.Lang.Compiler.Ast.ForStatement node ) : void
node Boo.Lang.Compiler.Ast.ForStatement
리턴 void

OnBlockExpression() 공개 메소드

public OnBlockExpression ( BlockExpression node ) : void
node Boo.Lang.Compiler.Ast.BlockExpression
리턴 void

OnConstructor() 공개 메소드

public OnConstructor ( Constructor node ) : void
node Boo.Lang.Compiler.Ast.Constructor
리턴 void

OnDestructor() 공개 메소드

public OnDestructor ( Boo.Lang.Compiler.Ast.Destructor node ) : void
node Boo.Lang.Compiler.Ast.Destructor
리턴 void

OnMethod() 공개 메소드

public OnMethod ( Method node ) : void
node Boo.Lang.Compiler.Ast.Method
리턴 void

OptimizeIterationStatements() 공개 메소드

public OptimizeIterationStatements ( ) : System
리턴 System

Run() 공개 메소드

public Run ( ) : void
리턴 void