21 lines
		
	
	
		
			648 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			648 B
		
	
	
	
		
			Factor
		
	
	
! Copyright (C) 2007 Daniel Ehrenberg
 | 
						|
! See http://factorcode.org/license.txt for BSD license.
 | 
						|
USING: delegate sequences.private sequences assocs io ;
 | 
						|
IN: delegate.protocols
 | 
						|
 | 
						|
PROTOCOL: sequence-protocol
 | 
						|
like new-sequence 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 ;
 | 
						|
 | 
						|
PROTOCOL: input-stream-protocol
 | 
						|
stream-read1 stream-read-unsafe stream-read-partial-unsafe
 | 
						|
stream-readln stream-read-until stream-contents* ;
 | 
						|
 | 
						|
PROTOCOL: output-stream-protocol
 | 
						|
stream-flush stream-write1 stream-write stream-nl ;
 |