C# 클래스 Fanx.Emit.FTypeEmit

FTypeEmit translates FType fcode to IL.
파일 보기 프로젝트 열기: xored/f4 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
baseClassName string
className string
interfaces string[]

공개 메소드들

메소드 설명
emit ( ) : void

Emit to IL assembly.

emitAndLoad ( FType ftype ) : System.Type[]
emitPod ( FPod pod, bool load, string path ) : Assembly
init ( string thisClass, string baseClass, string interfaces, int flags ) : void
isEmitted ( string podName ) : bool

Return true if this pod has already been emitted.

보호된 메소드들

메소드 설명
@base ( ) : string

Return the base type for this type.

FTypeEmit ( Emitter emitter, Type parent, FType type ) : System.Collections
emit ( FField f ) : void

Emit a field.

emit ( FMethod m ) : void

Emit a method.

emitInstanceInit ( FMethod m ) : void
emitType ( ) : void

Emit the type information for this type.

mixins ( ) : string[]

비공개 메소드들

메소드 설명
emitAttributes ( FAttrs attrs ) : void

Emit a attribute.

emitMixinRouters ( ) : void
emitMixinRouters ( Type type ) : void
emitStaticInit ( FMethod m ) : void
emitTypeConstFields ( ) : void
fieldFlags ( int fflags ) : PERWAPI.FieldAttr

Map Fantom flags to .NET field flags. Note we emit protected as public and internal/private as package-private so that we don't need to deal with scope issues for accessors like closures and helper classes.

findMixins ( Type t, Hashtable acc ) : void
name ( int index ) : string

Map a simple name index to it's string value

nname ( int index ) : string

Given a Fantom qname index, map to a .NET type name: sys/Bool

preview ( ) : void
unzipToTemp ( FPod pod, string filename ) : void

Unzip the file if it exists into the lib/tmp dir

메소드 상세

@base() 보호된 추상적인 메소드

Return the base type for this type.
protected abstract @base ( ) : string
리턴 string

FTypeEmit() 보호된 메소드

protected FTypeEmit ( Emitter emitter, Type parent, FType type ) : System.Collections
emitter Emitter
parent Fan.Sys.Type
type Fanx.Fcode.FType
리턴 System.Collections

emit() 공개 메소드

Emit to IL assembly.
public emit ( ) : void
리턴 void

emit() 보호된 메소드

Emit a field.
protected emit ( FField f ) : void
f Fanx.Fcode.FField
리턴 void

emit() 보호된 메소드

Emit a method.
protected emit ( FMethod m ) : void
m Fanx.Fcode.FMethod
리턴 void

emitAndLoad() 공개 정적인 메소드

public static emitAndLoad ( FType ftype ) : System.Type[]
ftype Fanx.Fcode.FType
리턴 System.Type[]

emitInstanceInit() 보호된 메소드

protected emitInstanceInit ( FMethod m ) : void
m Fanx.Fcode.FMethod
리턴 void

emitPod() 공개 정적인 메소드

public static emitPod ( FPod pod, bool load, string path ) : Assembly
pod Fanx.Fcode.FPod
load bool
path string
리턴 System.Reflection.Assembly

emitType() 보호된 추상적인 메소드

Emit the type information for this type.
protected abstract emitType ( ) : void
리턴 void

init() 공개 메소드

public init ( string thisClass, string baseClass, string interfaces, int flags ) : void
thisClass string
baseClass string
interfaces string
flags int
리턴 void

isEmitted() 공개 정적인 메소드

Return true if this pod has already been emitted.
public static isEmitted ( string podName ) : bool
podName string
리턴 bool

mixins() 보호된 메소드

protected mixins ( ) : string[]
리턴 string[]

프로퍼티 상세

baseClassName 공개적으로 프로퍼티

public string baseClassName
리턴 string

className 공개적으로 프로퍼티

public string className
리턴 string

interfaces 공개적으로 프로퍼티

public string[] interfaces
리턴 string[]