/[defdoc]/DefDoc/src/elements/abbreviations.lisp
ViewVC logotype

Contents of /DefDoc/src/elements/abbreviations.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (show annotations)
Sun Feb 15 05:01:44 2004 UTC (10 years, 2 months ago) by rjain
Branch: MAIN
CVS Tags: HEAD
additions and tweaks for the defdoc-generated defdoc website:
elements that are abbreviations for more complex sequences of elements
hyperlink document element
small-caps style element
subtitle in documents
1 (in-package :defdoc.elements)
2
3 (defclass abbreviation (horizontal-element horizontal-container
4 flowing-container-mixin)
5 ()
6 (:documentation "Base class for all abbreviations."))
7
8 (defmacro defabbreviation (name &rest expansion)
9 `(prog1
10 (defclass ,name (abbreviation)
11 ((contents :type null :allocation :class)))
12 (let ((.value. (list ,@expansion)))
13 (defmethod contents ((instance ,name))
14 .value.))))
15
16 (defmethod shared-initialize :around ((instance abbreviation) slots &rest keys)
17 (remf keys 'contents)
18 (call-next-method instance slots keys))

  ViewVC Help
Powered by ViewVC 1.1.5