Package com.strobel.assembler.metadata
Class MetadataResolver
java.lang.Object
com.strobel.assembler.metadata.MetadataResolver
- All Implemented Interfaces:
IGenericContext,IMetadataResolver
- Direct Known Subclasses:
MetadataSystem
- Author:
- Mike Strobel
-
Field Summary
Fields inherited from interface com.strobel.assembler.metadata.IMetadataResolver
EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanReturns whether two type references refer to the same type.static booleanareEquivalent(TypeReference a, TypeReference b, boolean strict) Returns whether two type references refer to the same type.static IMetadataResolverfinal GenericParameterfindTypeVariable(String name) final TypeReferencelookupType(String descriptor) protected abstract TypeReferencelookupTypeCore(String descriptor) voidpopFrame()voidpushFrame(IResolverFrame frame) resolve(FieldReference field) resolve(MethodReference method) resolve(TypeReference type) protected abstract TypeDefinitionresolveCore(TypeReference type)
-
Constructor Details
-
MetadataResolver
protected MetadataResolver()
-
-
Method Details
-
lookupType
- Specified by:
lookupTypein interfaceIMetadataResolver
-
findTypeVariable
- Specified by:
findTypeVariablein interfaceIGenericContext
-
lookupTypeCore
-
pushFrame
- Specified by:
pushFramein interfaceIMetadataResolver
-
popFrame
public void popFrame()- Specified by:
popFramein interfaceIMetadataResolver
-
resolve
- Specified by:
resolvein interfaceIMetadataResolver
-
resolveCore
-
resolve
- Specified by:
resolvein interfaceIMetadataResolver
-
resolve
- Specified by:
resolvein interfaceIMetadataResolver
-
areEquivalent
Returns whether two type references refer to the same type. Note that a parameterized type will not match its corresponding raw type (but a generic definition will match its raw type).- Parameters:
a- The first type reference.b- The second type reference.- Returns:
trueif two type references refer to the same type; otherwise,false.
-
areEquivalent
Returns whether two type references refer to the same type.- Parameters:
a- The first type reference.b- The second type reference.strict- Iftrue, a parameterized type will not match its corresponding raw type (but a generic definition will match its raw type).- Returns:
trueif two type references refer to the same type; otherwise,false.
-
createLimitedResolver
-