+2003-07-23 Ravi Pratap <ravi@ximian.com>
+
+ * Type.cs, TypeBuilder.cs, MonoType.cs: Fixes to IsArrayImpl
+ from Paolo in response to bug #45993.
+
2003-07-23 Lluis Sanchez Gual <lluis@ximian.com>
* corlib_test.dll.sources: added System.Runtime.Serialization/SerializationTest.cs
}
public override Type DeclaringType {get {return nesting_type;}}
+/* public override bool IsSubclassOf (Type c)
+ {
+ Type t;
+ if (c == null)
+ return false;
+ if (c == this)
+ return false;
+ t = parent;
+ while (t != null) {
+ if (c == t)
+ return true;
+ t = t.BaseType;
+ }
+ return false;
+ }*/
+
[MonoTODO]
public override Type UnderlyingSystemType {
get {
throw not_supported ();
}
- protected override bool IsArrayImpl () {
- return type_is_subtype_of (this, typeof (System.Array), false);
+ protected override bool IsArrayImpl ()
+ {
+ return Type.IsArrayImpl (this);
}
+
protected override bool IsByRefImpl () {
// FIXME
return false;
protected override bool IsArrayImpl ()
{
- return type_is_subtype_of (this, typeof (System.Array), false) && this != typeof (System.Array);
+ return Type.IsArrayImpl (this);
}
[MethodImplAttribute(MethodImplOptions.InternalCall)]
protected abstract bool IsPointerImpl ();
protected abstract bool IsPrimitiveImpl ();
+ [MethodImplAttribute(MethodImplOptions.InternalCall)]
+ internal static extern bool IsArrayImpl (Type type);
+
protected virtual bool IsValueTypeImpl ()
{
if (this == typeof (Enum) || this == typeof (ValueType))