1 (in-package :lisp-on-lines
)
3 (define-layered-class display-attribute
(standard-attribute)
5 :layered-accessor attribute-label
11 :layered-accessor attribute-label-formatter
12 :initarg
:label-formatter
17 :layered-accessor attribute-value-formatter
18 :initarg
:value-formatter
25 (define-layered-method attribute-label-formatter
:around
(attribute)
26 (or (slot-value attribute
'label-formatter
)
27 (attribute-value (find-attribute (attribute-description attribute
) 'label-formatter
))
28 (error "No Formatter .. fool!")))
30 (define-layered-method attribute-value-formatter
:around
(attribute)
32 (or (slot-value attribute
'value-formatter
)
33 (attribute-value (find-attribute (attribute-description attribute
) 'value-formatter
))
34 (error "No Formatter .. fool!")))