| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| typedef HInvalid = self::HBase<self::HKindInvalid>; |
| typedef HInvalidComposite<CHILD extends self::HBase<self::HKindInvalid>> = self::HBaseComposite<self::HKindInvalid, CHILD>; |
| typedef HInvalidChild<CHILD extends self::HBase<self::HKindInvalid>> = self::HBaseChild<self::HKindInvalid, CHILD>; |
| typedef HInvalidLeaf = self::HBaseLeaf<self::HKindInvalid>; |
| typedef HInvalidError = self::HBaseError<self::HKindInvalid>; |
| abstract class HBase<HKT extends self::HKind> extends core::Object implements self::Kind<self::HBase::HKT> { |
| synthetic constructor •() → self::HBase<self::HBase::HKT> |
| ; |
| } |
| class HBaseComposite<HKT extends self::HKindValid, CHILD extends self::HBase<self::HBaseComposite::HKT> = self::HBase<self::HKindValid>> extends core::Object implements self::HBase<self::HBaseComposite::HKT> /*hasConstConstructor*/ { |
| final field core::List<self::HBaseComposite::CHILD> children; |
| const constructor •(final core::List<self::HBaseComposite::CHILD> children) → self::HBaseComposite<self::HBaseComposite::HKT, self::HBaseComposite::CHILD> |
| : self::HBaseComposite::children = children, super core::Object::•() |
| ; |
| } |
| class HBaseChild<HKT extends self::HKindValid, CHILD extends self::HBase<self::HBaseChild::HKT> = self::HBase<self::HKindValid>> extends core::Object implements self::HBase<self::HBaseChild::HKT> /*hasConstConstructor*/ { |
| final field self::HBaseChild::CHILD child; |
| const constructor •(final self::HBaseChild::CHILD child) → self::HBaseChild<self::HBaseChild::HKT, self::HBaseChild::CHILD> |
| : self::HBaseChild::child = child, super core::Object::•() |
| ; |
| } |
| class HBaseLeaf<HKT extends self::HKindValid> extends core::Object implements self::HBase<self::HBaseLeaf::HKT> /*hasConstConstructor*/ { |
| final field core::int data; |
| const constructor •(final core::int data) → self::HBaseLeaf<self::HBaseLeaf::HKT> |
| : self::HBaseLeaf::data = data, super core::Object::•() |
| ; |
| } |
| class HBaseError<HKT extends self::HKindInvalid> extends core::Object implements self::HBase<self::HBaseError::HKT> /*hasConstConstructor*/ { |
| final field core::String errorMessage; |
| const constructor •(final core::String errorMessage) → self::HBaseError<self::HBaseError::HKT> |
| : self::HBaseError::errorMessage = errorMessage, super core::Object::•() |
| ; |
| } |
| abstract class Kind<HKT extends self::HKind> extends core::Object { |
| synthetic constructor •() → self::Kind<self::Kind::HKT> |
| ; |
| } |
| abstract class HKind extends core::Object { |
| synthetic constructor •() → self::HKind |
| ; |
| } |
| abstract class HKindValid extends core::Object implements self::HKind { |
| synthetic constructor •() → self::HKindValid |
| ; |
| } |
| abstract class HKindInvalid extends core::Object implements self::HKindValid { |
| synthetic constructor •() → self::HKindInvalid |
| ; |
| } |
| static const field self::HBase<self::HKindInvalid> invalidExample = const self::HBaseComposite::•<self::HKindInvalid, self::HBase<self::HKindInvalid>>(const <self::HBase<self::HKindInvalid>>[const self::HBaseLeaf::•<self::HKindInvalid>(0), const self::HBaseChild::•<self::HKindInvalid, self::HBaseLeaf<self::HKindInvalid>>(const self::HBaseLeaf::•<self::HKindInvalid>(0)), const self::HBaseError::•<self::HKindInvalid>("error message")]); |
| static method main() → dynamic |
| ; |
| static method _#HInvalidComposite#new#tearOff<CHILD extends self::HBase<self::HKindInvalid>>(core::List<self::_#HInvalidComposite#new#tearOff::CHILD> children) → self::HBaseComposite<self::HKindInvalid, self::_#HInvalidComposite#new#tearOff::CHILD> |
| return new self::HBaseComposite::•<self::HKindInvalid, self::_#HInvalidComposite#new#tearOff::CHILD>(children); |
| static method _#HInvalidChild#new#tearOff<CHILD extends self::HBase<self::HKindInvalid>>(self::_#HInvalidChild#new#tearOff::CHILD child) → self::HBaseChild<self::HKindInvalid, self::_#HInvalidChild#new#tearOff::CHILD> |
| return new self::HBaseChild::•<self::HKindInvalid, self::_#HInvalidChild#new#tearOff::CHILD>(child); |
| |
| |
| Extra constant evaluation status: |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue48148.dart:5:16 -> InstanceConstant(const HBaseComposite<HKindInvalid*, HBase<HKindInvalid*>*>{HBaseComposite.children: const <HBase<HKindInvalid*>*>[const HBaseLeaf<HKindInvalid*>{HBaseLeaf.data: 0}, const HBaseChild<HKindInvalid*, HBaseLeaf<HKindInvalid*>*>{HBaseChild.child: const HBaseLeaf<HKindInvalid*>{HBaseLeaf.data: 0}}, const HBaseError<HKindInvalid*>{HBaseError.errorMessage: "error message"}]}) |
| Extra constant evaluation: evaluated: 9, effectively constant: 1 |