IKVM11  11
Java SE 11 Virtual Machine for .NET
Loading...
Searching...
No Matches
IKVM.CoreLib.Symbols.Reflection.ReflectionSymbol Class Referenceabstract

Base class for managed symbols. More...

Inheritance diagram for IKVM.CoreLib.Symbols.Reflection.ReflectionSymbol:
IKVM.CoreLib.Symbols.ISymbol IKVM.CoreLib.Symbols.Reflection.ReflectionAssemblySymbol IKVM.CoreLib.Symbols.Reflection.ReflectionMemberSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionModuleSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionParameterSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionEventSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionFieldSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionMethodBaseSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionPropertySymbol IKVM.CoreLib.Symbols.Reflection.ReflectionTypeSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionConstructorSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionMethodSymbol

Public Member Functions

 ReflectionSymbol (ReflectionSymbolContext context)
 Initializes a new instance.
 

Protected Member Functions

virtual ReflectionMemberSymbol ResolveMemberSymbol (MemberInfo member)
 Resolves the symbol for the specified type.
 

Properties

ReflectionSymbolContext Context [get]
 Gets the associated ReflectionSymbolContext.
 
virtual bool IsMissing [get]
 Returns true if the symbol is missing.
 
- Properties inherited from IKVM.CoreLib.Symbols.ISymbol

Detailed Description

Base class for managed symbols.

Definition at line 12 of file ReflectionSymbol.cs.

Constructor & Destructor Documentation

◆ ReflectionSymbol()

IKVM.CoreLib.Symbols.Reflection.ReflectionSymbol.ReflectionSymbol ( ReflectionSymbolContext context)

Initializes a new instance.

Parameters
context

Definition at line 21 of file ReflectionSymbol.cs.

22 {
23 _context = context ?? throw new ArgumentNullException(nameof(context));
24 }

Member Function Documentation

◆ ResolveMemberSymbol()

virtual ReflectionMemberSymbol IKVM.CoreLib.Symbols.Reflection.ReflectionSymbol.ResolveMemberSymbol ( MemberInfo member)
protectedvirtual

Resolves the symbol for the specified type.

Parameters
member
Returns

Definition at line 88 of file ReflectionSymbol.cs.

89 {
90 return member.MemberType switch
91 {
92 MemberTypes.Constructor => ResolveConstructorSymbol((ConstructorInfo)member),
93 MemberTypes.Event => ResolveEventSymbol((EventInfo)member),
94 MemberTypes.Field => ResolveFieldSymbol((FieldInfo)member),
95 MemberTypes.Method => ResolveMethodSymbol((MethodInfo)member),
96 MemberTypes.Property => ResolvePropertySymbol((PropertyInfo)member),
97 MemberTypes.TypeInfo => ResolveTypeSymbol((Type)member),
98 MemberTypes.NestedType => ResolveTypeSymbol((Type)member),
99 MemberTypes.Custom => throw new NotImplementedException(),
100 MemberTypes.All => throw new NotImplementedException(),
101 _ => throw new InvalidOperationException(),
102 };
103 }
IKVM.Reflection.Type Type
IKVM.Reflection.ConstructorInfo ConstructorInfo
IKVM.Reflection.EventInfo EventInfo
IKVM.Reflection.FieldInfo FieldInfo
IKVM.Reflection.PropertyInfo PropertyInfo
IKVM.Reflection.MethodInfo MethodInfo

Property Documentation

◆ Context

ReflectionSymbolContext IKVM.CoreLib.Symbols.Reflection.ReflectionSymbol.Context
getprotected

Gets the associated ReflectionSymbolContext.

Definition at line 29 of file ReflectionSymbol.cs.

◆ IsMissing

virtual bool IKVM.CoreLib.Symbols.Reflection.ReflectionSymbol.IsMissing
get

Returns true if the symbol is missing.

Implements IKVM.CoreLib.Symbols.ISymbol.

Definition at line 32 of file ReflectionSymbol.cs.


The documentation for this class was generated from the following file: