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