X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fsset.lisp;h=2b1b2904682242f8accd12848f6541ccca518e16;hb=dfa55a883f94470267b626dae77ce7e7dfac3df6;hp=d3a27399c154f84f44ca49fbf86ff41d4881329e;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/compiler/sset.lisp b/src/compiler/sset.lisp index d3a2739..2b1b290 100644 --- a/src/compiler/sset.lisp +++ b/src/compiler/sset.lisp @@ -15,18 +15,15 @@ (in-package "SB!C") -(file-comment - "$Header$") - ;;; Each structure that may be placed in a SSet must include the ;;; SSet-Element structure. We allow an initial value of NIL to mean ;;; that no ordering has been assigned yet (although an ordering must ;;; be assigned before doing set operations.) -(defstruct (sset-element (:constructor nil)) +(defstruct (sset-element (:constructor nil) + (:copier nil)) (number nil :type (or index null))) -(defstruct (sset (:constructor make-sset ()) - (:copier nil)) +(defstruct (sset (:constructor make-sset ())) (elements (list nil) :type list)) (defprinter (sset) (elements :prin1 (cdr elements))) @@ -84,8 +81,8 @@ (setf (sset-elements res) (copy-list (sset-elements set))) res)) -;;; Perform the appropriate set operation on Set1 and Set2 by destructively -;;; modifying Set1. We return true if Set1 was modified, false otherwise. +;;; Perform the appropriate set operation on SET1 and SET2 by destructively +;;; modifying SET1. We return true if SET1 was modified, false otherwise. (declaim (ftype (function (sset sset) boolean) sset-union sset-intersection sset-difference)) (defun sset-union (set1 set2)