Hi, No Itisnt <theseaisinh...@gmail.com> writes:
> On Tue, May 25, 2010 at 3:56 PM, No Itisnt <theseaisinh...@gmail.com> wrote: >> I agree. Here's a patch that adds (srfi srfi-9 gnu) with >> set-record-printer! and adds a subsection to the SRFI-9 part of the >> manual for it. >> I can go ahead and commit it, if that's OK. This looks good to me. > diff --git a/doc/ref/srfi-modules.texi b/doc/ref/srfi-modules.texi > index 0d192fa..b3f9946 100644 > --- a/doc/ref/srfi-modules.texi > +++ b/doc/ref/srfi-modules.texi > @@ -1922,6 +1922,35 @@ The functions created by @code{define-record-type} are > ordinary > top-level @code{define}s. They can be redefined or @code{set!} as > desired, exported from a module, etc. > > +...@menu > +* SRFI-9 Custom printers:: Customizing print behavior. > +...@end menu > + > +...@node SRFI-9 Custom printers > +...@subsubsection Custom printers Use @unnumberedsubsubsec instead and no menu. Capitalize like this: “SRFI-9 Custom Printers”. > +You may use @code{set-record-printer!} to customize the default printing > +behavior of records. This is a GUILE extension and is not part of SRFI-9. It > is s/GUILE/Guile/ and two spaces after and end-of-sentence period. > +located in the @nicode{(srfi srfi-9 gnu)} module. > + > +...@deffn {library syntax} set-record-printer! name thunk Rather use @deffn{Scheme Syntax}, which seems to be the most commonly used form in the manual. > +This example prints the employee's name in brackets, for instance > `...@code{[fred]}''. No need for ``quotes'' here. > +(define (set-record-printer! type thunk) > + (struct-set! type vtable-index-printer thunk)) I’d rather call it ‘set-record-type-printer!’ (it prints records, but it’s the printer of the record type). What do you think? You could add a docstring here. And don’t forget to add srfi-9/gnu.scm to ‘SRFI_SOURCES’ in modules/Makefile.am. Thanks, Ludo’.