blob: efcc1656803025ed0dc60e3692c68a87850e9dad [file]
library;
import self as self;
import "dart:core" as core;
class A extends core::Object {
field self::A a/* scope=[
#ctx1: not-captured VariableContext([
this-variable final;
]),
] */ = new self::A::•();
field self::A? aNull = null;
field core::int n/* scope=[
#ctx2: not-captured VariableContext([
this-variable final;
]),
] */ = 0;
field core::Object? field = null;
synthetic constructor •() self::A
: super core::Object::•()
;
method method() dynamic/* scope=[
#ctx3: not-captured VariableContext([
this-variable final;
]),
] */ {}
method call() core::Object?/* scope=[
#ctx4: not-captured VariableContext([
this-variable final;
]),
] */
return null;
operator [](positional-parameter index) core::Object?/* scope=[
#ctx5: not-captured VariableContext([
this-variable final;
positional-parameter index;
]),
] */
return null;
operator []=(positional-parameter index, positional-parameter value) void/* scope=[
#ctx6: not-captured VariableContext([
this-variable final;
positional-parameter index;
positional-parameter value;
]),
] */ {}
operator +(positional-parameter other) self::A/* scope=[
#ctx7: not-captured VariableContext([
this-variable final;
positional-parameter other;
]),
] */
return this-variable;
operator unary-() self::A/* scope=[
#ctx8: not-captured VariableContext([
this-variable final;
]),
] */
return this-variable;
method notCapturedMethodCall() dynamic/* scope=[
#ctx9: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::method}(){() dynamic};
}
method notCapturedExpression() dynamic/* scope=[
#ctx10: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable;
}
method notCapturedPropertyGet() dynamic/* scope=[
#ctx11: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::field}{core::Object?};
}
method notCapturedPropertySet() dynamic/* scope=[
#ctx12: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::field} = null;
}
method notCapturedCall() dynamic/* scope=[
#ctx13: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::call}(){() core::Object?};
}
method notCapturedIndexGet() dynamic/* scope=[
#ctx14: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::[]}(0){(core::int) core::Object?};
}
method notCapturedIndexSet() dynamic/* scope=[
#ctx15: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::[]=}(0, null){(core::int, core::Object?) void};
}
method notCapturedUnary() dynamic/* scope=[
#ctx16: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::unary-}(){() self::A};
}
method notCapturedBinary() dynamic/* scope=[
#ctx17: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::+}(this-variable){(self::A) self::A};
}
method notCapturedPropertyCall() dynamic/* scope=[
#ctx18: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::a}{self::A}.{self::A::call}(){() core::Object?};
}
method notCapturedPropertyPrefix() dynamic/* scope=[
#ctx19: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::n} = this-variable.{self::A::n}{core::int}.{core::num::+}(1){(core::num) core::int};
}
method notCapturedPropertyPostfix() dynamic/* scope=[
#ctx20: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::n} = this-variable.{self::A::n}{core::int}.{core::num::+}(1){(core::num) core::int};
}
method notCapturedPropertyIndexGet() dynamic/* scope=[
#ctx21: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::a}{self::A}.{self::A::[]}(0){(core::int) core::Object?};
}
method notCapturedPropertyIndexSet() dynamic/* scope=[
#ctx22: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::a}{self::A}.{self::A::[]=}(0, null){(core::int, core::Object?) void};
}
method notCapturedPropertyIfNullAssignment() dynamic/* scope=[
#ctx23: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::aNull}{self::A?} == null ?{self::A?} this-variable.{self::A::aNull} = new self::A::•() : null;
}
method notCapturedPropertyCompoundAssignment() dynamic/* scope=[
#ctx24: not-captured VariableContext([
this-variable final;
]),
] */ {
this-variable.{self::A::a} = this-variable.{self::A::a}{self::A}.{self::A::+}(new self::A::•()){(self::A) self::A};
}
method capturedMethodCall() dynamic/* scope=[
#ctx25: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx25 */ dynamic => this-variable.{self::A::method}(){() dynamic};
}
method capturedExpression() dynamic/* scope=[
#ctx26: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx26 */ self::A => this-variable;
}
method capturedPropertyGet() dynamic/* scope=[
#ctx27: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx27 */ core::Object? => this-variable.{self::A::field}{core::Object?};
}
method capturedPropertySet() dynamic/* scope=[
#ctx28: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx28 */ Null {
this-variable.{self::A::field} = null;
};
}
method capturedCall() dynamic/* scope=[
#ctx29: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx29 */ core::Object? => this-variable.{self::A::call}(){() core::Object?};
}
method capturedIndexGet() dynamic/* scope=[
#ctx30: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx30 */ core::Object? => this-variable.{self::A::[]}(0){(core::int) core::Object?};
}
method capturedIndexSet() dynamic/* scope=[
#ctx31: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx31 */ Null {
this-variable.{self::A::[]=}(0, null){(core::int, core::Object?) void};
};
}
method capturedUnary() dynamic/* scope=[
#ctx32: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx32 */ self::A => this-variable.{self::A::unary-}(){() self::A};
}
method capturedBinary() dynamic/* scope=[
#ctx33: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx33 */ self::A => this-variable.{self::A::+}(this-variable){(self::A) self::A};
}
method capturedPropertyCall() dynamic/* scope=[
#ctx34: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx34 */ core::Object? => this-variable.{self::A::a}{self::A}.{self::A::call}(){() core::Object?};
}
method capturedPropertyPrefix() dynamic/* scope=[
#ctx35: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx35 */ core::int => this-variable.{self::A::n} = this-variable.{self::A::n}{core::int}.{core::num::+}(1){(core::num) core::int};
}
method capturedPropertyPostfix() dynamic/* scope=[
#ctx36: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx36 */ core::int => let final core::int #t1 = this-variable.{self::A::n}{core::int} in let final void #t2 = this-variable.{self::A::n} = #t1.{core::num::+}(1){(core::num) → core::int} in #t1;
}
method capturedPropertyIndexGet() dynamic/* scope=[
#ctx37: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx37 */ core::Object? => this-variable.{self::A::a}{self::A}.{self::A::[]}(0){(core::int) core::Object?};
}
method capturedPropertyIndexSet() dynamic/* scope=[
#ctx38: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx38 */ Null => let final self::A #t3 = this-variable.{self::A::a}{self::A} in let final core::int #t4 = 0 in let final has-declared-initializer Null #t5 = null in let final void #t6 = #t3.{self::A::[]=}(#t4, #t5){(core::int, core::Object?) → void} in #t5;
}
method capturedPropertyIfNullAssignment() dynamic/* scope=[
#ctx39: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx39 */ self::A => let final self::A? #t7 = this-variable.{self::A::aNull}{self::A?} in #t7 == null ?{self::A} this-variable.{self::A::aNull} = new self::A::•() : #t7{self::A};
}
method capturedPropertyCompoundAssignment() dynamic/* scope=[
#ctx40: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx40 */ self::A => this-variable.{self::A::a} = this-variable.{self::A::a}{self::A}.{self::A::+}(new self::A::•()){(self::A) self::A};
}
}
class B extends self::A {
synthetic constructor •() self::B
: super self::A::•()
;
@#C1
method notCapturedMethodCall() dynamic/* scope=[
#ctx41: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::method}();
}
@#C1
method notCapturedPropertyGet() dynamic/* scope=[
#ctx42: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::field};
}
@#C1
method notCapturedPropertySet() dynamic/* scope=[
#ctx43: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::field} = null;
}
@#C1
method notCapturedCall() dynamic/* scope=[
#ctx44: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::call}();
}
@#C1
method notCapturedIndexGet() dynamic/* scope=[
#ctx45: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::[]}(0);
}
@#C1
method notCapturedIndexSet() dynamic/* scope=[
#ctx46: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::[]=}(0, null);
}
@#C1
method notCapturedUnary() dynamic/* scope=[
#ctx47: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::unary-}();
}
@#C1
method notCapturedBinary() dynamic/* scope=[
#ctx48: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::+}(this-variable);
}
@#C1
method notCapturedPropertyCall() dynamic/* scope=[
#ctx49: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::a}.{self::A::call}(){() core::Object?};
}
@#C1
method notCapturedPropertyPrefix() dynamic/* scope=[
#ctx50: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::n} = super{this-variable}.{self::A::n}.{core::num::+}(1){(core::num) core::int};
}
@#C1
method notCapturedPropertyPostfix() dynamic/* scope=[
#ctx51: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::n} = super{this-variable}.{self::A::n}.{core::num::+}(1){(core::num) core::int};
}
@#C1
method notCapturedPropertyIndexGet() dynamic/* scope=[
#ctx52: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::a}.{self::A::[]}(0){(core::int) core::Object?};
}
@#C1
method notCapturedPropertyIndexSet() dynamic/* scope=[
#ctx53: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::a}.{self::A::[]=}(0, null){(core::int, core::Object?) void};
}
@#C1
method notCapturedPropertyIfNullAssignment() dynamic/* scope=[
#ctx54: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::aNull} == null ?{self::A?} super{this-variable}.{self::A::aNull} = new self::A::•() : null;
}
@#C1
method notCapturedPropertyCompoundAssignment() dynamic/* scope=[
#ctx55: not-captured VariableContext([
this-variable final;
]),
] */ {
super{this-variable}.{self::A::a} = super{this-variable}.{self::A::a}.{self::A::+}(new self::A::•()){(self::A) self::A};
}
@#C1
method capturedMethodCall() dynamic/* scope=[
#ctx56: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx56 */ dynamic => super{this-variable}.{self::A::method}();
}
@#C1
method capturedPropertyGet() dynamic/* scope=[
#ctx57: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx57 */ core::Object? => super{this-variable}.{self::A::field};
}
@#C1
method capturedPropertySet() dynamic/* scope=[
#ctx58: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx58 */ Null {
super{this-variable}.{self::A::field} = null;
};
}
@#C1
method capturedCall() dynamic/* scope=[
#ctx59: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx59 */ core::Object? => super{this-variable}.{self::A::call}();
}
@#C1
method capturedIndexGet() dynamic/* scope=[
#ctx60: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx60 */ core::Object? => super{this-variable}.{self::A::[]}(0);
}
@#C1
method capturedIndexSet() dynamic/* scope=[
#ctx61: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx61 */ Null {
super{this-variable}.{self::A::[]=}(0, null);
};
}
@#C1
method capturedUnary() dynamic/* scope=[
#ctx62: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx62 */ self::A => super{this-variable}.{self::A::unary-}();
}
@#C1
method capturedBinary() dynamic/* scope=[
#ctx63: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx63 */ self::A => super{this-variable}.{self::A::+}(this-variable);
}
@#C1
method capturedPropertyCall() dynamic/* scope=[
#ctx64: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx64 */ core::Object? => super{this-variable}.{self::A::a}.{self::A::call}(){() core::Object?};
}
@#C1
method capturedPropertyPrefix() dynamic/* scope=[
#ctx65: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx65 */ core::int => super{this-variable}.{self::A::n} = super{this-variable}.{self::A::n}.{core::num::+}(1){(core::num) core::int};
}
@#C1
method capturedPropertyPostfix() dynamic/* scope=[
#ctx66: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx66 */ core::int => let final core::int #t8 = super{this-variable}.{self::A::n} in let final void #t9 = super{this-variable}.{self::A::n} = #t8.{core::num::+}(1){(core::num) → core::int} in #t8;
}
@#C1
method capturedPropertyIndexGet() dynamic/* scope=[
#ctx67: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx67 */ core::Object? => super{this-variable}.{self::A::a}.{self::A::[]}(0){(core::int) core::Object?};
}
@#C1
method capturedPropertyIndexSet() dynamic/* scope=[
#ctx68: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx68 */ Null => let final self::A #t10 = super{this-variable}.{self::A::a} in let final core::int #t11 = 0 in let final has-declared-initializer Null #t12 = null in let final void #t13 = #t10.{self::A::[]=}(#t11, #t12){(core::int, core::Object?) → void} in #t12;
}
@#C1
method capturedPropertyIfNullAssignment() dynamic/* scope=[
#ctx69: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx69 */ self::A => let final self::A? #t14 = super{this-variable}.{self::A::aNull} in #t14 == null ?{self::A} super{this-variable}.{self::A::aNull} = new self::A::•() : #t14{self::A};
}
@#C1
method capturedPropertyCompoundAssignment() dynamic/* scope=[
#ctx70: direct-captured VariableContext([
this-variable final;
]),
] */ {
return () /* #ctx70 */ self::A => super{this-variable}.{self::A::a} = super{this-variable}.{self::A::a}.{self::A::+}(new self::A::•()){(self::A) self::A};
}
}
constants {
#C1 = core::_Override {}
}
Extra constant evaluation status:
Evaluated: VariableGet @ org-dartlang-testcase:///this_variable.dart:138:21 -> IntConstant(0)
Evaluated: VariableGet @ org-dartlang-testcase:///this_variable.dart:138:26 -> NullConstant(null)
Evaluated: VariableGet @ org-dartlang-testcase:///this_variable.dart:138:26 -> NullConstant(null)
Evaluated: VariableGet @ org-dartlang-testcase:///this_variable.dart:292:27 -> IntConstant(0)
Evaluated: VariableGet @ org-dartlang-testcase:///this_variable.dart:292:32 -> NullConstant(null)
Evaluated: VariableGet @ org-dartlang-testcase:///this_variable.dart:292:32 -> NullConstant(null)
Extra constant evaluation: evaluated: 262, effectively constant: 6