(index ("output-xml" 0) ("output-xml*" 204) ("sxml-fold-rules" 331) ("sxml-fold-rules*" 634) ("normal->starred-transformation-rules" 776) ("starred->normal-transformation-rules" 1500) ("pagination-rules" 2046) ("pagination-rules*" 2046) ("base-uri" 2685) ("page-size" 2862) ("page-var" 2998) ("determine-page" 3130) ("page-count" 3323) ("first-entry" 3486) ("last-entry" 3637) ("shortcut-rules" 3785) ("shortcut-rules*" 3785))
(def (sig (procedure "(output-xml tree rulesets)" (id output-xml))) (p "Output the sxml in " (tt "tree") " to the current output port, after folding over the rulesets using " (tt "sxml-fold-rules") "."))
(def (sig (procedure "(output-xml* tree rulesets)" (id output-xml*))) (p "Same as " (tt "output-xml") ", for starred rules."))
(def (sig (procedure "(sxml-fold-rules tree rulesets)" (id sxml-fold-rules))) (p "Fold over the list of " (tt "rulesets") " by calling " (tt "pre-post-order") " on each, in turn, starting with the " (tt "tree") " input.  The final output of " (tt "pre-post-order") " on the last ruleset is returned."))
(def (sig (procedure "(sxml-fold-rules* tree rulesets)" (id sxml-fold-rules*))) (p "Same as " (tt "sxml-fold-rules") ", for starred rules."))
(def (sig (procedure "(normal->starred-transformation-rules rules)" (id normal->starred-transformation-rules))) (p "Convert traditional sxml transformation rules (where handlers accept a fixed number of arguments corresponding to the element and its child nodes) to their \"starred\" equivalents (where handlers accept two arguments; the element and a list of its child nodes).") (p "See " (int-link "sxml-transforms#starred-versions" "the sxml-transforms egg manual") " for more information about \"starred rules\".") (p "This will " (i "not") " make these handlers magically accept huge nodes. This is merely for convenience when you want to convert some legacy rules to fit into an application based on starred rules."))
(def (sig (procedure "(starred->normal-transformation-rules rules)" (id starred->normal-transformation-rules))) (p "Convert \"starred\" sxml transformation rules (where handlers accept two arguments; the element and a list of its child nodes) to their traditional equivalents (where handlers accept a fixed number of arguments corresponding to the element and its child nodes).") (p "This procedure is useful for integrating new rules into legacy applications.  Note that after applying this the handlers will have limited node size accepted."))
(def (sig (constant "pagination-rules" (id pagination-rules)) (constant "pagination-rules*" (id pagination-rules*))) (p "Pagination can be performed by a combination of parameters, functions and sxml tag-rules.  The collection of these rules is available as " (tt "pagination-rules") " or " (tt "pagination-rules*") " for the \"starred\" version. Using these rules requires threading the result through " (tt "shortcut-rules") "/" (tt "shortcut-rules*") " or rules that expect the same elements and structure.  When trying to get a big picture of how these work together, take a look at the examples listed at the end of this document."))
(def (sig (parameter "(base-uri [uri-reference])" (id base-uri))) (p "This is the base URI to use for the pagination links. It must be an " (int-link "uri-common") " object."))
(def (sig (parameter "(page-size [number])" (id page-size))) (p "The size of a page/the number of entries on a page. Defaults to: 20"))
(def (sig (parameter "(page-var [symbol])" (id page-var))) (p "The GET variable to use for this page. Defaults to: " (tt "'page")))
(def (sig (procedure "(determine-page num-entries)" (id determine-page))) (p "Determine the number of the page currently being viewed.  The total number of entries on all pages is required."))
(def (sig (procedure "(page-count num-entries)" (id page-count))) (p "Returns the total number of pages.  The total number of entries on all pages is required."))
(def (sig (procedure "(first-entry num-entries)" (id first-entry))) (p "Returns the position of the first entry on the page currently being viewed."))
(def (sig (procedure "(last-entry num-entries)" (id last-entry))) (p "Returns the position of the last entry on the page currently being viewed."))
(def (sig (constant "shortcut-rules" (id shortcut-rules)) (constant "shortcut-rules*" (id shortcut-rules*))) (p "These are some convenience functions that simplify common tags, described below.") (pre "  Tag: (url href . code)") (p "Short for " (tt "`(a (@ (href ,href)) ,code...)") ". " (tt "href") " can be a string or a " (int-link "uri-common") " object.") (pre "  Tag: (pic src alt [title] . rest)") (p "Short for " (tt "`(img (@ (src ,src) (alt ,alt) (title ,title) ,@rest))") ". " (tt "src") " can be a string or a " (int-link "uri-common") " object.") (p "If " (tt "title") " is not provided, it is equal to " (tt "alt") ".") (pre "  Tag: (movie src title . rest)") (p "Short for:") (highlight scheme "`(object (@ (type \"video/quicktime\"))\n   (param (@ (name \"src\") (value ,src)))\n   (param (@ (name \"controller\") (value \"true\")))\n   ,@rest\n   (url ,src ,title))") (p "That is, it shows the movie pointed to by " (tt "src") " embedded in the browser.  If the browser does not support it, an url with the description " (tt "title") " is provided.") (p (tt "src") " can be a string or a " (int-link "uri-common") " object."))
