anchor.diff:          :fields (loop for (name tc) across members
                         collect (cons (lispy-name name)
                                       (funcall function tc arg)))))))
  +
  +
  +(defmethod struct-out ((struct CORBA:struct) typecode fn dest)
  +  (let* ((params (typecode-params typecode))
  +         (members (tcp-members params)))
  +    (loop for (name tc) across members
  +         do (funcall fn (struct-get struct name) tc dest))))
  +
  +#|
  +(defmethod struct-out ((struct generic-struct) typecode fn dest)
  +  (let* ((params (typecode-params typecode))
  +         (members (tcp-members params)))
  +    (loop for (name . value) in (fields struct)
  +         do (funcall fn (field-typecode name members) value dest))))
  +
  +(defun field-typecode (name members)
  +  (doseq (m members)
  +         (loop for (field-name tc) across members
  +            when (string-equal name field-name)
  +            return tc)))
  +|#
  +
  +
   
   
   (defmethod struct-get ((struct generic-struct) (field symbol))
  
positive.code: ;;;; clorb-struct.lisp -- CORBA Structure support
  ;; $Id: clorb-struct.lisp,v 1.11 2002/10/05 11:17:23 lenst Exp $
  
  (in-package :clorb)
  
  
negative.code: 
  
  ;; old:
  ;;#+unused-defuns
  (defun struct-typecode (id name &rest fields)
    (make-typecode :tk_struct
                   id
  