C# 클래스 Babel.Compiler.CodeGeneratingVisitor

상속: AbstractNodeVisitor
파일 보기 프로젝트 열기: shugo/babel

보호된 프로퍼티들

프로퍼티 타입 설명
currentClass ClassDefinition
currentException System.Reflection.Emit.LocalBuilder
currentIter IterDefinition
currentLoop LoopStatement
currentRoutine RoutineDefinition
currentType System.Reflection.Emit.TypeBuilder
exceptionLevel int
ilGenerator System.Reflection.Emit.ILGenerator
inSharedContext bool
localVariableStack LocalVariableStack
nestedTypes System.Collections.ArrayList
program Program
report Report
returnLabel System.Reflection.Emit.Label
typeManager TypeManager

공개 메소드들

메소드 설명
CodeGeneratingVisitor ( Report report ) : System
VisitAbstractIter ( AbstractIterSignature iter ) : void
VisitAnd ( AndExpression and ) : void
VisitAssign ( AssignStatement assign ) : void
VisitAttr ( AttrDefinition attr ) : void
VisitBoolLiteral ( BoolLiteralExpression boolLiteral ) : void
VisitBreak ( BreakExpression breakExpr ) : void
VisitCall ( CallExpression call ) : void
VisitCase ( CaseStatement caseStmt ) : void
VisitCharLiteral ( CharLiteralExpression charLiteral ) : void
VisitClass ( ClassDefinition cls ) : void
VisitConst ( ConstDefinition constDef ) : void
VisitDeclaration ( DeclarationStatement decl ) : void
VisitException ( ExceptionExpression exception ) : void
VisitExpressionStatement ( ExpressionStatement exprStmt ) : void
VisitIf ( IfStatement ifStmt ) : void
VisitIntLiteral ( IntLiteralExpression intLiteral ) : void
VisitIter ( IterDefinition iter ) : void
VisitIterCall ( IterCallExpression iter ) : void
VisitLocal ( LocalExpression localExpr ) : void
VisitLoop ( LoopStatement loop ) : void
VisitModalExpression ( ModalExpression modalExpr ) : void
VisitNew ( NewExpression newExpr ) : void
VisitOr ( OrExpression or ) : void
VisitProgram ( Program program ) : void
VisitProtect ( ProtectStatement protect ) : void
VisitQuit ( QuitStatement quit ) : void
VisitRaise ( RaiseStatement raise ) : void
VisitReturn ( ReturnStatement ret ) : void
VisitRoutine ( RoutineDefinition routine ) : void
VisitSelf ( SelfExpression self ) : void
VisitSharedAttr ( SharedAttrDefinition attr ) : void
VisitSourceFile ( SourceFile sourceFile ) : void
VisitStatementList ( StatementList statementList ) : void
VisitStrLiteral ( StrLiteralExpression strLiteral ) : void
VisitTypecase ( TypecaseStatement typecase ) : void
VisitVoid ( VoidExpression voidExpr ) : void
VisitVoidTest ( VoidTestExpression voidTest ) : void
VisitYield ( YieldStatement yield ) : void

보호된 메소드들

메소드 설명
BoxIfNecessary ( Type sourceType, Type destinationType ) : void
EmitLdind ( Type type ) : void
EmitStind ( Type type ) : void
EmitVoid ( Type type ) : void
GenerateAdapter ( SupertypingAdapter adapter ) : void
UnboxIfNecessary ( Type sourceType, Type destinationType ) : void

메소드 상세

BoxIfNecessary() 보호된 메소드

protected BoxIfNecessary ( Type sourceType, Type destinationType ) : void
sourceType System.Type
destinationType System.Type
리턴 void

CodeGeneratingVisitor() 공개 메소드

public CodeGeneratingVisitor ( Report report ) : System
report Report
리턴 System

EmitLdind() 보호된 메소드

protected EmitLdind ( Type type ) : void
type System.Type
리턴 void

EmitStind() 보호된 메소드

protected EmitStind ( Type type ) : void
type System.Type
리턴 void

EmitVoid() 보호된 메소드

protected EmitVoid ( Type type ) : void
type System.Type
리턴 void

GenerateAdapter() 보호된 메소드

protected GenerateAdapter ( SupertypingAdapter adapter ) : void
adapter SupertypingAdapter
리턴 void

UnboxIfNecessary() 보호된 메소드

protected UnboxIfNecessary ( Type sourceType, Type destinationType ) : void
sourceType System.Type
destinationType System.Type
리턴 void

VisitAbstractIter() 공개 메소드

public VisitAbstractIter ( AbstractIterSignature iter ) : void
iter AbstractIterSignature
리턴 void

VisitAnd() 공개 메소드

public VisitAnd ( AndExpression and ) : void
and AndExpression
리턴 void

VisitAssign() 공개 메소드

public VisitAssign ( AssignStatement assign ) : void
assign AssignStatement
리턴 void

VisitAttr() 공개 메소드

public VisitAttr ( AttrDefinition attr ) : void
attr AttrDefinition
리턴 void

VisitBoolLiteral() 공개 메소드

public VisitBoolLiteral ( BoolLiteralExpression boolLiteral ) : void
boolLiteral BoolLiteralExpression
리턴 void

VisitBreak() 공개 메소드

public VisitBreak ( BreakExpression breakExpr ) : void
breakExpr BreakExpression
리턴 void

VisitCall() 공개 메소드

public VisitCall ( CallExpression call ) : void
call CallExpression
리턴 void

VisitCase() 공개 메소드

public VisitCase ( CaseStatement caseStmt ) : void
caseStmt CaseStatement
리턴 void

VisitCharLiteral() 공개 메소드

public VisitCharLiteral ( CharLiteralExpression charLiteral ) : void
charLiteral CharLiteralExpression
리턴 void

VisitClass() 공개 메소드

public VisitClass ( ClassDefinition cls ) : void
cls ClassDefinition
리턴 void

VisitConst() 공개 메소드

public VisitConst ( ConstDefinition constDef ) : void
constDef ConstDefinition
리턴 void

VisitDeclaration() 공개 메소드

public VisitDeclaration ( DeclarationStatement decl ) : void
decl DeclarationStatement
리턴 void

VisitException() 공개 메소드

public VisitException ( ExceptionExpression exception ) : void
exception ExceptionExpression
리턴 void

VisitExpressionStatement() 공개 메소드

public VisitExpressionStatement ( ExpressionStatement exprStmt ) : void
exprStmt ExpressionStatement
리턴 void

VisitIf() 공개 메소드

public VisitIf ( IfStatement ifStmt ) : void
ifStmt IfStatement
리턴 void

VisitIntLiteral() 공개 메소드

public VisitIntLiteral ( IntLiteralExpression intLiteral ) : void
intLiteral IntLiteralExpression
리턴 void

VisitIter() 공개 메소드

public VisitIter ( IterDefinition iter ) : void
iter IterDefinition
리턴 void

VisitIterCall() 공개 메소드

public VisitIterCall ( IterCallExpression iter ) : void
iter IterCallExpression
리턴 void

VisitLocal() 공개 메소드

public VisitLocal ( LocalExpression localExpr ) : void
localExpr LocalExpression
리턴 void

VisitLoop() 공개 메소드

public VisitLoop ( LoopStatement loop ) : void
loop LoopStatement
리턴 void

VisitModalExpression() 공개 메소드

public VisitModalExpression ( ModalExpression modalExpr ) : void
modalExpr ModalExpression
리턴 void

VisitNew() 공개 메소드

public VisitNew ( NewExpression newExpr ) : void
newExpr NewExpression
리턴 void

VisitOr() 공개 메소드

public VisitOr ( OrExpression or ) : void
or OrExpression
리턴 void

VisitProgram() 공개 메소드

public VisitProgram ( Program program ) : void
program Program
리턴 void

VisitProtect() 공개 메소드

public VisitProtect ( ProtectStatement protect ) : void
protect ProtectStatement
리턴 void

VisitQuit() 공개 메소드

public VisitQuit ( QuitStatement quit ) : void
quit QuitStatement
리턴 void

VisitRaise() 공개 메소드

public VisitRaise ( RaiseStatement raise ) : void
raise RaiseStatement
리턴 void

VisitReturn() 공개 메소드

public VisitReturn ( ReturnStatement ret ) : void
ret ReturnStatement
리턴 void

VisitRoutine() 공개 메소드

public VisitRoutine ( RoutineDefinition routine ) : void
routine RoutineDefinition
리턴 void

VisitSelf() 공개 메소드

public VisitSelf ( SelfExpression self ) : void
self SelfExpression
리턴 void

VisitSharedAttr() 공개 메소드

public VisitSharedAttr ( SharedAttrDefinition attr ) : void
attr SharedAttrDefinition
리턴 void

VisitSourceFile() 공개 메소드

public VisitSourceFile ( SourceFile sourceFile ) : void
sourceFile SourceFile
리턴 void

VisitStatementList() 공개 메소드

public VisitStatementList ( StatementList statementList ) : void
statementList StatementList
리턴 void

VisitStrLiteral() 공개 메소드

public VisitStrLiteral ( StrLiteralExpression strLiteral ) : void
strLiteral StrLiteralExpression
리턴 void

VisitTypecase() 공개 메소드

public VisitTypecase ( TypecaseStatement typecase ) : void
typecase TypecaseStatement
리턴 void

VisitVoid() 공개 메소드

public VisitVoid ( VoidExpression voidExpr ) : void
voidExpr VoidExpression
리턴 void

VisitVoidTest() 공개 메소드

public VisitVoidTest ( VoidTestExpression voidTest ) : void
voidTest VoidTestExpression
리턴 void

VisitYield() 공개 메소드

public VisitYield ( YieldStatement yield ) : void
yield YieldStatement
리턴 void

프로퍼티 상세

currentClass 보호되어 있는 프로퍼티

protected ClassDefinition,Babel.Compiler currentClass
리턴 ClassDefinition

currentException 보호되어 있는 프로퍼티

protected LocalBuilder,System.Reflection.Emit currentException
리턴 System.Reflection.Emit.LocalBuilder

currentIter 보호되어 있는 프로퍼티

protected IterDefinition,Babel.Compiler currentIter
리턴 IterDefinition

currentLoop 보호되어 있는 프로퍼티

protected LoopStatement,Babel.Compiler currentLoop
리턴 LoopStatement

currentRoutine 보호되어 있는 프로퍼티

protected RoutineDefinition,Babel.Compiler currentRoutine
리턴 RoutineDefinition

currentType 보호되어 있는 프로퍼티

protected TypeBuilder,System.Reflection.Emit currentType
리턴 System.Reflection.Emit.TypeBuilder

exceptionLevel 보호되어 있는 프로퍼티

protected int exceptionLevel
리턴 int

ilGenerator 보호되어 있는 프로퍼티

protected ILGenerator,System.Reflection.Emit ilGenerator
리턴 System.Reflection.Emit.ILGenerator

inSharedContext 보호되어 있는 프로퍼티

protected bool inSharedContext
리턴 bool

localVariableStack 보호되어 있는 프로퍼티

protected LocalVariableStack,Babel.Compiler localVariableStack
리턴 LocalVariableStack

nestedTypes 보호되어 있는 프로퍼티

protected ArrayList,System.Collections nestedTypes
리턴 System.Collections.ArrayList

program 보호되어 있는 프로퍼티

protected Program program
리턴 Program

report 보호되어 있는 프로퍼티

protected Report,Babel.Compiler report
리턴 Report

returnLabel 보호되어 있는 프로퍼티

protected Label,System.Reflection.Emit returnLabel
리턴 System.Reflection.Emit.Label

typeManager 보호되어 있는 프로퍼티

protected TypeManager,Babel.Compiler typeManager
리턴 TypeManager