! Copyright (C) 2005, 2009 Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs combinators
-combinators.short-circuit fry generalizations inverse kernel
-namespaces sequences sequences.generalizations sorting strings
-unicode.categories xml.data xml.syntax xml.syntax.private ;
+combinators.short-circuit inverse kernel namespaces sequences
+sequences.generalizations sorting strings unicode xml.data ;
+USE: xml.syntax.private ! required but does not reference words
IN: xml.syntax.inverse
: remove-blanks ( seq -- newseq )
: >enum ( assoc -- enum )
! Assumes keys are 0..n
- sort-keys values <enum> ;
+ sort-keys values <enumerated> ;
: undo-xml ( xml -- quot )
[undo-xml] '[ H{ } clone [ _ with-variables ] keep >enum ] ;