anchor.diff:    FIELD: The class object field definition of the field."
     (let* ((public-accessor-name (proto-slot-function-name proto-type public-slot-name :map-get))
            (public-remove-name (proto-slot-function-name proto-type public-slot-name :map-rem))
  +         (method-accessor-name (fintern "~A-gethash" public-slot-name))
  +         (method-remove-name (fintern "~A-remhash" public-slot-name))
            (hidden-accessor-name (fintern "~A-~A"  proto-type slot-name))
            (key-type (map-descriptor-key-type (find-map-descriptor (proto-class field))))
            (val-type (map-descriptor-val-type (find-map-descriptor (proto-class field))))
  
positive.code:                 (if (= 0 (hash-table-count (,hidden-accessor-name ,obj)))
                      (setf (bit (,is-set-accessor ,obj) ,index) 0)))))
  
          (export '(,public-accessor-name
                    ,public-remove-name))))))
  
  (defun make-structure-class-forms-lazy (proto-type field public-slot-name)
    "Makes forms for the lazy fields of a proto message using STRUCTURE-CLASS.
  
negative.code:                    (type ,val-type ,new-val))
            (setf (bit (,is-set-accessor ,obj) ,index) 1)
            (setf (gethash ,new-key (,hidden-accessor-name ,obj)) ,new-val))
  
          ;; If the map's value type is a message, then the default value returned
          ;; should be nil. However, we do not want to allow the user to insert nil
          ;; into the map, so this binding only applies to the clear and get functions.
  