/[cmucl]/src/hemlock/syntax.lisp
ViewVC logotype

Diff of /src/hemlock/syntax.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1.1.2 by ram, Fri Jul 13 14:56:21 1990 UTC revision 1.1.1.3 by ram, Tue Dec 11 14:36:14 1990 UTC
# Line 164  Line 164 
164  ;;;  ;;;
165  (defun new-cache-attribute (attribute function)  (defun new-cache-attribute (attribute function)
166    (let* ((hash (hash-it attribute function))    (let* ((hash (hash-it attribute function))
167           (values (gethash attribute *character-attributes*))           (values (or (gethash attribute *character-attributes*)
168                         (error "~S is not a defined character attribute."
169                                attribute)))
170           (bucket (svref *character-attribute-cache* hash))           (bucket (svref *character-attribute-cache* hash))
171           (bit (nthcdr (- character-attribute-bucket-size 2) bucket))           (bit (nthcdr (- character-attribute-bucket-size 2) bucket))
172           (end-wins (funcall function (attribute-descriptor-end-value values))))           (end-wins (funcall function (attribute-descriptor-end-value values))))
     (unless values  
       (error "~S is not a defined character attribute." attribute))  
173      (shiftf bit (cdr bit) nil)      (shiftf bit (cdr bit) nil)
174      (setf (svref *character-attribute-cache* hash) bit      (setf (svref *character-attribute-cache* hash) bit
175            (cdr bit) bucket  bit (car bit))            (cdr bit) bucket  bit (car bit))

Legend:
Removed from v.1.1.1.2  
changed lines
  Added in v.1.1.1.3

  ViewVC Help
Powered by ViewVC 1.1.5