class Routine::WrapHandle

Holds all information needed to unwrap a wrapped routine.

class WrapHandle { ... }

WrapHandle is a Rakudo private class created and returned by wrap. Its only use is to unwrap wrapped routines. Either call unwrap on a routine object or call the method restore on a Routine::WrapHandle object.

sub f() { say 'f was called' }
my $wrap-handle = &f.wrap({ say 'before'callsamesay 'after' });
f;                    # OUTPUT: «before␤f was called␤after␤» 
f;                    # OUTPUT: «f was called␤» 

As such private class, it may suffer any kind of changes without prior notice. It is only mentioned here since it is visible by the user who checks the return type of the Routine.wrap method.


method restore

method restore(--> Bool:D)

Unwraps a wrapped routine and returns Bool::True on success.