C# Class Mono.CSharp.MemberCore

Base representation for members. This is used to keep track of Name, Location and Modifier flags, and handling Attributes.
Inheritance: Mono.CSharp.Attributable, IResolveContext
Exibir arquivo Open project: kumpera/mono Class Usage Examples

Public Properties

Property Type Description
Parent TypeContainer

Protected Properties

Property Type Description
cached_name string
comment string

Private Properties

Property Type Description
GenerateDocComment void
OnGenerateDocComment void

Public Methods

Method Description
CheckObsoleteness ( Mono.CSharp.Location loc ) : void

Checks for ObsoleteAttribute presence. It's used for testing of all non-types elements

ConditionalConditions ( ) : string[]
Define ( ) : bool
Emit ( ) : void

Base Emit method. This is also entry point for CLS-Compliant verification.

EnableOverloadChecks ( MemberCore overload ) : bool

Returns true when a member supports multiple overloads (methods, indexers, etc)

GetAttributeObsolete ( ) : ObsoleteAttribute

Returns instance of ObsoleteAttribute for this MemberCore

GetDocCommentName ( DeclSpace ds ) : string
GetSignatureForError ( ) : string
IsAccessibleAs ( System.TypeSpec p ) : bool
IsClsComplianceRequired ( ) : bool

Analyze whether CLS-Compliant verification must be execute for this MemberCore.

IsExposedFromAssembly ( ) : bool

Returns true when MemberCore is exposed from assembly.

IsNotCLSCompliant ( ) : bool

Goes through class hierarchy and gets value of first found CLSCompliantAttribute. If no is attribute exists then assembly CLSCompliantAttribute is returned.

LookupExtensionMethod ( System.TypeSpec extensionType, string name, int arity, NamespaceEntry &scope ) : IList
LookupNamespaceAlias ( string name ) : Mono.CSharp.FullNamedExpression
LookupNamespaceOrType ( string name, int arity, Mono.CSharp.Location loc, bool ignore_cs0104 ) : Mono.CSharp.FullNamedExpression
MemberCore ( DeclSpace parent, MemberName name, Mono.CSharp.Attributes attrs ) : System
SetIsAssigned ( ) : void
SetIsUsed ( ) : void

Protected Methods

Method Description
CheckAbstractAndExtern ( bool has_block ) : bool
CheckProtectedModifier ( ) : void
SetMemberName ( MemberName new_name ) : void
VerifyClsCompliance ( ) : bool

The main virtual method for CLS-Compliant verifications. The method returns true if member is CLS-Compliant and false if member is not CLS-Compliant which means that CLS-Compliant tests are not necessary. A descendants override it and add their extra verifications.

Private Methods

Method Description
GenerateDocComment ( DeclSpace ds ) : void
OnGenerateDocComment ( Object intermediateNode ) : void

Method Details

CheckAbstractAndExtern() protected method

protected CheckAbstractAndExtern ( bool has_block ) : bool
has_block bool
return bool

CheckObsoleteness() public method

Checks for ObsoleteAttribute presence. It's used for testing of all non-types elements
public CheckObsoleteness ( Mono.CSharp.Location loc ) : void
loc Mono.CSharp.Location
return void

CheckProtectedModifier() protected method

protected CheckProtectedModifier ( ) : void
return void

ConditionalConditions() public method

public ConditionalConditions ( ) : string[]
return string[]

Define() public abstract method

public abstract Define ( ) : bool
return bool

Emit() public method

Base Emit method. This is also entry point for CLS-Compliant verification.
public Emit ( ) : void
return void

EnableOverloadChecks() public method

Returns true when a member supports multiple overloads (methods, indexers, etc)
public EnableOverloadChecks ( MemberCore overload ) : bool
overload MemberCore
return bool

GetAttributeObsolete() public method

Returns instance of ObsoleteAttribute for this MemberCore
public GetAttributeObsolete ( ) : ObsoleteAttribute
return System.ObsoleteAttribute

GetDocCommentName() public method

public GetDocCommentName ( DeclSpace ds ) : string
ds DeclSpace
return string

GetSignatureForError() public method

public GetSignatureForError ( ) : string
return string

IsAccessibleAs() public method

public IsAccessibleAs ( System.TypeSpec p ) : bool
p System.TypeSpec
return bool

IsClsComplianceRequired() public method

Analyze whether CLS-Compliant verification must be execute for this MemberCore.
public IsClsComplianceRequired ( ) : bool
return bool

IsExposedFromAssembly() public method

Returns true when MemberCore is exposed from assembly.
public IsExposedFromAssembly ( ) : bool
return bool

IsNotCLSCompliant() public method

Goes through class hierarchy and gets value of first found CLSCompliantAttribute. If no is attribute exists then assembly CLSCompliantAttribute is returned.
public IsNotCLSCompliant ( ) : bool
return bool

LookupExtensionMethod() public method

public LookupExtensionMethod ( System.TypeSpec extensionType, string name, int arity, NamespaceEntry &scope ) : IList
extensionType System.TypeSpec
name string
arity int
scope NamespaceEntry
return IList

LookupNamespaceAlias() public method

public LookupNamespaceAlias ( string name ) : Mono.CSharp.FullNamedExpression
name string
return Mono.CSharp.FullNamedExpression

LookupNamespaceOrType() public method

public LookupNamespaceOrType ( string name, int arity, Mono.CSharp.Location loc, bool ignore_cs0104 ) : Mono.CSharp.FullNamedExpression
name string
arity int
loc Mono.CSharp.Location
ignore_cs0104 bool
return Mono.CSharp.FullNamedExpression

MemberCore() public method

public MemberCore ( DeclSpace parent, MemberName name, Mono.CSharp.Attributes attrs ) : System
parent DeclSpace
name MemberName
attrs Mono.CSharp.Attributes
return System

SetIsAssigned() public method

public SetIsAssigned ( ) : void
return void

SetIsUsed() public method

public SetIsUsed ( ) : void
return void

SetMemberName() protected method

protected SetMemberName ( MemberName new_name ) : void
new_name MemberName
return void

VerifyClsCompliance() protected method

The main virtual method for CLS-Compliant verifications. The method returns true if member is CLS-Compliant and false if member is not CLS-Compliant which means that CLS-Compliant tests are not necessary. A descendants override it and add their extra verifications.
protected VerifyClsCompliance ( ) : bool
return bool

Property Details

Parent public_oe property

public TypeContainer,Mono.CSharp Parent
return TypeContainer

cached_name protected_oe property

Public name
protected string cached_name
return string

comment protected_oe property

XML documentation comment
protected string comment
return string