]> gitweb.factorcode.org Git - factor.git/blob - basis/xml/state/state.factor
Merge branch 'master' into experimental
[factor.git] / basis / xml / state / state.factor
1 ! Copyright (C) 2005, 2009 Daniel Ehrenberg
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: accessors kernel namespaces io math ;
4 IN: xml.state
5
6 TUPLE: spot
7     char line column next check version-1.0? stream ;
8
9 C: <spot> spot
10
11 : get-char ( -- char ) spot get char>> ;
12 : set-char ( char -- ) spot get swap >>char drop ;
13 : get-line ( -- line ) spot get line>> ;
14 : set-line ( line -- ) spot get swap >>line drop ;
15 : get-column ( -- column ) spot get column>> ;
16 : set-column ( column -- ) spot get swap >>column drop ;
17 : get-next ( -- char ) spot get next>> ;
18 : set-next ( char -- ) spot get swap >>next drop ;
19 : get-check ( -- ? ) spot get check>> ;
20 : check ( -- ) spot get t >>check drop ;
21 : version-1.0? ( -- ? ) spot get version-1.0?>> ;
22 : set-version ( string -- )
23     spot get swap "1.0" = >>version-1.0? drop ;
24
25 SYMBOL: xml-stack
26
27 SYMBOL: depth
28
29 SYMBOL: interpolating?
30
31 SYMBOL: in-dtd?
32
33 SYMBOL: pe-table
34
35 SYMBOL: extra-entities