36 lines
		
	
	
		
			948 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			948 B
		
	
	
	
		
			Factor
		
	
	
! Copyright (C) 2005, 2009 Daniel Ehrenberg
 | 
						|
! See http://factorcode.org/license.txt for BSD license.
 | 
						|
USING: accessors kernel namespaces io math ;
 | 
						|
IN: xml.state
 | 
						|
 | 
						|
TUPLE: spot
 | 
						|
    char line column next check version-1.0? stream ;
 | 
						|
 | 
						|
C: <spot> spot
 | 
						|
 | 
						|
: get-char ( -- char ) spot get char>> ;
 | 
						|
: set-char ( char -- ) spot get swap >>char drop ;
 | 
						|
: get-line ( -- line ) spot get line>> ;
 | 
						|
: set-line ( line -- ) spot get swap >>line drop ;
 | 
						|
: get-column ( -- column ) spot get column>> ;
 | 
						|
: set-column ( column -- ) spot get swap >>column drop ;
 | 
						|
: get-next ( -- char ) spot get next>> ;
 | 
						|
: set-next ( char -- ) spot get swap >>next drop ;
 | 
						|
: get-check ( -- ? ) spot get check>> ;
 | 
						|
: check ( -- ) spot get t >>check drop ;
 | 
						|
: version-1.0? ( -- ? ) spot get version-1.0?>> ;
 | 
						|
: set-version ( string -- )
 | 
						|
    spot get swap "1.0" = >>version-1.0? drop ;
 | 
						|
 | 
						|
SYMBOL: xml-stack
 | 
						|
 | 
						|
SYMBOL: depth
 | 
						|
 | 
						|
SYMBOL: interpolating?
 | 
						|
 | 
						|
SYMBOL: in-dtd?
 | 
						|
 | 
						|
SYMBOL: pe-table
 | 
						|
 | 
						|
SYMBOL: extra-entities
 |