- Documentation update.
authorMaciej Pasternacki <maciej@pasternacki.net>
Wed, 17 Dec 2008 23:25:29 +0000 (18 00:25 +0100)
committerMaciej Pasternacki <maciej@pasternacki.net>
Wed, 17 Dec 2008 23:25:29 +0000 (18 00:25 +0100)
doc/TRANE-COMMON.html
doc/TRANE-PASSENGERS.html
doc/TRANE-TAXONOMY.html
doc/dependency-graph.dot
doc/dependency-graph.pdf
doc/dependency-graph.png

index 92ad8bd..0f0c8e1 100644 (file)
@@ -23,7 +23,9 @@ Defaults to "error" in *DEFAULT-PATHNAME-DEFAULTS*.</blockquote>
 When NIL, *PACKAGE* is assumed, which is probably not what you want.</blockquote>
 <blockquote>Initial value: <tt>NIL</tt></blockquote>
 <p>(<b>cache-dao</b> dao)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Manually add DAO to cache used by WITH-DAO-CACHE.</blockquote><p><b>DIRTINESS-MIXIN</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
+<blockquote>Manually add DAO to cache used by WITH-DAO-CACHE.
+
+Returns DAO</blockquote><p><b>DIRTINESS-MIXIN</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p><b>DIRTY-P</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p>(<b>execute*</b> statements &optional query-log)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Execute a possibly nested list of sql STATEMENTS.
@@ -40,7 +42,8 @@ and for NIL :XYZZY it's //XYZZY.
 
 If symbol with such name exists in *HANDLER-PACKAGE* (or in *PACKAGE*,
 if *HANDLER-PACKAGE* is NIL, but probably it's not what you want), and
-it names a function, this function is returned.</blockquote><p>(<b>id</b> object)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
+it names a function, this function is returned.</blockquote><p>(<b>hex-md5</b> sequence)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>Return MD5 checksum of SEQUENCE as a hexadecimal string.</blockquote><p>(<b>id</b> x)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
 <blockquote>Numeric ID or :NULL for DAOs and, if it makes sense, other objects.
 
 Usually it will be a reader method automatically defined for ID column of a DAO.</blockquote><p>(<b>init-config</b> &rest files)&nbsp;&nbsp;&nbsp;<i>function</i></p>
@@ -60,12 +63,13 @@ full path to sendmail binary, as a string, default is taken from
 <blockquote>Version of LAMBDA that returns anonymous function defined with
 FLET and named NAME, which it's PRINTed with a name in most Lisp
 implementations.</blockquote><p>(<b>null-or</b> v)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>If V is NIL or an empty string, return :NULL, otherwise return V.</blockquote><p>(<b>random-string</b> &key alphabet min-length max-length)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>If V is NIL or an empty string, return :NULL, otherwise return V.</blockquote><p>(<b>qp-utf8</b> string)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>Encode STRING as quoted-printable UTF-8</blockquote><p>(<b>random-string</b> &key alphabet min-length max-length)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Simple random string for initial password to use in account activation process.</blockquote><p><b>REPORT-ERROR</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p><b>REPORT-ERROR-BY-EMAIL</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p><b>REPORT-ERROR-TO-FILE</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p>(<b>salted-password</b> salt password)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Return Base64-encoded MD5 checksum of SALT concatenated with PASSWORD.</blockquote><p>(<b>slug</b> object)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
+<blockquote>Return Base64-encoded MD5 checksum of SALT concatenated with PASSWORD.</blockquote><p>(<b>slug</b> x)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
 <blockquote>Get short, unique, urlified name of OBJECT.</blockquote><p>(<b>slug-dao</b> class slug)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Select DAO of CLASS having "slug" column set to SLUG.</blockquote><p><b>SLUGIFY</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p><b>START-HUNCHENTOOT</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
index 54ea08d..c7e36f6 100644 (file)
@@ -14,7 +14,7 @@ invalid (i.e. nonexistent, already used, or more than 5 days old).</blockquote><
 <blockquote>Create new activation ticket for PASSENGER.
 
 Used in new user registration and in password recovery process.
-Returns activation ticket as string.</blockquote><p>(<b>id</b> object)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
+Returns activation ticket as string.</blockquote><p>(<b>id</b> x)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
 <blockquote>Numeric ID or :NULL for DAOs and, if it makes sense, other objects.
 
 Usually it will be a reader method automatically defined for ID column of a DAO.</blockquote><p>(<b>invite-passenger</b> parent email &rest initargs)&nbsp;&nbsp;&nbsp;<i>function</i></p>
index 24caae3..76f38cb 100644 (file)
@@ -3,81 +3,83 @@
 <p>(<b>apply-term</b> item term &key value order)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Apply TERM to ITEM, optionally setting its value to VALUE.</blockquote><p><b>cl-store-valued-taxonomy</b>&nbsp;&nbsp;&nbsp;<i>class</i></p>
 <blockquote>Valued taxonomy that by default encodes/decodes almost any Lisp object with CL-STORE as BASE64 string.</blockquote><blockquote>Class precedence list: <tt> cl-store-valued-taxonomy valued-taxonomy taxonomy standard-object t</tt></blockquote>
-<blockquote>Class init args: <tt> :name :site-dao-class :item-dao-class :encoder :decoder</tt></blockquote>
+<blockquote>Class init args: <tt> :name :item-dao-class :encoder :decoder</tt></blockquote>
 <p>(<b>deftaxonomy</b> name (&optional (class (quote taxonomy))) &rest args)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Defines taxonomy named NAME, with class CLASS and initargs ARGS, and remembers it in *TAXONOMIES*.
 
 NAME is symbol or string, which will be transformed to a keyword anyway.</blockquote><p><b>DESCRIPTION</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p>(<b>ensure-taxonomy</b> taxonomy)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>If TAXONOMY is a taxonomy object, return it, otherwise find and return taxonomy named TAXONOMY.</blockquote><p>(<b>ensure-term</b> taxonomy site &key text slug create-p)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Find or create term in taxonomy TAXONOMY for site SITE.
+<blockquote>If TAXONOMY is a taxonomy object, return it, otherwise find and return taxonomy named TAXONOMY.</blockquote><p>(<b>ensure-term</b> taxonomy &key text slug create-p)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>Find or create term in taxonomy TAXONOMY.
 
 TEXT is a full text of term; if TEXT is given, CREATE-P is
 non-NIL and term is not found, new term is inserted into
 database.
 
 If SLUG is given instead of TEXT, only search is possible, not
-creation.</blockquote><p>(<b>find-terms</b> &key taxonomy site text slug)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Find list of terms satisfying given keywords.</blockquote><p>(<b>id</b> object)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
+creation.</blockquote><p>(<b>find-terms</b> &key taxonomy text slug)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>Find list of terms satisfying given keywords.</blockquote><p>(<b>id</b> x)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
 <blockquote>Numeric ID or :NULL for DAOs and, if it makes sense, other objects.
 
 Usually it will be a reader method automatically defined for ID column of a DAO.</blockquote><p><b>ITEM-DAO-CLASS</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p>(<b>item-terms</b> item &optional taxonomy)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>List TERMs associated with ITEM in given TAXONOMY.
 
-If TAXONOMY is not given, returns terms in all taxonomies.</blockquote><p>(<b>new-term</b> taxonomy site text &optional parent)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Create new term in SITE for TAXONOMY, with full name TEXT.</blockquote><p>(<b>order-item-terms</b> item terms &key taxonomy null-other-terms)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+If TAXONOMY is not given, returns terms in all taxonomies.</blockquote><p>(<b>new-term</b> taxonomy text &optional parent)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>Create new term in TAXONOMY, with full name TEXT.</blockquote><p>(<b>order-item-terms</b> item terms &key taxonomy null-other-terms)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Set TERMS (a list of terms or term IDs), associated with ITEM, in given order.
 
 If NULL-OTHER-TERMS is not NIL, terms not listed in TERMS get their
 order column set to NULL.  If TAXONOMY is given, restrict changes to
-terms of given taxonomy.</blockquote><p>(<b>setup-taxonomy-sql</b> &key site item)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+terms of given taxonomy.</blockquote><p>(<b>setup-taxonomy-sql</b> &key item)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>List of SQL statements, suitable for TRANE-COMMON:EXECUTE*, to initialize database for Trane Taxonomy module.
 
-SITE and ITEM are optional arguments that, if given, specify foreign
-key reference on term's site and associated item_id columns.  Any of
-those can be a DAO class or a symbol naming one, or a list literally
-specifying S-SQL's foreign key (as for :CREATE-TABLE
-sql-op :REFERENCES constraint).</blockquote><p><b>SITE-DAO-CLASS</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
-<p>(<b>slug</b> object)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
+ITEM is an optional arguments that, if given, specifies foreign key
+reference on term's associated item_id columns.  It can be a DAO
+class, a symbol naming one, or a list literally specifying S-SQL's
+foreign key (as for :CREATE-TABLE sql-op :REFERENCES constraint).</blockquote><p>(<b>slug</b> x)&nbsp;&nbsp;&nbsp;<i>generic-function</i></p>
 <blockquote>Get short, unique, urlified name of OBJECT.</blockquote><p><b>taxonomy</b>&nbsp;&nbsp;&nbsp;<i>class</i></p>
 <blockquote>Base taxonomy class.
 
 Taxonomy has a name (symbol or string, which is transformed to a
-keyword by DEFTAXONOMY), and refers to DAO classes of taxonomy's
-SITE and ITEM.  DAO classes are required to have an integer
-primary key, accessible by reader named ID.</blockquote><blockquote>Class precedence list: <tt> taxonomy standard-object t</tt></blockquote>
-<blockquote>Class init args: <tt> :name :site-dao-class :item-dao-class</tt></blockquote>
+keyword by DEFTAXONOMY), and refers to DAO classes of taxonomy's ITEM.
+DAO classes are required to have an integer primary key, accessible by
+reader named ID.</blockquote><blockquote>Class precedence list: <tt> taxonomy standard-object t</tt></blockquote>
+<blockquote>Class init args: <tt> :name :item-dao-class</tt></blockquote>
 <p>(<b>taxonomy</b> term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>TERM's taxonomy object</blockquote><p><b>TAXONOMY-NAME</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p>(<b>taxonomy-slug</b> taxonomy)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Return name of taxonomy for database or URL (lowercased string).
 
 Applicable to taxonomy objects, symbols and strings.</blockquote><p><b>term</b>&nbsp;&nbsp;&nbsp;<i>class</i></p>
-<blockquote>Class for a term associated with taxonomy and a site.</blockquote><blockquote>Class precedence list: <tt> term standard-object t</tt></blockquote>
-<blockquote>Class init args: <tt> :text :site-id :taxonomy-name :description</tt></blockquote>
+<blockquote>Class for a term associated with taxonomy.</blockquote><blockquote>Class precedence list: <tt> term standard-object t</tt></blockquote>
+<blockquote>Class init args: <tt> :text :taxonomy-name :description</tt></blockquote>
 <p>(<b>term-item-ids</b> term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>IDs of items associated with given TERM.</blockquote><p>(<b>term-items</b> term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Items associated with given TERM.</blockquote><p>(<b>term-site</b> term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>TERM's site object, if TERM is associated with a SITE.</blockquote><p><b>TERM-SITE-ID</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
-<p><b>TERM-TAXONOMY-NAME</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
+<blockquote>Items associated with given TERM.</blockquote><p>(<b>term-taxonomy</b> term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+<blockquote>TERM's taxonomy object</blockquote><p><b>TERM-TAXONOMY-NAME</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p><b>TERM-TEXT</b></p>&nbsp;&nbsp;&nbsp;<i><font color="FF0000">undocumented</font></i></p>
 <p>(<b>term-value</b> item term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Returns value that association of ITEM and TERM is set to.
 
 As a second value returns T if an association was found at all,
 NIL otherwise.  This makes it possible to tell between an
-association with a NIL value and no association at all.</blockquote><p>(setf (<b>term-value</b> item term) new-value)&nbsp;&nbsp;&nbsp;<i>function</i></p>
+association with a NIL value and no association at all.
+
+Third value is a term ordering value, if ordering is set.</blockquote><p>(setf (<b>term-value</b> item term) new-value)&nbsp;&nbsp;&nbsp;<i>function</i></p>
 <blockquote>Set new value for association of ITEM and TERM.
 
 New association between ITEM and TERM is established if it was
 not present before.</blockquote><p>(<b>unbind-term</b> item term)&nbsp;&nbsp;&nbsp;<i>function</i></p>
-<blockquote>Deletes association between ITEM and TERM.</blockquote><p><b>valued-taxonomy</b>&nbsp;&nbsp;&nbsp;<i>class</i></p>
+<blockquote>Deletes association between ITEM and TERM.
+
+If PURGE-EMPTY is non-NIL (default), deletes also from TERM table if
+no more items refer to this term.</blockquote><p><b>valued-taxonomy</b>&nbsp;&nbsp;&nbsp;<i>class</i></p>
 <blockquote>Taxonomy where items applied to terms may have values.
 
 Defines encoder and decoder function slots, which are responsible
 for translating value from a Lisp value to DB-safe string.  By
 default it is identity function, which means values need to be
 strings.</blockquote><blockquote>Class precedence list: <tt> valued-taxonomy taxonomy standard-object t</tt></blockquote>
-<blockquote>Class init args: <tt> :name :site-dao-class :item-dao-class :encoder :decoder</tt></blockquote>
+<blockquote>Class init args: <tt> :name :item-dao-class :encoder :decoder</tt></blockquote>
 <font size=-1><p>Documentation generated by <a href="http://homepage.mac.com/svc/lispdoc/">lispdoc</a> running on Clozure Common Lisp</p></font></body></html>
\ No newline at end of file
index 996eb45..689a322 100644 (file)
@@ -16,6 +16,7 @@ digraph "cl-trane" {
     "postmodern" -> "cl-postgres";
     "trane-passengers" -> "trane-common";
     "trane-common" -> "md5";
+    "trane-common" -> "cl-qprint";
     "trane-common" -> "cl-base64";
     "trane-common" -> "py-configparser";
     "py-configparser" -> "parse-number";
@@ -58,6 +59,7 @@ digraph "cl-trane" {
     "puri" [style=solid];
     "iterate" [style=solid];
     "py-configparser" [style=solid];
+    "cl-qprint" [style=solid];
     "trane-common" [penwidth=2,style=solid,fontsize=12];
     "postmodern" [style=solid];
     "trane-passengers" [penwidth=2,style=solid,fontsize=12];
index 92692b7..f09b376 100644 (file)
Binary files a/doc/dependency-graph.pdf and b/doc/dependency-graph.pdf differ
dissimilarity index 96%
index c5085f0..77ece4e 100644 (file)
Binary files a/doc/dependency-graph.png and b/doc/dependency-graph.png differ