예제 #1
0
		static bool compareTypeReferences(Type a, TypeReference b) {
			if (a.IsGenericParameter || a.IsPointer || a.IsByRef || a.IsArray)
				return false;

			if (a.Name != b.Name)
				return false;
			if ((a.Namespace ?? "") != b.Namespace)
				return false;

			var asmRef = DotNetUtils.getAssemblyNameReference(b);
			var asmName = a.Assembly.GetName();
			if (asmRef.Name != asmName.Name)
				return false;

			return compareTypes(a.DeclaringType, b.DeclaringType);
		}