miller/c/input
2015-05-28 17:06:19 -04:00
..
file_reader_mmap.c renames & line-length reduction 2015-05-28 17:06:19 -04:00
file_reader_mmap.h neatens 2015-05-22 17:07:53 -04:00
lrec_reader_mmap.h neatens 2015-05-22 17:07:53 -04:00
lrec_reader_mmap_csv.c README.md files 2015-05-27 17:31:55 -04:00
lrec_reader_mmap_dkvp.c lrec-parser file reorg 2015-05-26 07:46:27 -04:00
lrec_reader_mmap_nidx.c lrec-parser file reorg 2015-05-26 07:46:27 -04:00
lrec_reader_mmap_xtab.c mmap csv checkpoint 2015-05-26 21:44:31 -04:00
lrec_reader_stdio.h neatens 2015-05-22 17:07:53 -04:00
lrec_reader_stdio_csv.c mmap csv, very quick and dirty 2015-05-26 22:14:32 -04:00
lrec_reader_stdio_dkvp.c lrec-parser file reorg 2015-05-26 07:46:27 -04:00
lrec_reader_stdio_nidx.c lrec-parser file reorg 2015-05-26 07:46:27 -04:00
lrec_reader_stdio_xtab.c lrec-parser file reorg 2015-05-26 07:46:27 -04:00
lrec_readers.h renames & line-length reduction 2015-05-28 17:06:19 -04:00
README.md doc 2015-05-28 08:40:16 -04:00

Miller file/record input

These are readers for Miller file formats, stdio and mmap versions. The stdio and mmap record parsers are similar but not identical, due to inversion of processing order: getting an entire mallocked line and then splitting it by separators in the former case, versus spltting while discovering end of line in the latter case. The code duplication could be largely removed by having the mmap readers find end-of-lines, then split up the lines -- however that requires two passes through input strings and for performance I want just a single pass.

While there are separate record-writers for CSV and pretty-print, there is just a common record-reader: pretty-print is CSV with field separator being a space, and allow_repeat_ifs set to true.