Resolver Class |
Namespace: Nova.Resolving
public class Resolver
The Resolver type exposes the following members.
Name | Description | |
---|---|---|
Resolver |
Create a Resolver instance for the specified UnresolvedRef.
|
Name | Description | |
---|---|---|
HasCompleteMatch |
True if a complete match has been found.
| |
IsDocCodeRefToMethod |
Returns true if the reference being resolved is in a DocCodeRefBase and has a Method category.
| |
IsGenericTypeOrConstructor |
Returns true if the reference being resolved has type arguments and is for a type or constructor, otherwise false.
| |
IsMethodCategory |
True if we are looking for a method.
| |
ResolveCategory |
The ResolveCategory for the resolve attempt.
| |
ResolveFlags |
The ResolveFlags for the resolve attempt.
| |
TypeArgumentCount |
The number of type arguments on the UnresolvedRef being resolved.
| |
UnresolvedRef |
The UnresolvedRef being resolved.
|
Name | Description | |
---|---|---|
AddIfExtensionMethod |
Add matching code object(s) IF they are extension methods.
| |
AddMatch |
Add matching code object(s).
| |
AddMatchesWithParentExpression |
Feed in existing match candidiates, including any parent expression required in order to evaluate generic type arguments
(used by UnresolvedRef.ResolveMethodGroup()).
| |
AddMatchInternal | ||
DoTypeArgumentCountsMatch |
Check if the type arguments match, based upon the object type.
| |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
FilterMatches | ||
FilterToInaccessibleOnly | ||
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
FindBestExplicitConversion |
We have multiple matching user-defined explicit conversion operators - try to find a single best conversion. [C# 4.0 section 6.4.5]
| |
FindBetterConversion(Expression, TypeRefBase, TypeRefBase) |
Find the better conversion of an expression to two candidate types. [C# 4.0 section 7.5.3.3]
Returns 1 if the conversion to typeRef1 is better, 2 if the conversion to typeRef2 is better, 0 if neither is better.
| |
FindBetterConversion(TypeRefBase, TypeRefBase, TypeRefBase) |
Find the better conversion of a type to two candidate types. [C# 4.0 section 7.5.3.4]
Returns 1 if the conversion to typeRefBase1 is better, 2 if the conversion to typeRefBase2 is better, 0 if neither is better.
| |
FindBetterConversionTarget |
Find the better conversion target of two candidate types. [C# 4.0 section 7.5.3.5]
Returns 1 if typeRefBase1 is better, 2 if typeRefBase2 is better, 0 if neither is better.
| |
FindBetterMethod |
Find the method that better matches the specified arguments. [C# 4.0 section 7.5.3.2]
Returns the better-matching method object, or null if neither is better.
Assumes that the two candidate methods have already been determined to be valid matches for
the given arguments, using implicit conversions where necessary.
If either of the method objects represents an extension method, then the TypeRef of the parent
object that the methods are being called on must be supplied.
| |
FindMoreSpecificType |
Find the more specific of two candidate types. [C# 4.0 section 7.5.3.2]
Returns 1 if typeRef1 is more specific, 2 if typeRef2 is more specific, 0 if neither is more specific.
| |
GetAccessRights |
Get the IsPrivate access right of the object, and if not private then also get the IsProtected and IsInternal rights.
| |
GetAttributeValue |
Get the value of the specified parameter of the specified attribute for the specified type or assembly object.
| |
GetCoClassAttributeType |
Get any CoClass attribute type for the specified object.
| |
GetCustomAttribute(CustomAttributeData, Int32) | ||
GetCustomAttribute(CustomAttribute, Int32) | ||
GetDelegateParametersAsArguments | ||
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetParameterType |
Get the parameter at the specified index without evaluating any type parameters.
| |
GetParentArguments |
Get the arguments from the parent object.
| |
GetTotalMemberCount | ||
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetTypeAssemblyGuidAttribute | ||
GetTypeFullName | ||
GetWrongCategoryError | ||
HasMatchesOtherThanImportedInternalTypes |
Returns true if there are any matches that aren't internal types imported from other assemblies/projects.
| |
HasPossibleDelegateType | ||
IsDelegateType(Type) | ||
IsDelegateType(TypeReference) | ||
IsErrorDueToUnresolvedOnly | ||
IsMethodGeneric | ||
IsMethodLevelCategory |
Determine if the target category is only valid at-or-below the MethodDecl level.
| |
IsStatic | ||
IsTypeLevelCategory |
Determine if the target category is only valid at-or-below the Type level.
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
NewCandidateIsBetterEquivalentType | ||
RemoveBaseInterfacePath |
Remove a path from the base interface paths dictionary.
| |
Resolve |
Attempt to resolve the associated UnresolvedRef object.
| |
ResolveAttribute |
Resolve the reference as an attribute.
| |
ResolveBinaryOperators | ||
ResolveMember |
Resolve the right side of a '.'.
| |
ResolvePointerMember |
Resolve the right side of a '->'.
| |
ResolveSpecific |
Resolve the reference using a known category.
| |
ResolveUnspecified |
This method is called to resolve a symbol in the situation where a category couldn't be determined.
Because parsing can always determine the category in various situations, this method should never be
called for: Generic Types, Namespaces, Methods (with parens), Constructors, Attributes, Goto Targets,
Directive Expressions, literal constants, Indexers, Events, variables of delegate type.
So, it doesn't need to worry about type arguments or method arguments.
This leaves the possibilities of: Non-Generic Types, Type Parameters, Properties, Fields, Locals,
Parameters, and non-invoked Method names (without parens, such as when assigned to delegates or passed
as a parameter of delegate type). Namespace prefixes can also exist for many of these.
| |
SetBaseInterfacePath |
Put a path pair into the base interface paths dictionary.
| |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
_hasCompleteMatch |
Indicates if a complete match exists.
| |
_isValidCategory |
The delegate used to find valid object types for the target category.
| |
_parentExpression |
The parent expression of the unresolved reference (if any).
| |
_resolveCategory |
The targeted object category.
| |
_resolveFlags |
Special flags controlling the symbol resolution.
| |
_unresolvedRef |
The UnresolvedRef being resolved.
| |
CoClassAttributeName |
The name of the CoClass attribute.
| |
ExactMatching |
Determines whether or not exact matching is enforced when only one possible match is found for an UnresolvedRef.
By default, an exact match is required, but this can be set to false to allow a match if there is only one possibility.
| |
GuidAttributeName |
The name of the Guid attribute.
| |
ResolveAttempts |
The total number of resolve attempts for the current pass.
| |
ResolveFailures |
The total number of resolve failures for the current pass.
| |
TypeIdentifierAttributeName |
The name of the TypeIdentifier attribute used on COM interop types.
|