class X::Phaser::PrePost
Error ReportCollection examples

Error due to a false return value of a PRE/POST phaser

class X::Phaser::PrePost is Exception { }

Thrown when the condition inside a PRE or POST phaser evaluate to a false value.

For example

sub f($x{ PRE { $x ~~ Int } };
f "foo";
CATCH { default { put .^name''.Str } };
# OUTPUT: X::Phaser::PrePost: Precondition '{ $x ~~ Int }' failed«␤»


method phaser

method phaser(--> Str:D)

Returns the name of the failed phaser, "PRE" or "POST".

method condition

method condition(--> Str:D)

Returns the part of the source code that describes the phaser condition.