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

Popular posts from this blog

python - Operations inside variables -

Generic Map Parameter java -

arrays - What causes a java.lang.ArrayIndexOutOfBoundsException and how do I prevent it? -