C# Класс Mono.CSharp.TypeContainer

Наследование: MemberCore
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
DynamicSitesCounter int
Kind MemberKind

Защищенные свойства (Protected)

Свойство Тип Описание
base_type TypeSpec
base_type_expr TypeExpr
compiler_generated List
constants List
default_constructor Constructor
default_static_constructor Constructor
events List
fields List
iface_exprs TypeExpr[]
initialized_fields List
initialized_static_fields List
instance_constructors List
requires_delayed_unmanagedtype_check bool
spec TypeSpec
type_bases List
types List

Private Properties

Свойство Тип Описание
AddMemberToList void
CheckRecursiveDefinition System.TypeSpec
CreateTypeBuilder bool
DefineBaseTypes bool
GenerateDocComment void
GetNormalPartialBases TypeExpr[]
ITypeDefinition bool
LookupNestedTypeInHierarchy TypeSpec

Открытые методы

Метод Описание
AddBasesForPart ( DeclSpace part, List bases ) : void
AddCompilerGeneratedClass ( CompilerGeneratedClass c ) : void
AddConstant ( Mono.CSharp.Const constant ) : void
AddConstructor ( Constructor c ) : void
AddDelegate ( Delegate d ) : System.TypeSpec
AddEvent ( Event e ) : void
AddField ( FieldBase field ) : bool
AddIndexer ( Indexer i ) : void

Indexer has special handling in constrast to other AddXXX because the name can be driven by IndexerNameAttribute

AddMember ( MemberCore symbol ) : bool
AddMember ( MemberCore symbol, string name ) : bool
AddMethod ( MethodOrOperator method ) : void
AddOperator ( Operator op ) : void
AddPartial ( TypeContainer next_part ) : TypeContainer
AddProperty ( Property prop ) : void
AddTypeContainer ( TypeContainer tc ) : TypeContainer
ApplyAttributeBuilder ( Attribute a, MethodSpec ctor, byte cdata, Mono.CSharp.PredefinedAttributes pa ) : void
CheckMemberUsage ( List al, string member_type ) : void
CheckPairedOperators ( ) : void
CloseType ( ) : void
CreateHoistedBaseCallProxy ( ResolveContext rc, MethodSpec method ) : MethodSpec
CreateType ( ) : bool
Define ( ) : bool

Populates our TypeBuilder with fields and methods

DefineConstants ( ) : void
DefineType ( ) : void
DoResolveFieldInitializers ( BlockContext ec ) : void
Emit ( ) : void
EmitConstructors ( ) : void
EmitIndexerName ( ) : void
EmitType ( ) : void

Emits the code, this step is performed after all the types, enumerations, constructors

GetAttributeCoClass ( ) : TypeSpec
GetAttributeDefaultMember ( ) : string
GetAttributeUsage ( PredefinedAttribute pa ) : AttributeUsageAttribute
IsBaseTypeDefinition ( TypeSpec baseType ) : bool
LoadMembers ( TypeSpec declaringType, bool onlyTypes, MemberCache &cache ) : void
LookupNamespaceOrType ( string name, int arity, Location loc, bool ignore_cs0104 ) : FullNamedExpression
Mark_HasEquals ( ) : void
Mark_HasGetHashCode ( ) : void
MethodModifiersValid ( MemberCore mc ) : bool
RegisterFieldForInitialization ( MemberCore field, FieldInitializer expression ) : void
RemoveTypeContainer ( TypeContainer next_part ) : void
ResolveFieldInitializers ( BlockContext ec ) : void
ResolveTypeParameters ( ) : bool
SetParameterInfo ( List constraints_list ) : void
SetPredefinedSpec ( BuildinTypeSpec spec ) : void
TypeContainer ( NamespaceEntry ns, DeclSpace parent, MemberName name, Attributes attrs, MemberKind kind ) : System
UpdateTypeParameterConstraints ( TypeContainer part ) : void
VerifyImplements ( InterfaceMemberBase mb ) : bool

Performs checks for an explicit interface implementation. First it checks whether the `interface_type' is a base inteface implementation. Then it checks whether `name' exists in the interface type.

VerifyMembers ( ) : void

Защищенные методы

Метод Описание
AddMemberType ( TypeContainer ds ) : bool
AddPartial ( TypeContainer next_part, string name ) : TypeContainer
CheckEqualsAndGetHashCode ( ) : void
ComputeIndexerName ( ) : void
DefineContainerMembers ( System mcal ) : void
DefineNestedTypes ( ) : bool
DoDefineMembers ( ) : bool
DoResolveTypeParameters ( ) : bool
RemoveMemberType ( DeclSpace ds ) : void
ResolveBaseTypes ( TypeExpr &base_class ) : TypeExpr[]

This function computes the Base class and also the list of interfaces that the class or struct @c implements. The return value is an array (might be null) of interfaces implemented (as Types). The @base_class argument is set to the base object or null if this is `System.Object'.

VerifyClsCompliance ( ) : bool

Приватные методы

Метод Описание
AddMemberToList ( MemberCore mc, List alist, bool isexplicit ) : void
CheckRecursiveDefinition ( TypeContainer tc ) : System.TypeSpec
CreateTypeBuilder ( ) : bool
DefineBaseTypes ( ) : bool
GenerateDocComment ( DeclSpace ds ) : void
GetNormalPartialBases ( ) : TypeExpr[]
ITypeDefinition ( IAssemblyDefinition assembly ) : bool
LookupNestedTypeInHierarchy ( string name, int arity ) : TypeSpec

Описание методов

AddBasesForPart() публичный Метод

public AddBasesForPart ( DeclSpace part, List bases ) : void
part DeclSpace
bases List
Результат void

AddCompilerGeneratedClass() публичный Метод

public AddCompilerGeneratedClass ( CompilerGeneratedClass c ) : void
c CompilerGeneratedClass
Результат void

AddConstant() публичный Метод

public AddConstant ( Mono.CSharp.Const constant ) : void
constant Mono.CSharp.Const
Результат void

AddConstructor() публичный Метод

public AddConstructor ( Constructor c ) : void
c Constructor
Результат void

AddDelegate() публичный Метод

public AddDelegate ( Delegate d ) : System.TypeSpec
d Delegate
Результат System.TypeSpec

AddEvent() публичный Метод

public AddEvent ( Event e ) : void
e Event
Результат void

AddField() публичный Метод

public AddField ( FieldBase field ) : bool
field FieldBase
Результат bool

AddIndexer() публичный Метод

Indexer has special handling in constrast to other AddXXX because the name can be driven by IndexerNameAttribute
public AddIndexer ( Indexer i ) : void
i Indexer
Результат void

AddMember() публичный Метод

public AddMember ( MemberCore symbol ) : bool
symbol MemberCore
Результат bool

AddMember() публичный Метод

public AddMember ( MemberCore symbol, string name ) : bool
symbol MemberCore
name string
Результат bool

AddMemberType() защищенный Метод

protected AddMemberType ( TypeContainer ds ) : bool
ds TypeContainer
Результат bool

AddMethod() публичный Метод

public AddMethod ( MethodOrOperator method ) : void
method MethodOrOperator
Результат void

AddOperator() публичный Метод

public AddOperator ( Operator op ) : void
op Operator
Результат void

AddPartial() публичный Метод

public AddPartial ( TypeContainer next_part ) : TypeContainer
next_part TypeContainer
Результат TypeContainer

AddPartial() защищенный Метод

protected AddPartial ( TypeContainer next_part, string name ) : TypeContainer
next_part TypeContainer
name string
Результат TypeContainer

AddProperty() публичный Метод

public AddProperty ( Property prop ) : void
prop Property
Результат void

AddTypeContainer() публичный Метод

public AddTypeContainer ( TypeContainer tc ) : TypeContainer
tc TypeContainer
Результат TypeContainer

ApplyAttributeBuilder() публичный Метод

public ApplyAttributeBuilder ( Attribute a, MethodSpec ctor, byte cdata, Mono.CSharp.PredefinedAttributes pa ) : void
a Attribute
ctor MethodSpec
cdata byte
pa Mono.CSharp.PredefinedAttributes
Результат void

CheckEqualsAndGetHashCode() защищенный Метод

protected CheckEqualsAndGetHashCode ( ) : void
Результат void

CheckMemberUsage() публичный Метод

public CheckMemberUsage ( List al, string member_type ) : void
al List
member_type string
Результат void

CheckPairedOperators() публичный Метод

public CheckPairedOperators ( ) : void
Результат void

CloseType() публичный Метод

public CloseType ( ) : void
Результат void

ComputeIndexerName() защищенный Метод

protected ComputeIndexerName ( ) : void
Результат void

CreateHoistedBaseCallProxy() публичный Метод

public CreateHoistedBaseCallProxy ( ResolveContext rc, MethodSpec method ) : MethodSpec
rc ResolveContext
method MethodSpec
Результат MethodSpec

CreateType() публичный Метод

public CreateType ( ) : bool
Результат bool

Define() публичный закрытый Метод

Populates our TypeBuilder with fields and methods
public final Define ( ) : bool
Результат bool

DefineConstants() публичный Метод

public DefineConstants ( ) : void
Результат void

DefineContainerMembers() защищенный Метод

protected DefineContainerMembers ( System mcal ) : void
mcal System
Результат void

DefineNestedTypes() защищенный Метод

protected DefineNestedTypes ( ) : bool
Результат bool

DefineType() публичный Метод

public DefineType ( ) : void
Результат void

DoDefineMembers() защищенный Метод

protected DoDefineMembers ( ) : bool
Результат bool

DoResolveFieldInitializers() публичный Метод

public DoResolveFieldInitializers ( BlockContext ec ) : void
ec BlockContext
Результат void

DoResolveTypeParameters() защищенный Метод

protected DoResolveTypeParameters ( ) : bool
Результат bool

Emit() публичный Метод

public Emit ( ) : void
Результат void

EmitConstructors() публичный Метод

public EmitConstructors ( ) : void
Результат void

EmitIndexerName() публичный Метод

public EmitIndexerName ( ) : void
Результат void

EmitType() публичный Метод

Emits the code, this step is performed after all the types, enumerations, constructors
public EmitType ( ) : void
Результат void

GetAttributeCoClass() публичный Метод

public GetAttributeCoClass ( ) : TypeSpec
Результат TypeSpec

GetAttributeDefaultMember() публичный Метод

public GetAttributeDefaultMember ( ) : string
Результат string

GetAttributeUsage() публичный Метод

public GetAttributeUsage ( PredefinedAttribute pa ) : AttributeUsageAttribute
pa PredefinedAttribute
Результат AttributeUsageAttribute

IsBaseTypeDefinition() публичный Метод

public IsBaseTypeDefinition ( TypeSpec baseType ) : bool
baseType TypeSpec
Результат bool

LoadMembers() публичный Метод

public LoadMembers ( TypeSpec declaringType, bool onlyTypes, MemberCache &cache ) : void
declaringType TypeSpec
onlyTypes bool
cache MemberCache
Результат void

LookupNamespaceOrType() публичный Метод

public LookupNamespaceOrType ( string name, int arity, Location loc, bool ignore_cs0104 ) : FullNamedExpression
name string
arity int
loc Location
ignore_cs0104 bool
Результат FullNamedExpression

Mark_HasEquals() публичный Метод

public Mark_HasEquals ( ) : void
Результат void

Mark_HasGetHashCode() публичный Метод

public Mark_HasGetHashCode ( ) : void
Результат void

MethodModifiersValid() публичный Метод

public MethodModifiersValid ( MemberCore mc ) : bool
mc MemberCore
Результат bool

RegisterFieldForInitialization() публичный Метод

public RegisterFieldForInitialization ( MemberCore field, FieldInitializer expression ) : void
field MemberCore
expression FieldInitializer
Результат void

RemoveMemberType() защищенный Метод

protected RemoveMemberType ( DeclSpace ds ) : void
ds DeclSpace
Результат void

RemoveTypeContainer() публичный Метод

public RemoveTypeContainer ( TypeContainer next_part ) : void
next_part TypeContainer
Результат void

ResolveBaseTypes() защищенный Метод

This function computes the Base class and also the list of interfaces that the class or struct @c implements. The return value is an array (might be null) of interfaces implemented (as Types). The @base_class argument is set to the base object or null if this is `System.Object'.
protected ResolveBaseTypes ( TypeExpr &base_class ) : TypeExpr[]
base_class TypeExpr
Результат TypeExpr[]

ResolveFieldInitializers() публичный Метод

public ResolveFieldInitializers ( BlockContext ec ) : void
ec BlockContext
Результат void

ResolveTypeParameters() публичный Метод

public ResolveTypeParameters ( ) : bool
Результат bool

SetParameterInfo() публичный Метод

public SetParameterInfo ( List constraints_list ) : void
constraints_list List
Результат void

SetPredefinedSpec() публичный Метод

public SetPredefinedSpec ( BuildinTypeSpec spec ) : void
spec BuildinTypeSpec
Результат void

TypeContainer() публичный Метод

public TypeContainer ( NamespaceEntry ns, DeclSpace parent, MemberName name, Attributes attrs, MemberKind kind ) : System
ns NamespaceEntry
parent DeclSpace
name MemberName
attrs Attributes
kind MemberKind
Результат System

UpdateTypeParameterConstraints() публичный Метод

public UpdateTypeParameterConstraints ( TypeContainer part ) : void
part TypeContainer
Результат void

VerifyClsCompliance() защищенный Метод

protected VerifyClsCompliance ( ) : bool
Результат bool

VerifyImplements() публичный Метод

Performs checks for an explicit interface implementation. First it checks whether the `interface_type' is a base inteface implementation. Then it checks whether `name' exists in the interface type.
public VerifyImplements ( InterfaceMemberBase mb ) : bool
mb InterfaceMemberBase
Результат bool

VerifyMembers() публичный Метод

public VerifyMembers ( ) : void
Результат void

Описание свойств

DynamicSitesCounter публичное свойство

public int DynamicSitesCounter
Результат int

Kind публичное свойство

public MemberKind Kind
Результат MemberKind

base_type защищенное свойство

protected TypeSpec base_type
Результат TypeSpec

base_type_expr защищенное свойство

protected TypeExpr base_type_expr
Результат TypeExpr

compiler_generated защищенное свойство

protected List compiler_generated
Результат List

constants защищенное свойство

protected List constants
Результат List

default_constructor защищенное свойство

protected Constructor default_constructor
Результат Constructor

default_static_constructor защищенное свойство

protected Constructor default_static_constructor
Результат Constructor

events защищенное свойство

protected List events
Результат List

fields защищенное свойство

protected List fields
Результат List

iface_exprs защищенное свойство

protected TypeExpr[] iface_exprs
Результат TypeExpr[]

initialized_fields защищенное свойство

protected List initialized_fields
Результат List

initialized_static_fields защищенное свойство

protected List initialized_static_fields
Результат List

instance_constructors защищенное свойство

protected List instance_constructors
Результат List

requires_delayed_unmanagedtype_check защищенное свойство

protected bool requires_delayed_unmanagedtype_check
Результат bool

spec защищенное свойство

protected TypeSpec spec
Результат TypeSpec

type_bases защищенное свойство

protected List type_bases
Результат List

types защищенное свойство

protected List types
Результат List