C# Class Compiler.Emitter

Show file Open project: kthompson/csharpos

Public Methods

Method Description
Emit ( ICodeNode node, int si ) : void
Emit ( IEnumerable collection, int si ) : void
EmitAssignExpression ( Cecil.Decompiler.Ast.AssignExpression node, int si ) : void
EmitBinaryExpression ( TypedBinaryExpression node, int si ) : void
EmitBlockStatement ( Cecil.Decompiler.Ast.BlockStatement node, int si ) : void
EmitExpression ( Expression node, int si ) : void
EmitExpressionStatement ( Cecil.Decompiler.Ast.ExpressionStatement node, int si ) : void
EmitLiteralExpression ( Cecil.Decompiler.Ast.LiteralExpression node, int si ) : void
EmitReturnStatement ( Cecil.Decompiler.Ast.ReturnStatement node, int si ) : void
EmitStatement ( Cecil.Decompiler.Ast.Statement node, int si ) : void
EmitUnaryExpression ( Cecil.Decompiler.Ast.UnaryExpression node, int si ) : void
EmitVariableReferenceExpression ( Cecil.Decompiler.Ast.VariableReferenceExpression node, int si ) : void
Emitter ( ) : System
Emitter ( TextWriter writer ) : System
Section ( SectionType type ) : Section
TerminateMethodBody ( MethodBody body ) : void
VisitMethodDefinition ( Mono.Cecil.MethodDefinition method ) : void

Protected Methods

Method Description
GetMappedLabel ( string ilLabel ) : string
GetUniqueLabel ( ) : string
VisitMethodBody ( MethodBody body ) : void

Private Methods

Method Description
EmitArgumentReferenceExpression ( Cecil.Decompiler.Ast.ArgumentReferenceExpression node, int si ) : void
EmitBranchPattern ( System.Action test, System.Action @else, System.Action then ) : void
EmitBranchPattern ( System.Action test, System.Action @else, System.Action then, string jmpType ) : void
EmitComparePattern ( string left, string right, System.Action then, System.Action @else ) : void
EmitComparePattern ( string left, string right, System.Action then, System.Action @else, string jmpType ) : void
EmitMethodEntry ( int localVariableSize ) : void
GetVariableSize ( Mono.Cecil.Cil.VariableDefinition variable ) : int
LookupVariable ( Expression node ) : int

Method Details

Emit() public method

public Emit ( ICodeNode node, int si ) : void
node ICodeNode
si int
return void

Emit() public method

public Emit ( IEnumerable collection, int si ) : void
collection IEnumerable
si int
return void

EmitAssignExpression() public method

public EmitAssignExpression ( Cecil.Decompiler.Ast.AssignExpression node, int si ) : void
node Cecil.Decompiler.Ast.AssignExpression
si int
return void

EmitBinaryExpression() public method

public EmitBinaryExpression ( TypedBinaryExpression node, int si ) : void
node Compiler.Ast.TypedBinaryExpression
si int
return void

EmitBlockStatement() public method

public EmitBlockStatement ( Cecil.Decompiler.Ast.BlockStatement node, int si ) : void
node Cecil.Decompiler.Ast.BlockStatement
si int
return void

EmitExpression() public method

public EmitExpression ( Expression node, int si ) : void
node Expression
si int
return void

EmitExpressionStatement() public method

public EmitExpressionStatement ( Cecil.Decompiler.Ast.ExpressionStatement node, int si ) : void
node Cecil.Decompiler.Ast.ExpressionStatement
si int
return void

EmitLiteralExpression() public method

public EmitLiteralExpression ( Cecil.Decompiler.Ast.LiteralExpression node, int si ) : void
node Cecil.Decompiler.Ast.LiteralExpression
si int
return void

EmitReturnStatement() public method

public EmitReturnStatement ( Cecil.Decompiler.Ast.ReturnStatement node, int si ) : void
node Cecil.Decompiler.Ast.ReturnStatement
si int
return void

EmitStatement() public method

public EmitStatement ( Cecil.Decompiler.Ast.Statement node, int si ) : void
node Cecil.Decompiler.Ast.Statement
si int
return void

EmitUnaryExpression() public method

public EmitUnaryExpression ( Cecil.Decompiler.Ast.UnaryExpression node, int si ) : void
node Cecil.Decompiler.Ast.UnaryExpression
si int
return void

EmitVariableReferenceExpression() public method

public EmitVariableReferenceExpression ( Cecil.Decompiler.Ast.VariableReferenceExpression node, int si ) : void
node Cecil.Decompiler.Ast.VariableReferenceExpression
si int
return void

Emitter() public method

public Emitter ( ) : System
return System

Emitter() public method

public Emitter ( TextWriter writer ) : System
writer System.IO.TextWriter
return System

GetMappedLabel() protected method

protected GetMappedLabel ( string ilLabel ) : string
ilLabel string
return string

GetUniqueLabel() protected method

protected GetUniqueLabel ( ) : string
return string

Section() public method

public Section ( SectionType type ) : Section
type SectionType
return Section

TerminateMethodBody() public method

public TerminateMethodBody ( MethodBody body ) : void
body Mono.Cecil.Cil.MethodBody
return void

VisitMethodBody() protected method

protected VisitMethodBody ( MethodBody body ) : void
body Mono.Cecil.Cil.MethodBody
return void

VisitMethodDefinition() public method

public VisitMethodDefinition ( Mono.Cecil.MethodDefinition method ) : void
method Mono.Cecil.MethodDefinition
return void