break - How to exit a promise from within a promise? -
how exit promise within promise? perl6 docs not provide easy method. example:
my $x = start { loop { # loop forever until "quit" seen $y = prompt("say something: "); if $y ~~ / quit / { # want exit promise here; # "break" , "this.break" not defined; # "return" not break promise; # not want error exception when exiting promise; # want return value result of promise; } else { $y; } } } i not want in promise loop forever. break() , this.break() not recognized, , return not break promise.
use last keyword quit loop.
the kept value of start block value returned last statement.
so:
my $x = start { loop { # loop forever until "quit" seen $y = prompt("say something: "); if $y ~~ / quit / { last } else { $y; } } 42 # <-- promise kept value `42` }
Comments
Post a Comment