blob: b8303d9949bc880cae8129c1761785c0c927b4a4 [file] [log] [blame] [edit]
library;
import self as self;
import "dart:core" as core;
extension type Ext(core::String _) implements core::String {
abstract extension-type-member representation-field get _() core::String;
constructor _ = self::Ext|constructor#_;
constructor tearoff _ = self::Ext|constructor#_#_#tearOff;
constructor = self::Ext|constructor#;
constructor tearoff = self::Ext|constructor#_#new#tearOff;
}
static const field core::String? maybe = #C5;
static extension-type-member method Ext|constructor#_(core::String _) → self::Ext /* erasure=core::String */ {
lowered final self::Ext /* erasure=core::String */ #this = _;
return #this;
}
static extension-type-member method Ext|constructor#_#_#tearOff(core::String _) → self::Ext /* erasure=core::String */
return self::Ext|constructor#_(_);
static extension-type-member method Ext|constructor#() → self::Ext /* erasure=core::String */ {
lowered final self::Ext /* erasure=core::String */ #this = "OK";
assert(!(#C5 == null), "Must not be null");
return #this;
}
static extension-type-member method Ext|constructor#_#new#tearOff() → self::Ext /* erasure=core::String */
return self::Ext|constructor#();
static method main() void {
self::Ext /* erasure=core::String */ c = #C6;
core::print(c);
}
constants {
#C1 = "not there"
#C2 = eval /* from org-dartlang-testcase:///issue56803.dart */ const core::bool::fromEnvironment(#C1)
#C3 = "string"
#C4 = null
#C5 = eval /* from org-dartlang-testcase:///issue56803.dart */ #C2 ?{core::String?} #C3 : #C4
#C6 = eval /* from org-dartlang-testcase:///issue56803.dart */ const self::Ext|constructor#()
}