public void Can_Parse_FQN_String() { var type = typeof(TypeConversionTests); var fqn1 = FQN.FromType(type); var fqnStr = fqn1.ToString(); var fqn2 = FQN.FromString(fqnStr); Assert.AreEqual(fqnStr, fqn2.ToString()); }
public static bool IsTypeOf(this TypeReference tr1, TypeReference tr2) { if (tr1 == null || tr2 == null) { return(false); } return(FQN.FromTypeReference(tr1).Equals(FQN.FromTypeReference(tr2))); }
public void Can_Parse_FQN_With_Open_Generics_String() { var type = typeof(TestType <> .TestClass <,>); var fqn1 = FQN.FromType(type); var fqnStr = fqn1.ToString(); var fqn2 = FQN.FromString(fqnStr); Assert.AreEqual(fqnStr, fqn2.ToString()); }
public void Closed_Generic_FQN_Matches() { var type = typeof(TestType <List <int> > .TestClass <string, short>); var module = ModuleDefinition.CreateModule("main", ModuleKind.Dll); var tr = module.Import(type); var fqn1 = FQN.FromType(type); var fqn2 = FQN.FromTypeReference(tr); Assert.AreEqual(fqn1.ToString(), fqn2.ToString()); }
public void FQN_Matches() { var type = typeof(TypeConversionTests); var module = ModuleDefinition.CreateModule("main", ModuleKind.Dll); var tr = module.Import(type); var fqn1 = FQN.FromType(type); var fqn2 = FQN.FromTypeReference(tr); Assert.AreEqual(fqn1.ToString(), fqn2.ToString()); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var value = JToken.Load(reader).Value <string>(); if (string.IsNullOrEmpty(value)) { return(null); } var tr = FQN.FromString(value).ToTypeReference(_reference); if (objectType == typeof(TypeDefinition)) { return(tr.Resolve()); } return(tr); }
/// <summary> /// Returns the hashcode of this object. /// </summary> /// <returns>An integer equal to the hash of the FQN of this object.</returns> public override int GetHashCode() { return(FQN.GetHashCode()); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var td = (TypeReference)value; JToken.FromObject(FQN.FromTypeReference(td).ToString(), serializer).WriteTo(writer); }
//public static bool IsSubTypeOf(this TypeDefinition tr, Type type) //{ // var subTypeFqn = FQN.FromType(type); // var isSubType = false; // do // { // isSubType = FQN.FromTypeReference(tr).Equals(subTypeFqn); // tr = tr.BaseType.Resolve(); // } while (tr != null); // return isSubType; //} internal static FQN GetFQN(this TypeReference type) { return(FQN.FromTypeReference(type)); }
public static bool IsTypeOf(this TypeReference tr, Type type) { return(FQN.FromTypeReference(tr).Equals(FQN.FromType(type))); }