diff options
Diffstat (limited to 'manuals/chickadee/Channels.html')
-rw-r--r-- | manuals/chickadee/Channels.html | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/manuals/chickadee/Channels.html b/manuals/chickadee/Channels.html index f313c4f..ece7ce5 100644 --- a/manuals/chickadee/Channels.html +++ b/manuals/chickadee/Channels.html @@ -1,6 +1,6 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> -<!-- Copyright (C) 2017 David Thompson davet@gnu.org +<!-- Copyright (C) 2017, 2018, 2019 David Thompson davet@gnu.org Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 @@ -13,6 +13,8 @@ A copy of the license is also available from the Free Software Foundation Web site at http://www.gnu.org/licenses/fdl.html. +* Chickadee: (chickadee). Game programming toolkit for Guile. + The document was typeset with http://www.texinfo.org/ (GNU Texinfo). --> @@ -123,22 +125,37 @@ someone on the other end of the line to complete the transaction. </p></dd></dl> <dl> -<dt><a name="index-channel_003f"></a>Procedure: <strong>channel?</strong> <em><var>obj</var></em></dt> +<dt><a name="index-channel_003f"></a>Procedure: <strong>channel?</strong> <em>obj</em></dt> <dd><p>Return <code>#t</code> if <var>obj</var> is a channel. </p></dd></dl> <dl> -<dt><a name="index-channel_002dget-1"></a>Procedure: <strong>channel-get</strong> <em><var>channel</var></em></dt> +<dt><a name="index-channel_002dget"></a>Procedure: <strong>channel-get</strong> <em>channel</em></dt> <dd><p>Retrieve a value from <var>channel</var>. The current script suspends until a value is available. </p></dd></dl> <dl> -<dt><a name="index-channel_002dput"></a>Procedure: <strong>channel-put</strong> <em><var>channel</var> <var>data</var></em></dt> +<dt><a name="index-channel_002dput"></a>Procedure: <strong>channel-put</strong> <em>channel data</em></dt> <dd><p>Send <var>data</var> to <var>channel</var>. The current script suspends until another script is available to retrieve the value. </p></dd></dl> +<p>A low-level API also exists for using channels outside of a script via +callback procedures: +</p> +<dl> +<dt><a name="index-channel_002dget_0021"></a>Procedure: <strong>channel-get!</strong> <em>channel proc</em></dt> +<dd><p>Asynchronously retrieve a value from <var>channel</var> and call <var>proc</var> +with that value. +</p></dd></dl> + +<dl> +<dt><a name="index-channel_002dput_0021"></a>Procedure: <strong>channel-put!</strong> <em>channel data [thunk]</em></dt> +<dd><p>Asynchronously send <var>data</var> to <var>channel</var> and call <var>thunk</var> +after it has been received. +</p></dd></dl> + |