diff --git a/basis/tools/scaffold/scaffold.factor b/basis/tools/scaffold/scaffold.factor index 9a49554eb5..6add7a9083 100644 --- a/basis/tools/scaffold/scaffold.factor +++ b/basis/tools/scaffold/scaffold.factor @@ -1,11 +1,11 @@ ! Copyright (C) 2008 Doug Coleman. ! See http://factorcode.org/license.txt for BSD license. USING: accessors alien arrays assocs byte-arrays calendar -classes combinators combinators.short-circuit fry hashtables -help.markup interpolate io io.directories io.encodings.utf8 -io.files io.pathnames io.streams.string kernel math math.parser -namespaces prettyprint quotations sequences sets sorting -splitting strings system timers unicode urls vocabs +classes classes.error combinators combinators.short-circuit fry +hashtables help.markup interpolate io io.directories +io.encodings.utf8 io.files io.pathnames io.streams.string kernel +math math.parser namespaces prettyprint quotations sequences +sets sorting splitting strings system timers unicode urls vocabs vocabs.loader vocabs.metadata words words.symbol ; IN: tools.scaffold @@ -183,6 +183,13 @@ M: object add-using ( object -- ) ] if ] when* ; +: error-description. ( word -- ) + [ $values. ] [ + "{ $description \"Throws " write + name>> dup a/an write " \" { $link " write + write " } \" error.\" }" print + ] bi "{ $error-description \"\" } ;" print ; + : class-description. ( word -- ) drop "{ $class-description \"\" } ;" print ; @@ -194,6 +201,7 @@ M: object add-using ( object -- ) : docs-body. ( word/symbol -- ) { + { [ dup error-class? ] [ error-description. ] } { [ dup class? ] [ class-description. ] } { [ dup symbol? ] [ symbol-description. ] } [ [ $values. ] [ $description. ] bi ]