is Exception
此角色将异常转换为 控制异常,例如 CX::Next 或 CX::Take。除了定义之外,它没有其他代码。
自 Rakudo 2019.03 起,throw 混合在此角色 X::Control 中的对象可以引发控制异常,该异常由 CONTROL phaser 捕获,而不是 CATCH。这允许定义自定义控制异常。
例如,我们在下面定义的自定义 CX::Vaya 控制异常
does X::Controlsub eaea;# OUTPUT: «Controlled CX::Vaya: I messed up!»