1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-16 16:50:21 +02:00

Auto docstring updates, including soft port enhancement.

This commit is contained in:
Neil Jerram 2002-10-19 16:33:25 +00:00
parent 5ec1d2c8e0
commit 0a50eeaadb
10 changed files with 140 additions and 757 deletions

8
NEWS
View file

@ -167,6 +167,14 @@ Change your code to use either procedure->memoizing-macro or, probably better,
to use r5rs macros. Also, be aware that macro expansion will not be done
during evaluation, but prior to evaluation.
** Soft ports now allow a `char-ready?' procedure
The vector argument to `make-soft-port' can now have a length of
either 5 or 6. (Previously the length had to be 5.) The optional 6th
element is interpreted as an `input-waiting' thunk -- i.e. a thunk
that returns the number of characters that can be read immediately
without the soft port blocking.
* Changes to the C interface
** The value 'scm_mask_ints' is no longer writable.

View file

@ -1,3 +1,7 @@
2002-10-19 Neil Jerram <neil@ossau.uklinux.net>
* guile.texi: Replaced by regenerated libguile version.
2002-07-10 Gary Houston <ghouston@arglist.com>
* docstring.el: optional 2nd environment variable to locate

File diff suppressed because it is too large Load diff

View file

@ -1,3 +1,8 @@
2002-10-19 Neil Jerram <neil@ossau.uklinux.net>
* new-docstrings.texi, scheme-binding.texi, scheme-io.texi,
scheme-scheduling.texi, posix.texi: Automatic docstring updates.
2002-10-14 Marius Vollmer <mvo@zagadka.ping.de>
* intro.texi (Whirlwind Tour): Added pointer to examples

View file

@ -705,3 +705,39 @@ Return Inf.
This function is used to turn on checking for a debug version of GUILE. This version does not support this functionality
@end deffn
@deffn {Scheme Procedure} all-threads
implemented by the C function "scm_all_threads"
@end deffn
@deffn {Scheme Procedure} current-thread
implemented by the C function "scm_current_thread"
@end deffn
@deffn {Scheme Procedure} standard-eval-closure module
@deffnx {C Function} scm_standard_eval_closure (module)
Return an eval closure for the module @var{module}.
@end deffn
@deffn {Scheme Procedure} mask-signals
@deffnx {C Function} scm_mask_signals ()
Mask signals. The returned value is not specified.
@end deffn
@deffn {Scheme Procedure} unmask-signals
@deffnx {C Function} scm_unmask_signals ()
Unmask signals. The returned value is not specified.
@end deffn
@deffn {Scheme Procedure} noop . args
@deffnx {C Function} scm_noop (args)
Do nothing. When called without arguments, return @code{#f},
otherwise return the first argument.
@end deffn
@deffn {Scheme Procedure} system-async thunk
@deffnx {C Function} scm_system_async (thunk)
This function is deprecated. You can use @var{thunk} directly
instead of explicitely creating an async object.
@end deffn

View file

@ -1526,8 +1526,8 @@ handles the signal, or @code{#f} if a non-Scheme procedure handles the
signal. The CDR contains the current @code{sigaction} flags for the handler.
If @var{handler} is provided, it is installed as the new handler for
@var{signum}. The parameter @var{handler} can be a Scheme procedure
taking one argument, or the value of @code{SIG_DFL} (default action) or
@var{signum}. @var{handler} can be a Scheme procedure taking one
argument, or the value of @code{SIG_DFL} (default action) or
@code{SIG_IGN} (ignore), or @code{#f} to restore whatever signal handler
was installed before @code{sigaction} was first used. When a scheme
procedure has been specified, that procedure will run in the given

View file

@ -267,7 +267,7 @@ top level environment.
@c NJFIXME explain [env]
@deffn {Scheme Procedure} defined? sym [env]
@deffnx {C Function} scm_definedp (sym, env)
@deffnx {C Function} scm_defined_p (sym, env)
Return @code{#t} if @var{sym} is defined in the lexical environment @var{env}. When @var{env} is not specified, look in the top-level environment as defined by the current module.
@end deffn

View file

@ -839,7 +839,7 @@ accepting or delivering characters. It allows emulation of I/O ports.
@deffnx {C Function} scm_make_soft_port (pv, modes)
Return a port capable of receiving or delivering characters as
specified by the @var{modes} string (@pxref{File Ports,
open-file}). @var{pv} must be a vector of length 5. Its
open-file}). @var{pv} must be a vector of length 5 or 6. Its
components are as follows:
@enumerate 0
@ -853,6 +853,9 @@ thunk for flushing output
thunk for getting one character
@item
thunk for closing port (not by garbage collection)
@item
(if present and not @code{#f}) thunk for computing the number of
characters that can be read from the port without blocking.
@end enumerate
For an output-only port only elements 0, 1, 2, and 4 need be

View file

@ -99,7 +99,7 @@ temporarily decrease the blocking level of the current thread. You
can use it when you want to disable asyncs by default and only allow
them temporarily.
@deffn {Scheme procedure} system-async-mark proc [thread]
@deffn {Scheme Procedure} system-async-mark proc [thread]
@deffnx {C Function} scm_system_async_mark (proc)
@deffnx {C Function} scm_system_async_mark_for_thread (proc, thread)
Mark @var{proc} (a procedure with zero arguments) for future execution
@ -115,7 +115,7 @@ signal handlers.
@deffn {Scheme Procedure} call-with-blocked-asyncs proc
@deffnx {C Function} scm_call_with_blocked_asyncs (proc)
@deffnx {C Function} void *scm_c_call_with_blocked_asyncs (void *(*p) (void *d), void *d)
@deffnx {C Function} void *scm_c_call_with_blocked_asyncs (void * (*proc) (void *data), void *data)
Call @var{proc} and block the execution of system asyncs by one level
for the current thread while it is running. Return the value returned
by @var{proc}. For the first two variants, call @var{proc} with no

View file

@ -228,9 +228,14 @@ scm_i_queue_async_cell (SCM c, scm_root_state *root)
SCM_DEFINE (scm_system_async_mark_for_thread, "system-async-mark", 1, 1, 0,
(SCM proc, SCM thread),
"Register the procedure @var{proc} for future execution\n"
"in @var{thread}. When @var{thread} is not specified,\n"
"use the current thread.")
"Mark @var{proc} (a procedure with zero arguments) for future execution\n"
"in @var{thread}. If @var{proc} has already been marked for\n"
"@var{thread} but has not been executed yet, this call has no effect.\n"
"If @var{thread} is omitted, the thread that called\n"
"@code{system-async-mark} is used.\n\n"
"This procedure is not safe to be called from C signal handlers. Use\n"
"@code{scm_sigaction} or @code{scm_sigaction_for_thread} to install\n"
"signal handlers.")
#define FUNC_NAME s_scm_system_async_mark_for_thread
{
#ifdef USE_THREADS