factor/extra/delegate/protocols/protocols.factor

26 lines
953 B
Factor
Raw Normal View History

! Copyright (C) 2007 Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license.
USING: delegate sequences.private sequences assocs prettyprint.sections
2008-02-11 00:14:42 -05:00
io definitions kernel continuations ;
IN: delegate.protocols
PROTOCOL: sequence-protocol
clone clone-like like new new-resizable nth nth-unsafe
set-nth set-nth-unsafe length set-length lengthen ;
PROTOCOL: assoc-protocol
at* assoc-size >alist set-at assoc-clone-like
delete-at clear-assoc new-assoc assoc-like ;
! assoc-find excluded because GENERIC# 1
! everything should work, just slower (with >alist)
PROTOCOL: stream-protocol
2008-02-11 00:14:42 -05:00
stream-read1 stream-read stream-read-until dispose
stream-flush stream-write1 stream-write stream-format
stream-nl make-span-stream make-block-stream stream-readln
2008-02-09 22:34:42 -05:00
make-cell-stream stream-write-table ;
PROTOCOL: definition-protocol
where set-where forget uses redefined*
synopsis* definer definition ;