Skip to content

Instantly share code, notes, and snippets.

@zoffixznet
Created May 15, 2017 19:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zoffixznet/439f3a50d33e623b76f82427f1707f87 to your computer and use it in GitHub Desktop.
Save zoffixznet/439f3a50d33e623b76f82427f1707f87 to your computer and use it in GitHub Desktop.
zoffix@VirtualBox:~/CPANPRC/rakudo$ grep -nFR 'vow' src/
src/core/Channel.pm:20: # Closed promise's vow.
src/core/Channel.pm:21: has $!closed_promise_vow;
src/core/Channel.pm:38: $!closed_promise_vow = $!closed_promise.vow;
src/core/Channel.pm:53: $!closed_promise_vow.keep(Nil);
src/core/Channel.pm:60: $!closed_promise_vow.break(msg.error);
src/core/Channel.pm:77: $!closed_promise_vow.keep(Nil);
src/core/Channel.pm:81: $!closed_promise_vow.break(msg.error);
src/core/Channel.pm:96: $!closed_promise_vow.keep(Nil);
src/core/Channel.pm:100: $!closed_promise_vow.break(msg.error);
src/core/Promise.pm:16: method message() { "Access denied to keep/break this Promise; already vowed" }
src/core/Promise.pm:31: has int $!vow_taken;
src/core/Promise.pm:57: method vow() {
src/core/Promise.pm:59: if $!vow_taken {
src/core/Promise.pm:63: my $vow := nqp::create(Vow);
src/core/Promise.pm:64: nqp::bindattr($vow, Vow, '$!promise', self);
src/core/Promise.pm:65: $!vow_taken = 1;
src/core/Promise.pm:67: $vow
src/core/Promise.pm:72: self.vow.keep(True)
src/core/Promise.pm:75: self.vow.keep(result)
src/core/Promise.pm:89: self.vow.break(False)
src/core/Promise.pm:92: self.vow.break(result)
src/core/Promise.pm:160: my $vow = $then_promise.vow;
src/core/Promise.pm:161: @!thens.push({ $vow.keep(code(self)) });
src/core/Promise.pm:162: @!thens.push(-> $ex { $vow.break($ex) });
src/core/Promise.pm:214: my $vow = $p.vow;
src/core/Promise.pm:216: { my $*PROMISE := $p; $vow.keep(code(|c)) },
src/core/Promise.pm:217: :catch(-> $ex { catch($ex) if &catch; $vow.break($ex); }) );
src/core/Promise.pm:223: my $vow = $p.vow;
src/core/Promise.pm:224: $scheduler.cue({ $vow.keep(True) }, :in($seconds));
src/core/Promise.pm:247: my $vow = $p.vow;
src/core/Promise.pm:251: $vow.keep(True)
src/core/Supply.pm:612: my $v = $p.vow;
src/core/IO/Socket/Async.pm:20: my $v = $p.vow;
src/core/IO/Socket/Async.pm:78: my $v = $p.vow;
src/core/IO/Socket/Async.pm:118: my $v = $p.vow;
src/core/IO/Socket/Async.pm:175: my $v = $p.vow;
src/core/Proc/Async.pm:105: my $vow = $promise.vow;
src/core/Proc/Async.pm:108: on-completed => -> { the-supply.done(); $vow.keep(the-supply) },
src/core/Proc/Async.pm:109: on-error => -> \err { the-supply.quit(err); $vow.keep((the-supply,err)) });
src/core/Proc/Async.pm:185: my $v = $p.vow;
zoffix@VirtualBox:~/CPANPRC/rakudo$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment