1 // Mono.Util.CorCompare.MissingType
4 // Nick Drochak (ndrochak@gol.com)
6 // (C) 2001-2002 Nick Drochak
11 namespace Mono.Util.CorCompare {
14 /// Represents a class method that missing.
18 /// created on - 2/20/2002 10:43:57 PM
22 // e.g. <class name="System.Byte" status="missing"/>
23 protected Type theType;
24 public MissingType(Type t)
29 public override bool Equals(object o)
33 return o.GetHashCode() == this.GetHashCode();
38 public override int GetHashCode()
40 return theType.GetHashCode();
51 public string NameSpace
55 return theType.Namespace;
59 public virtual string Status
66 public bool IsDelegate
70 if (theType.IsEnum || theType.IsInterface || theType.IsValueType)
72 Type type = theType.BaseType;
75 if (type.FullName == "System.Delegate")
82 public virtual XmlElement CreateXML (XmlDocument doc)
86 eltClass = doc.CreateElement ("enum");
87 else if (theType.IsInterface)
88 eltClass = doc.CreateElement ("interface");
90 eltClass = doc.CreateElement ("delegate");
91 else if (theType.IsValueType)
92 eltClass = doc.CreateElement ("struct");
94 eltClass = doc.CreateElement ("class");
96 eltClass.SetAttribute ("name", Name);
97 eltClass.SetAttribute ("status", Status);