GOOF----LE-8-2.09u],4h] gguile  gdefine-module*   gtexinfo g reflection  gfilenameS ftexinfo/reflection.scm gimportsS gsrfi gsrfi-1    gselectS g append-map   goop ggoops     g plain-text   gsrfi-13    gice-9 gsession !  "! #g documentation $# %$ &goptargs '& (' )gsxml *g transform +)* ,gpre-post-order -, .+- /"%(.  0gexportsS 1gmodule-stexi-documentation 2gscript-stexi-documentation 3gobject-stexi-documentation 4gpackage-stexi-standard-copying 5g package-stexi-standard-titlepage 6gpackage-stexi-generic-menu 7gpackage-stexi-standard-menu 8gpackage-stexi-extended-menu 9gpackage-stexi-standard-prologue :gpackage-stexi-documentation ;g'package-stexi-documentation-for-include <123456789:;  =gset-current-module >= ?= @gdeftp Agdefcv Bgdefivar Cg deftypeivar Dgdefop Eg deftypeop Fg defmethod Gg deftypemethod Hgdefopt Igdefvr Jgdefvar Kg deftypevr Lg deftypevar Mgdeffn Ng deftypefn Ogdefmac Pgdefspec Qgdefun Rg deftypefun S@ABCDEFGHIJKLMNOPQR Tgdefs Ugassq Vgname Wg list-index Xg= Yg< Zgstring=? [g string<=? \gstring->symbol ]g sort-defs ^greverse! _g list*-join `gmap agstring? bgobject->string cf  df .  eg process-args fgprocedure-arguments ggassq-ref hgrequired igoptional jgkeyword kgrest lgappend mgsymbol->string ngformat of [~a = ~s] pf[~a] qf[#:~a] rf. sg get-proc-args tg syntax-rules ugprocedure-property vgpatterns wgidentifier-syntax xgdefmacro yg defmacro-args zgmacro-arguments {gdefspecx |g% }g arguments ~gmacro-additional-stexi g make-regexp f![[:space:]][[:space:]][[:space:]] g many-space? f ^[[:space:]] ginitial-space? g string-null? g *fragment*  g string-index g regexp-exec gcatch   gtexi-fragment->stexi gverbatim g string->stexi gdefined? gmethod-formals greverse f ( gvar gcode g class-name f)  f... gmethod-specializers g method-source gwarn gmethod-stexi-arguments gforceS    f [unknown] gobject-documentation gis-a? g gmethod-procedure g gcategory fClass   g gmacro-transformer g macro-type l l g  fMethod  g  fGeneric   ggeneric-function-methods gmemq g string-join gmodule-name->node-name g string-append f/ g%search-load-path g in-vicinity gmodule-filename gopen-input-file g eof-object? gread g read-module g define-module gand=> gexportS gcadr gidentity gmodule-export-list g docs-resolverS    gissue-deprecation-warning fQmodule-stexi-documentation: use #:docs-resolver instead of a positional argument. gmodule-commentary gstring-trim-both gwith-output-to-string gdisplay gresolve-interface gtitle gnode gsection fOverview  fUsage  gappend! gsort! g module-map ganchor fvariable unbound! f [unbound!]  gfile-commentary gbasename gadd-value-help-handler! gstexi->plain-text gadd-name-help-handler! gand-map gsymbol? ! ! gcopying gpara fThis manual is for  f (version  f , updated  f Copyright  gnumber->string f, g quotation g titlepage gsubtitle fversion  gauthor gemail gpage  gvskip gall f0pt plus 1filll  |  g insertcopying   gifnottex fTop V |  gtop  gmenu  f*   f::  g make-string  gmax g string-length f   giftex g shortcontents    gcons gcar gcdr g dircategory gdirentry f: ( f).  r gchapter g*text*  g *default* !gstexi->chapter "gmodule-stexi-documentation-argsS #"  $gscriptsS %$  &#% 'gerror (f2expected modules to be a list of a list of symbols )gfilename *"  +*C5hH]]4   /0<54?>"GSTRUVh]45Cgx  gfilenameftexinfo/reflection.scm >   ?  ?  =  ?   ?  ?    gnamegnameCh@-1344L54L55$(CL@4L54L56gproc @geq? @g<  @gargs  @gfilenameftexinfo/reflection.scm F  G G   G   G G  & I  ' I . J 1 H 8 H  @ H  @  gnamegcompare-in-orderCWTh]6~gx  gfilenameftexinfo/reflection.scm @  =  A  A   gnamegpriorityCXYZ[W\UV h]#OQ44 4  555$" I44 4  555$" I$(C@44 4  555$" I44 4  555$" ICgordering  ga  gb   gname   gcompare-in-order   gargs  ( gt  F `gt  | gt  gt   gfilenameftexinfo/reflection.scm : ( K  + C  0 C  3 ? 7 ?  : =  < ?  @ ? A ?  D C  F C  F C  a C  f C  i ? m ?  p =  r ?  v ? w ?  z C  | C  | C  G G  I  I J C  C  ? ?  =  ?  ? ?  C  C  C  C  C  ? ?  =  ?  ? ?  C  C  C   H 5   gnameg sort-defsC]R^hX@]"C(6$ 6( " ""8gl  Tginfix  Tgrestfix   Tgin   Igout   Igfilenameftexinfo/reflection.scm O  P  Q   Q   R  Q  " R " % R  ( S  . S  1 T ' 4 T ! ; U ( @ U ! I S  I P  L P  T P   T gnameg list*-joinC_R`abhq]45$C6igx  gfilenameftexinfo/reflection.scm X   X  X   X %   C_cdh ]4$"56gargs  gfilenameftexinfo/reflection.scm W  Y   Y   Y   Z   Z   Y   X    gnameg process-argsCeRfghijkel`mnoph ]$66ga  gfilenameftexinfo/reflection.scm j   k  k   l #  l /  l 7  l   m # m   Cnpqh ]$ 66ga  gfilenameftexinfo/reflection.scm q   r  r   s #  s *  s   t #  t    Crh])45$g4545454544  54  54  5$ 4 5"56Cgproc  zgt zg required-args  5 xg optional-args  5 xg keyword-args  5 xgrest-arg  5 xgfilenameftexinfo/reflection.scm \  ^  ]   `   ` -  `   a  ! a - # a  $ b  * b - , b  - c  3 c ( 5 c  5 ` @ e C g L j U q c x e y  f y  o y  t z  v e x d   z gnameg get-proc-argsCsRetuvwxyhhn] $!45$""7$")$45$""6fgname  ggtype  gg transformer   ggpatterns   *gt  N `gfilenameftexinfo/reflection.scm | ~     6        " ' 7 ~  8  E ~  F L * N N  ] e  g }   g gnamegmacro-argumentsCzRtuv`{|V}eh u]L45Cmgx  gfilenameftexinfo/reflection.scm     -     Ch0#] $"45$O6CCgname  /gtype  /g transformer   /gpatterns   -gfilenameftexinfo/reflection.scm    5        )  + , .   / gnamegmacro-additional-stexiC~R4i5R4i5RhS]L6Kgfilenameftexinfo/reflection.scm     Ch_-13CWgargs gfilenameftexinfo/reflection.scm  C h4] $ 45"$"$C4@5$"45$" 45$4O 5"$C  C,gstr  gt  gt 3 _gt w gfilenameftexinfo/reflection.scm          +  3 A  M  S  \  c  d w    gnameg string->stexiCR4i5$i"Rlmch^])$"(6$S444544 55 55"454544 55  6454 5"J4 5$"(6$D444545 55"454545  64 5"a4>"GCVgmethod  gformals g specializers  gout  gformal  1 bg specializer  1 bgbindings ^gout  ^garg   gfilenameftexinfo/reflection.scm            " %  & )  . * 1 8 1  7  :  C  H  K ! S  V  d  h r  u  }     !                   *    %       !       ! )  ,  4  7  < % >  A  F  K ! N  Q  Y ; \ 5 ^  ^  _  f  h ; p  q  V   gnamegmethod-stexi-argumentsCRmaV@|uP}z~sQM`3hh]ML6`gmethod  gfilenameftexinfo/reflection.scm     CJT(h0--/03H#K#J$ 4J5K"445$ 45"545$ 4 5"7"$ "'""$ &""""$u"A4 5$ JC45$Q45$ 45" J4J544J55C45$# J45C45$% J45C4 5$5  J!4"#O4$55C J%C$$$4&'5$C"""C%gobject  /gname  /gforce   /gx  ^ gstexi  /gargs  gproc  @gtype   @gargs  a pgargs   gargs   gargs    gfilenameftexinfo/reflection.scm = .  2  3  ;  @  C  O  P  ^  ^  a  k  l %      - 5                   6        " '  . ; =  A  M  O  W & ^  a  e  g  m  n  q  }     &                                                       &          c  / gforceS gnamegobject-stexi-documentationC3R`mch]456gsym-name  gfilenameftexinfo/reflection.scm    -     gnamegmodule-name->node-nameCR`mhn]6fgelt  gfilenameftexinfo/reflection.scm     4  !  ChH}])454545445?456ugname  Bgname Bg reverse-name   Bgleaf   Bgdir-hint-module-name  # Bgdir-hint  3 Bgfilenameftexinfo/reflection.scm                      !  ( #   #   &   )   3   3   8   B    B gnamegmodule-filenameCRhXW]!45$B45"%45$645"45"COgname  Ugfilename Ugport   Sgout   Cgform   Cgfilenameftexinfo/reflection.scm                     )  /   4   5  $ C   C  D   E  # S  T    U gnameg read-moduleCRhx]"c(C$4&&$4455"""$6"45"gsym-name  vgforms  igform   Rgt  R igfilenameftexinfo/reflection.scm           $              #   &   *  .   /  2   9   <   @  R   c   i   i   j   v    v gnamegmodule-export-listCRhn]Cfgname  gdef  gfilenameftexinfo/reflection.scm % 0   Chc] 6[gx  gfilenameftexinfo/reflection.scm -  - (  ChS]L6Kgfilenameftexinfo/reflection.scm 1   1    C|V|Vcm3Jhl] 4L455$4L455"+4  >"G 45  &"Cdgsym  gvar  gx  k gfilenameftexinfo/reflection.scm 9   : 5   5   5 #  5   : $ ?  ( ?  ) @  . B  3 B 0 : B  < @  A E  E E  L E  V F  [ F ( d F  k ;  p <  r < " v <  y =  >  :   C]hr]L6jga  gb  gfilenameftexinfo/reflection.scm I  I   Ch-/03 ##$"$4>"G"4455454 54  O54 54 54444O5O5?5Cgsym-name  g%docs-resolver  g docs-resolver   g commentary  \ gstexi  e g node-name  n gname-str  | gmodule  g export-list   gfilenameftexinfo/reflection.scm ! ( $ , 8 )  9 *  = +  B *  O ,  R ,  \ ,  \ ,  _ .  e ,  h /  n ,  q 0  | ,   2  ,  3  ,  K  N  K  P  7  8  7  P  K   g docs-resolverS gnamegmodule-stexi-documentationg documentationfReturn documentation for the module named @var{sym-name}. The documentation will be formatted as @code{stexi} (@pxref{texinfo,texinfo}).C1R|V hX] 454545$44  55"Cg scriptpath  Rg commentary Rgfilenameftexinfo/reflection.scm R  V  V  W   W   W  % X  . W  : Y  ; [  > \  H [  I Z  N ]  O W   R gnamegscript-stexi-documentationg documentationfReturn documentation for given script. The documentation will be taken from the script's commentary, and will be returned in the @code{stexi} format (@pxref{texinfo,texinfo}).C2R4i5$4i3h]456zgname  gvalue  gfilenameftexinfo/reflection.scm b   d   c    C>"G4i1h(]$45$ 456CCgname  %gfilenameftexinfo/reflection.scm f   g g  h  g   i  ! i   % C>"G"R`chH]44  5 5  Cgname  Fgversion  Fgupdated   Fgyears   Fgcopyright-holder   Fg permissions   Fgfilenameftexinfo/reflection.scm o  u  x  # x % - x @ / x  1 u   F gnamegpackage-stexi-standard-copyingg documentationfCreate a standard texinfo @code{copying} section. @var{years} is a list of years (as integers) in which the modules being documented were released. All other arguments are strings.C4R`h]Cgpair  gfilenameftexinfo/reflection.scm            $      C h0]445 5Cgname  /gversion  /gupdated   /gauthors   /gfilenameftexinfo/reflection.scm }       &    / gnameg package-stexi-standard-titlepageg documentationfCreate a standard GNU title page. @var{authors} is a list of @code{(@var{name} . @var{email})} pairs. All other arguments are strings. Here is an example of the usage of this procedure: @smallexample (package-stexi-standard-titlepage "Foolib" "3.2" "26 September 2006" '(("Alyssa P Hacker" . "alyssa@@example.com")) '(2004 2005 2006) "Free Software Foundation, Inc." "Standard GPL permissions blurb goes here") @end smallexample C5R| l`    hH]$644 45 5 545CCgentry  Agnode  >g description   >gfilenameftexinfo/reflection.scm        (             !   (   ,   0   1   @    A C h8]44  5? Cgname  1gentries  1gfilenameftexinfo/reflection.scm          )   *    1 gnamegpackage-stexi-generic-menug documentationfCreate a menu from a generic alist of entries, the car of which should be the node name, and the cdr the description. As an exception, an entry of @code{#f} will produce a separator.C6R6`h8] 44554("56gname  6gmodules  6gmodule-descriptions   6g extra-entries   6gmodule-entries   4gfilenameftexinfo/reflection.scm                %  ( /  8 1   6    6 gnamegpackage-stexi-standard-menug documentationfICreate a standard top node and menu, suitable for processing by makeinfo.C7R6` h&]444554554445545544("("556gname  ~g module-pairs  ~g script-pairs   ~g extra-entries   ~gmodule-entries  F |gscript-entries  F |gfilenameftexinfo/reflection.scm         #       &   '   ,   1  , ;   <   F   F   K   X  ( b  8 h  ( r  8 t   ~    ~ gnamegpackage-stexi-extended-menug documentationfQCreate an "extended" menu, like the standard menu but with a section for scripts.C8R|  h@B]4 5C:gname  9gfilename  9gcategory   9g description   9gcopying   9g titlepage   9gmenu   9gfilenameftexinfo/reflection.scm      9 gnamegpackage-stexi-standard-prologueg documentationfCreate a standard prologue, suitable for later serialization to texinfo and .info creation with makeinfo. Returns a list of stexinfo forms suitable for passing to @code{package-stexi-documentation} as the prologue. @xref{texinfo reflection package-stexi-documentation}, @ref{texinfo reflection package-stexi-standard-titlepage,package-stexi-standard-titlepage}, @ref{texinfo reflection package-stexi-standard-copying,package-stexi-standard-copying}, and @ref{texinfo reflection package-stexi-standard-menu,package-stexi-standard-menu}.C9R,gh -1345Cgtag gattrs gnode  gbody  gfilenameftexinfo/reflection.scm         *   6        Chn]Cfgtag  gtext  gfilenameftexinfo/reflection.scm     C h_-13CWgargs gfilenameftexinfo/reflection.scm   Ch ]6gstexi  gfilenameftexinfo/reflection.scm          gnamegstexi->chapterC!R&h0] 45$$C"Cgpred  ,gl  ,gt   *gfilenameftexinfo/reflection.scm                    "  ) *    , gnamegallChc]L6[gx  gfilenameftexinfo/reflection.scm     ChS]LLOL6Kgfilenameftexinfo/reflection.scm        Ch_-13CWgargs gfilenameftexinfo/reflection.scm   Ch ] OQLO6gl  gall gfilenameftexinfo/reflection.scm        gnamegverify-modules-listC'(|)!1hn]4L?6fgmod  gfilenameftexinfo/reflection.scm           C!2hq]456igscript  gfilenameftexinfo/reflection.scm         C h@-/03##OQ45$"4>"G4 4 4  O54 4  5555C8gmodules  gname  gfilename   gprologue   gepilogue   gmodule-stexi-documentation-args   gscripts   gverify-modules-list  - gfilenameftexinfo/reflection.scm    ' #  / 3  =   B   F  M   W   s           gmodule-stexi-documentation-argsS gscriptsS gnamegpackage-stexi-documentationg documentationf8Create stexi documentation for a @dfn{package}, where a package is a set of modules that is released together. @var{modules} is expected to be a list of module names, where a module name is a list of symbols. The stexi that is returned will be titled @var{name} and a texinfo filename of @var{filename}. @var{prologue} and @var{epilogue} are lists of stexi forms that will be spliced into the output document before and after the generated modules documentation, respectively. @xref{texinfo reflection package-stexi-standard-prologue}, to create a conventional GNU texinfo prologue. @var{module-stexi-documentation-args} is an optional argument that, if given, will be added to the argument list when @code{module-texi-documentation} is called. For example, it might be useful to define a @code{#:docs-resolver} argument.C:R+      h8] 4544 45 5 545Cgmodname  7gdesc  7gnode  7gfilenameftexinfo/reflection.scm <   = ! =  7   8   8   8  ! 8  % 8  ) 8  * 7   7 C!1hr]4L?6jgmodname  gfilenameftexinfo/reflection.scm A   C   B    Ch@_-/03#454O5CWgmodules  =gmodule-descriptions  =gmodule-stexi-documentation-args   =gfilenameftexinfo/reflection.scm #  % S  :  ! <  , :  - A  ; :   =  gmodule-stexi-documentation-argsS gnameg'package-stexi-documentation-for-includeg documentationfCreate stexi documentation for a @dfn{package}, where a package is a set of modules that is released together. @var{modules} is expected to be a list of module names, where a module name is a list of symbols. Returns an stexinfo fragment. Unlike @code{package-stexi-documentation}, this function simply produces a menu and the module documentations instead of producing a full texinfo document. This can be useful if you write part of your manual by hand, and just use @code{@@include} to pull in the automatically generated parts. @var{module-stexi-documentation-args} is an optional argument that, if given, will be added to the argument list when @code{module-texi-documentation} is called. For example, it might be useful to define a @code{#:docs-resolver} argument.C;RCgm  ,gfilenameftexinfo/reflection.scm   . 6  1 5  :  O 7 W , \ ! | F G  M ! O  R S  Y $ [  ^ / 0  6  8  <  H a # $y &  (  *  3; ! 5 R 5 `  5 ` 5 `  5 _ 5 a  6p e  7a m 9 o = } @  B  E  Im  L>  V  ]B # 0  ]D C6