C# 클래스 PERWAPI.ClassDef

The descriptor for a class defined in the IL (.class) in the current assembly/module
상속: ClassDesc
파일 보기 프로젝트 열기: xored/f4 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
scope PEFile

Private Properties

프로퍼티 타입 설명
AddEvent void
AddGenericsToTable void
AddImplementedInterface void
AddMethodImpl void
AddProperty void
AddSecurity void
AddToFeatureList void
BuildCILInfo void
BuildTables void
ChangeRefsToDefs void
ClassDef System
ClassDef System
ClassName string
FindFeature Feature
FindGenericParam int
GetClassRefs void
GetCodedIx uint
GetParentClassIx uint
MakeNestedClass NestedClassDef
NameString string
Read void
ReadSecurity void
Resolve void
SetScope void
Size uint
TypeDefOrRefToken uint
Write void
Write void
WriteFlags void
WriteName void
WriteType void
isDef bool
isNested bool
isPublic bool
isPublic bool

공개 메소드들

메소드 설명
AddAttribute ( TypeAttr ta ) : void

Add an attribute to the attributes of this class

AddEvent ( string name, Type eType ) : Event

Add an event to this class

AddField ( FieldAttr fAtts, string name, Type fType ) : FieldDef

Add a field to this class

AddField ( string name, Type fType ) : FieldDef

Add a field to this class

AddField ( FieldDef f ) : void

Add a field to this class

AddGenericParam ( string name ) : GenericParam
AddImplementedInterface ( Class iFace ) : void

Add an interface that is implemented by this class

AddLayoutInfo ( int packSize, int classSize ) : void

Add layout information for this class. This class must have the sequential or explicit attribute.

AddMethod ( MethAttr mAtts, ImplAttr iAtts, string name, GenericParam genPars, Type retType, Param pars ) : MethodDef

Add a method to this class

AddMethod ( MethAttr mAtts, ImplAttr iAtts, string name, Type retType, Param pars ) : MethodDef

Add a method to this class

AddMethod ( string name, GenericParam genPars, Type retType, Param pars ) : MethodDef

Add a method to this class

AddMethod ( string name, Type retType, Param pars ) : MethodDef

Add a method to this class

AddMethod ( MethodDef meth ) : void

Add a method to this class

AddMethodOverride ( Method decl, Method body ) : void

Use a method as the implementation for another method (.override)

AddMethodOverride ( MethodImpl mImpl ) : void
AddNestedClass ( TypeAttr attrSet, string name ) : NestedClassDef

Add a nested class to this class

AddNestedClass ( TypeAttr attrSet, string name, Class sType ) : NestedClassDef

Add a nested class to this class

AddProperty ( string name, Type retType, Type pars ) : Property

Add a property to this class

AddSecurity ( SecurityAction act, byte permissionSet ) : void

Add security to this class

DeleteSecurity ( ) : void

Remove the security associated with this class

GetAttributes ( ) : TypeAttr

Get the attributes for this class

GetClassSize ( ) : int

Get the size of this class (only valid for ExplicitLayout or SequentialLayout

GetEvent ( string name ) : Event

Get the event "name" of this class

GetEvents ( ) : PERWAPI.Event[]

Get all the events of this class

GetField ( string name ) : FieldDef

Get the descriptor for the field of this class named "name"

GetFields ( ) : PERWAPI.FieldDef[]

Get the fields for this class

GetGenericParam ( string name ) : GenericParam
GetGenericParamCount ( ) : int
GetInterfaces ( ) : PERWAPI.Class[]

Get the interfaces implemented by this class

GetMethod ( string name ) : MethodDef

Get the descriptor for the method "name" of this class

GetMethod ( string name, Type parTypes ) : MethodDef

Get the descriptor for the method called "name" with the signature "parTypes"

GetMethodOverrides ( ) : PERWAPI.MethodImpl[]
GetMethods ( ) : PERWAPI.MethodDef[]

Get all the methods for this class

GetMethods ( string name ) : PERWAPI.MethodDef[]

Get all the methods of this class called "name"

GetNestedClass ( string name ) : NestedClassDef

Get the nested class called "name"

GetPackSize ( ) : int

Get the pack size for this class (only valid for ExplicitLayout or SequentialLayout

GetParent ( ) : MetaDataElement
GetProperties ( ) : Property[]

Get all the properties for this class

GetProperty ( string name ) : Property

Get the property "name" for this class

GetScope ( ) : PEFile

Fetch the PEFile which contains this class

GetSecurity ( ) : PERWAPI.DeclSecurity[]

Get the security descriptor associated with this class

Instantiate ( Type genTypes ) : ClassSpec
MakeRefOf ( ) : ClassRef

Make a ClassRef for this ClassDef

MakeSpecial ( ) : void
MergeClasses ( ClassDef classes ) : void
RemoveEvent ( string name ) : void

Remove the event "name" from this class

RemoveGenericParam ( int ix ) : void
RemoveGenericParam ( string name ) : void
RemoveMethodOverride ( MethodImpl mImpl ) : void
RemoveProperty ( string name ) : void

Remove the property "name" from this class

SetAttribute ( TypeAttr ta ) : void

Set the attributes of this class

비공개 메소드들

메소드 설명
AddEvent ( Event ev ) : void
AddGenericsToTable ( MetaDataOut md ) : void
AddImplementedInterface ( InterfaceImpl iImpl ) : void
AddMethodImpl ( MethodImpl impl ) : void
AddProperty ( Property prop ) : void
AddSecurity ( DeclSecurity sec ) : void

Add security to this class

AddToFeatureList ( ArrayList list, MDTable tabIx ) : void
BuildCILInfo ( CILWriter output ) : void
BuildTables ( MetaDataOut md ) : void
ChangeRefsToDefs ( ClassDef newType, ClassDef oldTypes ) : void
ClassDef ( PEFile scope, TypeAttr attrSet, string nsName, string name ) : System
ClassDef ( PEReader buff, uint row, bool isMSCorLib ) : System
ClassName ( ) : string
FindFeature ( string name, ArrayList featureList ) : Feature
FindGenericParam ( string name ) : int
GetClassRefs ( PEReader buff, TableRow typeRefs, ReferenceScope paren, uint parIxs ) : void
GetCodedIx ( CIx code ) : uint
GetParentClassIx ( uint enclClasses, uint nestClasses, uint classIx ) : uint
MakeNestedClass ( ClassDef parent ) : NestedClassDef
NameString ( ) : string
Read ( PEReader buff, TableRow typeDefs, bool isMSCorLib ) : void
ReadSecurity ( ) : void
Resolve ( PEReader buff ) : void
SetScope ( PEFile mod ) : void
Size ( MetaData md ) : uint
TypeDefOrRefToken ( ) : uint
Write ( CILWriter output ) : void
Write ( PEWriter output ) : void
WriteFlags ( CILWriter output ) : void
WriteName ( CILWriter output ) : void
WriteType ( CILWriter output ) : void
isDef ( ) : bool
isNested ( uint flags ) : bool
isPublic ( ) : bool
isPublic ( uint flags ) : bool

메소드 상세

AddAttribute() 공개 메소드

Add an attribute to the attributes of this class
public AddAttribute ( TypeAttr ta ) : void
ta TypeAttr the attribute to be added
리턴 void

AddEvent() 공개 메소드

Add an event to this class
public AddEvent ( string name, Type eType ) : Event
name string event name
eType Type event type
리턴 Event

AddField() 공개 메소드

Add a field to this class
public AddField ( FieldAttr fAtts, string name, Type fType ) : FieldDef
fAtts FieldAttr attributes for this field
name string field name
fType Type field type
리턴 FieldDef

AddField() 공개 메소드

Add a field to this class
public AddField ( string name, Type fType ) : FieldDef
name string field name
fType Type field type
리턴 FieldDef

AddField() 공개 메소드

Add a field to this class
public AddField ( FieldDef f ) : void
f FieldDef Descriptor for the field to be added
리턴 void

AddGenericParam() 공개 메소드

public AddGenericParam ( string name ) : GenericParam
name string
리턴 GenericParam

AddImplementedInterface() 공개 메소드

Add an interface that is implemented by this class
public AddImplementedInterface ( Class iFace ) : void
iFace Class the interface that is implemented
리턴 void

AddLayoutInfo() 공개 메소드

Add layout information for this class. This class must have the sequential or explicit attribute.
public AddLayoutInfo ( int packSize, int classSize ) : void
packSize int packing size (.pack)
classSize int class size (.size)
리턴 void

AddMethod() 공개 메소드

Add a method to this class
public AddMethod ( MethAttr mAtts, ImplAttr iAtts, string name, GenericParam genPars, Type retType, Param pars ) : MethodDef
mAtts MethAttr attributes for this method
iAtts ImplAttr implementation attributes for this method
name string method name
genPars GenericParam generic parameters
retType Type return type
pars Param parameters
리턴 MethodDef

AddMethod() 공개 메소드

Add a method to this class
public AddMethod ( MethAttr mAtts, ImplAttr iAtts, string name, Type retType, Param pars ) : MethodDef
mAtts MethAttr attributes for this method
iAtts ImplAttr implementation attributes for this method
name string method name
retType Type return type
pars Param parameters
리턴 MethodDef

AddMethod() 공개 메소드

Add a method to this class
public AddMethod ( string name, GenericParam genPars, Type retType, Param pars ) : MethodDef
name string method name
genPars GenericParam generic parameters
retType Type return type
pars Param parameters
리턴 MethodDef

AddMethod() 공개 메소드

Add a method to this class
public AddMethod ( string name, Type retType, Param pars ) : MethodDef
name string method name
retType Type return type
pars Param parameters
리턴 MethodDef

AddMethod() 공개 메소드

Add a method to this class
public AddMethod ( MethodDef meth ) : void
meth MethodDef Descriptor for the method to be added
리턴 void

AddMethodOverride() 공개 메소드

Use a method as the implementation for another method (.override)
public AddMethodOverride ( Method decl, Method body ) : void
decl Method the method to be overridden
body Method the implementation to be used
리턴 void

AddMethodOverride() 공개 메소드

public AddMethodOverride ( MethodImpl mImpl ) : void
mImpl MethodImpl
리턴 void

AddNestedClass() 공개 메소드

Add a nested class to this class
public AddNestedClass ( TypeAttr attrSet, string name ) : NestedClassDef
attrSet TypeAttr attributes for this nested class
name string nested class name
리턴 NestedClassDef

AddNestedClass() 공개 메소드

Add a nested class to this class
public AddNestedClass ( TypeAttr attrSet, string name, Class sType ) : NestedClassDef
attrSet TypeAttr attributes for this nested class
name string nested class name
sType Class super type of this nested class
리턴 NestedClassDef

AddProperty() 공개 메소드

Add a property to this class
public AddProperty ( string name, Type retType, Type pars ) : Property
name string property name
retType Type return type
pars Type parameters
리턴 Property

AddSecurity() 공개 메소드

Add security to this class
public AddSecurity ( SecurityAction act, byte permissionSet ) : void
act SecurityAction The security action
permissionSet byte Permission set
리턴 void

DeleteSecurity() 공개 메소드

Remove the security associated with this class
public DeleteSecurity ( ) : void
리턴 void

GetAttributes() 공개 메소드

Get the attributes for this class
public GetAttributes ( ) : TypeAttr
리턴 TypeAttr

GetClassSize() 공개 메소드

Get the size of this class (only valid for ExplicitLayout or SequentialLayout
public GetClassSize ( ) : int
리턴 int

GetEvent() 공개 메소드

Get the event "name" of this class
public GetEvent ( string name ) : Event
name string The event name
리턴 Event

GetEvents() 공개 메소드

Get all the events of this class
public GetEvents ( ) : PERWAPI.Event[]
리턴 PERWAPI.Event[]

GetField() 공개 메소드

Get the descriptor for the field of this class named "name"
public GetField ( string name ) : FieldDef
name string The field name
리턴 FieldDef

GetFields() 공개 메소드

Get the fields for this class
public GetFields ( ) : PERWAPI.FieldDef[]
리턴 PERWAPI.FieldDef[]

GetGenericParam() 공개 메소드

public GetGenericParam ( string name ) : GenericParam
name string
리턴 GenericParam

GetGenericParamCount() 공개 메소드

public GetGenericParamCount ( ) : int
리턴 int

GetInterfaces() 공개 메소드

Get the interfaces implemented by this class
public GetInterfaces ( ) : PERWAPI.Class[]
리턴 PERWAPI.Class[]

GetMethod() 공개 메소드

Get the descriptor for the method "name" of this class
public GetMethod ( string name ) : MethodDef
name string The name of the method to be retrieved
리턴 MethodDef

GetMethod() 공개 메소드

Get the descriptor for the method called "name" with the signature "parTypes"
public GetMethod ( string name, Type parTypes ) : MethodDef
name string The name of the method
parTypes Type The signature of the method
리턴 MethodDef

GetMethodOverrides() 공개 메소드

public GetMethodOverrides ( ) : PERWAPI.MethodImpl[]
리턴 PERWAPI.MethodImpl[]

GetMethods() 공개 메소드

Get all the methods for this class
public GetMethods ( ) : PERWAPI.MethodDef[]
리턴 PERWAPI.MethodDef[]

GetMethods() 공개 메소드

Get all the methods of this class called "name"
public GetMethods ( string name ) : PERWAPI.MethodDef[]
name string The method name
리턴 PERWAPI.MethodDef[]

GetNestedClass() 공개 메소드

Get the nested class called "name"
public GetNestedClass ( string name ) : NestedClassDef
name string The name of the nested class
리턴 NestedClassDef

GetPackSize() 공개 메소드

Get the pack size for this class (only valid for ExplicitLayout or SequentialLayout
public GetPackSize ( ) : int
리턴 int

GetParent() 공개 메소드

public GetParent ( ) : MetaDataElement
리턴 MetaDataElement

GetProperties() 공개 메소드

Get all the properties for this class
public GetProperties ( ) : Property[]
리턴 Property[]

GetProperty() 공개 메소드

Get the property "name" for this class
public GetProperty ( string name ) : Property
name string Descriptor for the property "name"
리턴 Property

GetScope() 공개 메소드

Fetch the PEFile which contains this class
public GetScope ( ) : PEFile
리턴 PEFile

GetSecurity() 공개 메소드

Get the security descriptor associated with this class
public GetSecurity ( ) : PERWAPI.DeclSecurity[]
리턴 PERWAPI.DeclSecurity[]

Instantiate() 공개 메소드

public Instantiate ( Type genTypes ) : ClassSpec
genTypes Type
리턴 ClassSpec

MakeRefOf() 공개 메소드

Make a ClassRef for this ClassDef
public MakeRefOf ( ) : ClassRef
리턴 ClassRef

MakeSpecial() 공개 메소드

public MakeSpecial ( ) : void
리턴 void

MergeClasses() 공개 메소드

public MergeClasses ( ClassDef classes ) : void
classes ClassDef
리턴 void

RemoveEvent() 공개 메소드

Remove the event "name" from this class
public RemoveEvent ( string name ) : void
name string The name of the event to be removed
리턴 void

RemoveGenericParam() 공개 메소드

public RemoveGenericParam ( int ix ) : void
ix int
리턴 void

RemoveGenericParam() 공개 메소드

public RemoveGenericParam ( string name ) : void
name string
리턴 void

RemoveMethodOverride() 공개 메소드

public RemoveMethodOverride ( MethodImpl mImpl ) : void
mImpl MethodImpl
리턴 void

RemoveProperty() 공개 메소드

Remove the property "name" from this class
public RemoveProperty ( string name ) : void
name string Name of the property to be removed
리턴 void

SetAttribute() 공개 메소드

Set the attributes of this class
public SetAttribute ( TypeAttr ta ) : void
ta TypeAttr class attributes
리턴 void

프로퍼티 상세

scope 보호되어 있는 프로퍼티

protected PEFile,PERWAPI scope
리턴 PEFile