C# 클래스 Monobjc.Tools.Generator.Generators.MethodGenerator

Code generator for method.
상속: BaseGenerator
파일 보기 프로젝트 열기: Monobjc/monobjc-tools

공개 메소드들

메소드 설명
Generate ( BaseEntity entity ) : void
Generate ( ClassEntity classEntity, MethodEntity methodEntity, bool implementation = true, bool extension = false, bool markedAsNew = false ) : void

Generates the specified entity.

GenerateConstructor ( ClassEntity classEntity, MethodEntity methodEntity ) : void

보호된 메소드들

메소드 설명
AppendDocumentation ( MethodEntity methodEntity, bool extensionParameter = false, bool opaqueParameter = false ) : void
AreMethodTypesEqual ( MethodEntity methodEntity1, MethodEntity methodEntity2 ) : bool
CollectInformations ( MethodEntity methodEntity, bool &needStorage, bool &varargs ) : void
GenerateLocalsAllocation ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
GenerateLocalsDeallocation ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
GenerateLocalsMarshalling ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
GenerateLocalsUnmarshalling ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
GenerateMethodBody ( int indent, string target, MethodEntity methodEntity, MethodEntity innerMethodEntity, bool needStorage, bool varargs ) : void
GetKeywords ( MethodEntity methodEntity, bool implementation, bool extension, bool markedAsNew ) : String
GetMessageParameterList ( MethodEntity methodEntity, MethodEntity innerMethodEntity, bool withColonFirst ) : String

비공개 메소드들

메소드 설명
DeriveMethodEntity ( MethodEntity methodEntity, bool is64Bits ) : MethodEntity
GenerateConstructorBody ( int indent, string target, MethodEntity methodEntity, MethodEntity innerMethodEntity, bool needStorage, bool varargs ) : void
GetExtraParameter ( ClassEntity classEntity, MethodEntity methodEntity, bool extension ) : string
GetMethodInvocation ( string target, MethodEntity methodEntity, MethodEntity innerMethodEntity, bool hasReturn, bool varargs ) : string
GetTarget ( ClassEntity classEntity, MethodEntity methodEntity, bool extension ) : String

메소드 상세

AppendDocumentation() 보호된 메소드

protected AppendDocumentation ( MethodEntity methodEntity, bool extensionParameter = false, bool opaqueParameter = false ) : void
methodEntity MethodEntity
extensionParameter bool
opaqueParameter bool
리턴 void

AreMethodTypesEqual() 보호된 정적인 메소드

protected static AreMethodTypesEqual ( MethodEntity methodEntity1, MethodEntity methodEntity2 ) : bool
methodEntity1 MethodEntity
methodEntity2 MethodEntity
리턴 bool

CollectInformations() 보호된 정적인 메소드

protected static CollectInformations ( MethodEntity methodEntity, bool &needStorage, bool &varargs ) : void
methodEntity MethodEntity
needStorage bool
varargs bool
리턴 void

Generate() 공개 메소드

public Generate ( BaseEntity entity ) : void
entity BaseEntity
리턴 void

Generate() 공개 메소드

Generates the specified entity.
public Generate ( ClassEntity classEntity, MethodEntity methodEntity, bool implementation = true, bool extension = false, bool markedAsNew = false ) : void
classEntity Monobjc.Tools.Generator.Model.ClassEntity The class entity.
methodEntity MethodEntity The method entity.
implementation bool if set to true generate the implementation.
extension bool if set to true this method is an extension method.
markedAsNew bool
리턴 void

GenerateConstructor() 공개 메소드

public GenerateConstructor ( ClassEntity classEntity, MethodEntity methodEntity ) : void
classEntity Monobjc.Tools.Generator.Model.ClassEntity
methodEntity MethodEntity
리턴 void

GenerateLocalsAllocation() 보호된 메소드

protected GenerateLocalsAllocation ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
indent int
methodEntity MethodEntity
innerMethodEntity MethodEntity
리턴 void

GenerateLocalsDeallocation() 보호된 메소드

protected GenerateLocalsDeallocation ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
indent int
methodEntity MethodEntity
innerMethodEntity MethodEntity
리턴 void

GenerateLocalsMarshalling() 보호된 메소드

protected GenerateLocalsMarshalling ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
indent int
methodEntity MethodEntity
innerMethodEntity MethodEntity
리턴 void

GenerateLocalsUnmarshalling() 보호된 메소드

protected GenerateLocalsUnmarshalling ( int indent, MethodEntity methodEntity, MethodEntity innerMethodEntity ) : void
indent int
methodEntity MethodEntity
innerMethodEntity MethodEntity
리턴 void

GenerateMethodBody() 보호된 메소드

protected GenerateMethodBody ( int indent, string target, MethodEntity methodEntity, MethodEntity innerMethodEntity, bool needStorage, bool varargs ) : void
indent int
target string
methodEntity MethodEntity
innerMethodEntity MethodEntity
needStorage bool
varargs bool
리턴 void

GetKeywords() 보호된 정적인 메소드

protected static GetKeywords ( MethodEntity methodEntity, bool implementation, bool extension, bool markedAsNew ) : String
methodEntity MethodEntity
implementation bool
extension bool
markedAsNew bool
리턴 String

GetMessageParameterList() 보호된 정적인 메소드

protected static GetMessageParameterList ( MethodEntity methodEntity, MethodEntity innerMethodEntity, bool withColonFirst ) : String
methodEntity MethodEntity
innerMethodEntity MethodEntity
withColonFirst bool
리턴 String