Compilation error due to not declaring an attribute with the is required
trait
does X::MOP
Compile time error thrown when a required attribute is not assigned when creating an object.
For example
my;my = Uses-required.new()
Dies with
OUTPUT: «(exit code 1) The attribute '$!req' is required, but you did not provide a value for it.»
method name(--> Str)
Returns the name of the attribute.
method why(--> Str)
Returns the reason why that attribute is required, and it will be included in the message if provided. That reason is taken directly from the is required
trait.
my;my = Uses-required.new(); │# OUTPUT:# «(exit code 1) The attribute '$!req' is required because because yes,# but you did not provide a value for it.»