class X::Inheritance::NotComposed is Exception {}
When you try to inherit from a class that hasn't been composed, an exception of type X::Inheritance::NotComposed is thrown.
Usually this happens because it's not yet fully parsed, or that is stubbed:
For example
class A { ... }; # literal ... for stubbing class B is A { };
dies with
===SORRY!=== 'B' cannot inherit from 'A' because 'A' isn't composed yet (maybe it is stubbed)
The second common way to trigger this error is by trying to inherit from a class from within the class body.
For example
class Outer { class Inner is Outer { } }
dies with
===SORRY!=== 'Outer::Inner' cannot inherit from 'Outer' because 'Outer' isn't composed yet (maybe it is stubbed)
Methods§
method child-name§
method child-name(X::Inheritance::NotComposed:D: --> Str:D)
Returns the name of the type that tries to inherit.
method parent-name§
method parent-name(X::Inheritance::NotComposed:D: --> Str:D)
Returns the name of the parent type that the type tries to inherit from