(:method (attribute)
(flet ((disp (val &rest args)
(apply #'display *display* val
:activate (attribute-active-descriptions attribute)
:deactivate (attribute-inactive-descriptions attribute)
args)))
(:method (attribute)
(flet ((disp (val &rest args)
(apply #'display *display* val
:activate (attribute-active-descriptions attribute)
:deactivate (attribute-inactive-descriptions attribute)
args)))
- (eql val (attribute-object attribute)))
- (generic-format *display* (funcall (attribute-value-formatter attribute) val))
+ (equal val (attribute-object attribute)))
+ (progn (generic-format *display* "~A"(funcall (attribute-value-formatter attribute) val))
+ #+nil(break "using generic format because val is object and there is no active attributes."))
+
((slot-boundp attribute 'active-attributes)
(disp val :attributes (slot-value attribute 'active-attributes)))
(t
((slot-boundp attribute 'active-attributes)
(disp val :attributes (slot-value attribute 'active-attributes)))
(t
-(define-layered-method display-attribute :around
- ((attribute standard-attribute))
- (funcall-with-layer-context
+(define-layered-method display-attribute :around ((attribute standard-attribute))
+ (with-attribute-context (attribute)
+ (call-next-method))
+ #+nil(funcall-with-layer-context
(modify-layer-context (current-layer-context)
:activate (attribute-active-descriptions attribute)
:deactivate (attribute-inactive-descriptions attribute))
(modify-layer-context (current-layer-context)
:activate (attribute-active-descriptions attribute)
:deactivate (attribute-inactive-descriptions attribute))
(define-display :around ((description t) (display null) object)
(with-output-to-string (*standard-output*)
(define-display :around ((description t) (display null) object)
(with-output-to-string (*standard-output*)