C# Class JackCompiler.CodeGenerator

Inheritance: ICodeGenerator
显示文件 Open project: selagroup/diagnostics-courses

Public Methods

Method Description
Add ( ) : void
And ( ) : void
Assignment ( Token varName, bool withArrayIndex ) : void
BeginClass ( string className ) : void
BeginIf ( ) : void
BeginWhile ( ) : void
Call ( string className, string subroutineName ) : void
ConstructorDeclaration ( Subroutine subroutine ) : void
DiscardReturnValueFromLastCall ( ) : void
Div ( ) : void
EmitBootstrapper ( ) : void
EmitEnvironment ( ) : void
EndClass ( ) : void
EndIf ( ) : void
EndSubroutine ( ) : void
EndWhile ( ) : void
Equal ( ) : void
False ( ) : void
FieldDeclaration ( Symbol variable ) : void
FunctionDeclaration ( Subroutine subroutine ) : void
Greater ( ) : void
GreaterOrEqual ( ) : void
InitSymbolTables ( SymbolTable classSymTable, SymbolTable methodSymTable ) : void
IntConst ( int value ) : void
Less ( ) : void
LessOrEqual ( ) : void
MethodDeclaration ( Subroutine subroutine ) : void
Mod ( ) : void
Mul ( ) : void
Negate ( ) : void
Not ( ) : void
NotEqual ( ) : void
Null ( ) : void
Or ( ) : void
PossibleElse ( ) : void
Return ( ) : void
SetOptions ( CodeGeneratorOptions options ) : void
StaticDeclaration ( Symbol variable ) : void
StrConst ( string value ) : void
Sub ( ) : void
This ( ) : void
True ( ) : void
VariableRead ( Token varName, bool withArrayIndex ) : void
WhileCondition ( ) : void

Method Details

Add() public abstract method

public abstract Add ( ) : void
return void

And() public abstract method

public abstract And ( ) : void
return void

Assignment() public abstract method

public abstract Assignment ( Token varName, bool withArrayIndex ) : void
varName Token
withArrayIndex bool
return void

BeginClass() public abstract method

public abstract BeginClass ( string className ) : void
className string
return void

BeginIf() public abstract method

public abstract BeginIf ( ) : void
return void

BeginWhile() public abstract method

public abstract BeginWhile ( ) : void
return void

Call() public abstract method

public abstract Call ( string className, string subroutineName ) : void
className string
subroutineName string
return void

ConstructorDeclaration() public abstract method

public abstract ConstructorDeclaration ( Subroutine subroutine ) : void
subroutine Subroutine
return void

DiscardReturnValueFromLastCall() public abstract method

public abstract DiscardReturnValueFromLastCall ( ) : void
return void

Div() public abstract method

public abstract Div ( ) : void
return void

EmitBootstrapper() public abstract method

public abstract EmitBootstrapper ( ) : void
return void

EmitEnvironment() public abstract method

public abstract EmitEnvironment ( ) : void
return void

EndClass() public abstract method

public abstract EndClass ( ) : void
return void

EndIf() public abstract method

public abstract EndIf ( ) : void
return void

EndSubroutine() public abstract method

public abstract EndSubroutine ( ) : void
return void

EndWhile() public abstract method

public abstract EndWhile ( ) : void
return void

Equal() public abstract method

public abstract Equal ( ) : void
return void

False() public abstract method

public abstract False ( ) : void
return void

FieldDeclaration() public abstract method

public abstract FieldDeclaration ( Symbol variable ) : void
variable Symbol
return void

FunctionDeclaration() public abstract method

public abstract FunctionDeclaration ( Subroutine subroutine ) : void
subroutine Subroutine
return void

Greater() public abstract method

public abstract Greater ( ) : void
return void

GreaterOrEqual() public abstract method

public abstract GreaterOrEqual ( ) : void
return void

InitSymbolTables() public method

public InitSymbolTables ( SymbolTable classSymTable, SymbolTable methodSymTable ) : void
classSymTable SymbolTable
methodSymTable SymbolTable
return void

IntConst() public abstract method

public abstract IntConst ( int value ) : void
value int
return void

Less() public abstract method

public abstract Less ( ) : void
return void

LessOrEqual() public abstract method

public abstract LessOrEqual ( ) : void
return void

MethodDeclaration() public abstract method

public abstract MethodDeclaration ( Subroutine subroutine ) : void
subroutine Subroutine
return void

Mod() public abstract method

public abstract Mod ( ) : void
return void

Mul() public abstract method

public abstract Mul ( ) : void
return void

Negate() public abstract method

public abstract Negate ( ) : void
return void

Not() public abstract method

public abstract Not ( ) : void
return void

NotEqual() public abstract method

public abstract NotEqual ( ) : void
return void

Null() public abstract method

public abstract Null ( ) : void
return void

Or() public abstract method

public abstract Or ( ) : void
return void

PossibleElse() public abstract method

public abstract PossibleElse ( ) : void
return void

Return() public abstract method

public abstract Return ( ) : void
return void

SetOptions() public method

public SetOptions ( CodeGeneratorOptions options ) : void
options CodeGeneratorOptions
return void

StaticDeclaration() public abstract method

public abstract StaticDeclaration ( Symbol variable ) : void
variable Symbol
return void

StrConst() public abstract method

public abstract StrConst ( string value ) : void
value string
return void

Sub() public abstract method

public abstract Sub ( ) : void
return void

This() public abstract method

public abstract This ( ) : void
return void

True() public abstract method

public abstract True ( ) : void
return void

VariableRead() public abstract method

public abstract VariableRead ( Token varName, bool withArrayIndex ) : void
varName Token
withArrayIndex bool
return void

WhileCondition() public abstract method

public abstract WhileCondition ( ) : void
return void