ICSharpCode.ILSpy.TreeNodes.DerivedTypesTreeNode.IsSameType C# (CSharp) Method

IsSameType() static private method

static private IsSameType ( TypeReference typeRef, TypeDefinition type ) : bool
typeRef TypeReference
type TypeDefinition
return bool
        static bool IsSameType(TypeReference typeRef, TypeDefinition type)
        {
            if (typeRef.FullName == type.FullName)
                return true;
            if (typeRef.Name != type.Name || type.Namespace != typeRef.Namespace)
                return false;
            if (typeRef.IsNested || type.IsNested)
                if (!typeRef.IsNested || !type.IsNested || !IsSameType(typeRef.DeclaringType, type.DeclaringType))
                    return false;
            var gTypeRef = typeRef as GenericInstanceType;
            if (gTypeRef != null || type.HasGenericParameters)
                if (gTypeRef == null || !type.HasGenericParameters || gTypeRef.GenericArguments.Count != type.GenericParameters.Count)
                    return false;
            return true;
        }