Skip to content

Improve documentation of Continuation #140

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions cont.c
Original file line number Diff line number Diff line change
Expand Up @@ -799,11 +799,11 @@ cont_restore_0(rb_context_t *cont, VALUE *addr_in_prev_frame)
/*
* Document-class: Continuation
*
* Continuation objects are generated by <code>Kernel#callcc</code>,
* after having <code>require</code>d <i>continuation</i>. They hold
* Continuation objects are generated by Kernel#callcc,
* after having +require+d <i>continuation</i>. They hold
* a return address and execution context, allowing a nonlocal return
* to the end of the <code>callcc</code> block from anywhere within a
* program. Continuations are somewhat analogous to a structured
* program. Continuations are somewhat analogous to a structured
* version of C's <code>setjmp/longjmp</code> (although they contain
* more state, so you might consider them closer to threads).
*
Expand Down Expand Up @@ -849,15 +849,15 @@ cont_restore_0(rb_context_t *cont, VALUE *addr_in_prev_frame)
* call-seq:
* callcc {|cont| block } -> obj
*
* Generates a <code>Continuation</code> object, which it passes to
* Generates a Continuation object, which it passes to
* the associated block. You need to <code>require
* 'continuation'</code> before using this method. Performing a
* <em>cont</em><code>.call</code> will cause the <code>callcc</code>
* <em>cont</em><code>.call</code> will cause the #callcc
* to return (as will falling through the end of the block). The
* value returned by the <code>callcc</code> is the value of the
* value returned by the #callcc is the value of the
* block, or the value passed to <em>cont</em><code>.call</code>. See
* class <code>Continuation</code> for more details. Also see
* <code>Kernel::throw</code> for an alternative mechanism for
* class Continuation for more details. Also see
* Kernel#throw for an alternative mechanism for
* unwinding a call stack.
*/

Expand Down