blob: 6ffe3a7422ccc658a755b637ed0a0a0e6bb8d34a [file] [log] [blame]
library test;
import self as self;
import "dart:core" as core;
class NullEquality extends core::Object {
synthetic constructor •() void
: super core::Object::•()
;
@core::override
operator ==(core::Object other) core::Null
return null;
}
class SubNullEquality extends self::NullEquality {
synthetic constructor •() void
: super self::NullEquality::•()
;
method test() void {
dynamic super_equals_self = super.{self::NullEquality::==}(this);
dynamic super_equals_null = super.{self::NullEquality::==}(null);
dynamic super_not_equals_self = !super.{self::NullEquality::==}(this);
dynamic super_not_equals_null = !super.{self::NullEquality::==}(null);
}
}
static method test() dynamic {
self::NullEquality n = new self::NullEquality::•();
dynamic equals_self = n.==(n);
dynamic equals_null = n.==(null);
dynamic null_equals = null.==(n);
dynamic not_equals_self = !n.==(n);
dynamic not_equals_null = !n.==(null);
dynamic null_not_equals = !null.==(n);
}
static method main() dynamic {
self::test();
new self::SubNullEquality::•().test();
}