private TypeReference ResolveGenericParameter(GenericParameter genericParameter)
{
if (genericParameter.Owner == null)
return HandleOwnerlessInvalidILCode (genericParameter);
var memberReference = genericParameter.Owner as MemberReference;
if (memberReference == null)
throw new NotSupportedException ();
return genericParameter.Type == GenericParameterType.Type
? _typeDefinitionContext.GenericArguments[genericParameter.Position]
: (_methodDefinitionContext != null ? _methodDefinitionContext.GenericArguments[genericParameter.Position] : genericParameter);
}