! Copyright (C) 2007 Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license.
-USING: delegate sequences.private sequences assocs io ;
+USING: assocs delegate io sequences sequences.private sets ;
IN: delegate.protocols
PROTOCOL: sequence-protocol
at* assoc-size >alist set-at assoc-clone-like
delete-at clear-assoc new-assoc assoc-like ;
+PROTOCOL: set-protocol
+adjoin ?adjoin in? delete set-like fast-set members
+union intersect intersects? diff subset? set= duplicates
+all-unique? null? cardinality clear-set ;
+
PROTOCOL: input-stream-protocol
stream-read1 stream-read-unsafe stream-read-partial-unsafe
stream-readln stream-read-until stream-contents* ;