C# Class Foxoft.Ci.GenC

Inheritance: SourceGenerator
ファイルを表示 Open project: epi/cito Class Usage Examples

Public Methods

Method Description
Visit ( CiAssign assign ) : void
Visit ( CiConst stmt ) : void
Visit ( CiDelete stmt ) : void
Visit ( CiExpr expr ) : void
Visit ( CiReturn stmt ) : void
Visit ( CiThrow stmt ) : void
Visit ( CiVar stmt ) : void
Write ( CiProgram prog ) : void

Protected Methods

Method Description
GetPriority ( CiExpr expr ) : CiPriority
IsInlineVar ( CiVar def ) : bool
StartBlock ( ICiStatement statements ) : void
StartCase ( ICiStatement stmt ) : void
ToString ( CiType type ) : string
Write ( CiBinaryExpr expr ) : void
Write ( CiCoercion expr ) : void
Write ( CiFieldAccess expr ) : void
Write ( CiMethodCall expr ) : void
Write ( CiPropertyAccess expr ) : void
Write ( CiType type, string name ) : void
Write ( CiVarAccess expr ) : void
Write ( ICiStatement statements ) : void
WriteBoolType ( ) : void
WriteClearArray ( CiExpr expr ) : void
WriteConst ( object value ) : void
WriteConstruct ( CiClass klass, CiVar stmt ) : void
WriteIfOnTrue ( CiIf stmt ) : void
WriteName ( CiConst konst ) : void
WriteNew ( CiType type ) : void

Private Methods

Method Description
AddsVirtualMethod ( CiClass klass, string methodName ) : bool
AddsVirtualMethods ( CiClass klass ) : bool
CheckAndThrow ( CiMaybeAssign expr, object errorReturnValue ) : void
EnumVirtualMethods ( CiClass klass ) : IEnumerable
ForEachStorageField ( CiClass klass, CiClass>.Action action ) : void
GetVtblPtrClass ( CiClass klass ) : CiClass
GetVtblStructClass ( CiClass klass ) : CiClass
HasCStruct ( CiClass klass ) : bool
HasVirtualMethods ( CiClass klass ) : bool
HasVtblValue ( CiClass klass ) : bool
InsertPtr ( StringBuilder sb, PtrWritability wr ) : void
SizeOf ( CiClass klass ) : int
SizeOf ( CiType type ) : int
StartFieldAccess ( CiExpr expr ) : void
Throws ( CiExpr expr ) : bool
ToString ( CiType type, string s ) : string
TryWriteCallAndReturn ( ICiStatement statements, int lastCallIndex, CiExpr returnValue ) : bool
Write ( CiClass klass, CiConst konst ) : void
Write ( CiDelegate del ) : void
Write ( CiEnum enu ) : void
Write ( CiField field ) : void
Write ( CiMethod method ) : void
WriteChild ( CiMaybeAssign expr ) : void
WriteChildWithSuggestedParentheses ( CiBinaryExpr parent, CiExpr child, CiPriority suggestedParentPriority, bool assoc ) : void
WriteCode ( CiClass klass ) : void
WriteConstructorNewDelete ( CiClass klass ) : void
WriteConstructorSignature ( CiClass klass ) : void
WriteDeleteSignature ( CiClass klass ) : void
WriteGuard ( string directive ) : void
WriteNew ( CiClass klass ) : void
WriteNewSignature ( CiClass klass ) : void
WritePtr ( CiMethod method, string name ) : void
WriteReturnTrue ( ) : void
WriteSignature ( CiMethod method ) : void
WriteSignatures ( CiClass klass, bool pub ) : void
WriteStruct ( CiClass klass ) : void
WriteTypedef ( CiClass klass ) : void
WriteTypedefs ( CiProgram prog, CiVisibility visibility ) : void
WriteVtblStruct ( CiClass klass ) : void
WriteVtblValue ( CiClass klass ) : void

Method Details

GetPriority() protected method

protected GetPriority ( CiExpr expr ) : CiPriority
expr CiExpr
return CiPriority

IsInlineVar() protected static method

protected static IsInlineVar ( CiVar def ) : bool
def CiVar
return bool

StartBlock() protected method

protected StartBlock ( ICiStatement statements ) : void
statements ICiStatement
return void

StartCase() protected method

protected StartCase ( ICiStatement stmt ) : void
stmt ICiStatement
return void

ToString() protected method

protected ToString ( CiType type ) : string
type CiType
return string

Visit() public method

public Visit ( CiAssign assign ) : void
assign CiAssign
return void

Visit() public method

public Visit ( CiConst stmt ) : void
stmt CiConst
return void

Visit() public method

public Visit ( CiDelete stmt ) : void
stmt CiDelete
return void

Visit() public method

public Visit ( CiExpr expr ) : void
expr CiExpr
return void

Visit() public method

public Visit ( CiReturn stmt ) : void
stmt CiReturn
return void

Visit() public method

public Visit ( CiThrow stmt ) : void
stmt CiThrow
return void

Visit() public method

public Visit ( CiVar stmt ) : void
stmt CiVar
return void

Write() protected method

protected Write ( CiBinaryExpr expr ) : void
expr CiBinaryExpr
return void

Write() protected method

protected Write ( CiCoercion expr ) : void
expr CiCoercion
return void

Write() protected method

protected Write ( CiFieldAccess expr ) : void
expr CiFieldAccess
return void

Write() protected method

protected Write ( CiMethodCall expr ) : void
expr CiMethodCall
return void

Write() public method

public Write ( CiProgram prog ) : void
prog CiProgram
return void

Write() protected method

protected Write ( CiPropertyAccess expr ) : void
expr CiPropertyAccess
return void

Write() protected method

protected Write ( CiType type, string name ) : void
type CiType
name string
return void

Write() protected method

protected Write ( CiVarAccess expr ) : void
expr CiVarAccess
return void

Write() protected method

protected Write ( ICiStatement statements ) : void
statements ICiStatement
return void

WriteBoolType() protected method

protected WriteBoolType ( ) : void
return void

WriteClearArray() protected method

protected WriteClearArray ( CiExpr expr ) : void
expr CiExpr
return void

WriteConst() protected method

protected WriteConst ( object value ) : void
value object
return void

WriteConstruct() protected method

protected WriteConstruct ( CiClass klass, CiVar stmt ) : void
klass CiClass
stmt CiVar
return void

WriteIfOnTrue() protected method

protected WriteIfOnTrue ( CiIf stmt ) : void
stmt CiIf
return void

WriteName() protected method

protected WriteName ( CiConst konst ) : void
konst CiConst
return void

WriteNew() protected method

protected WriteNew ( CiType type ) : void
type CiType
return void