]> gitweb.factorcode.org Git - factor.git/blob - basis/simple-flat-file/simple-flat-file.factor
Fix conflict in images vocab
[factor.git] / basis / simple-flat-file / simple-flat-file.factor
1 ! Copyright (C) 2009 Daniel Ehrenberg
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: sequences splitting kernel math.parser io.files io.encodings.ascii biassocs ;
4 IN: simple-flat-file
5
6 : drop-comments ( seq -- newseq )
7     [ "#" split1 drop ] map harvest ;
8
9 : split-column ( line -- columns )
10     "\t" split 2 head ;
11
12 : parse-hex ( s -- n )
13     2 short tail hex> ;
14
15 : parse-line ( line -- code-unicode )
16     split-column [ parse-hex ] map ;
17
18 : process-codetable-lines ( lines -- assoc )
19     drop-comments [ parse-line ] map ; 
20
21 : flat-file>biassoc ( filename -- biassoc )
22     ascii file-lines process-codetable-lines >biassoc ;
23