Commit Graph

27 Commits

Author SHA1 Message Date
Jesse Beder
1cde7fbfc0 Switched from loading test files to testing specific parsing constructs. The tests don't fully cover the span (eventually I'll add more, maybe), but there's a bunch there.
More to the point, the yaml-reader program doesn't do any file IO, so it doesn't require a specific working directory.
2009-05-31 06:36:01 +00:00
Jesse Beder
d98f9d8713 Removed throw() specifier in Exception (I don't remember putting it in). This may solve a gcc error (I haven't tested it yet) or it may break it further. 2009-01-01 20:14:32 +00:00
Jesse Beder
14cdec770c Added more natural ways to parse boolean values (based on the YAML spec).
(Thanks to Vadim Zeitlin)
2008-09-25 00:15:40 +00:00
Jesse Beder
9d403d08f0 2008-09-11 03:48:04 +00:00
Jesse Beder
09d7ab365f Replaced the queue of Token pointers with values.
We were getting memory leaks (as told by the CRT detectors, which I also added), and there's really no reason (as long as we're careful) to use pointers there.
2008-07-20 05:02:01 +00:00
Jesse Beder
2eab1e025e Moved the testing source to the yaml-reader folder. 2008-07-14 05:18:25 +00:00
Jesse Beder
2e2c489e29 Set the yaml-reader project to link to the yamlcpp library. 2008-07-14 05:08:46 +00:00
Jesse Beder
cadc04ce47 Moved all code to src/ and include/ directories. 2008-07-14 04:33:30 +00:00
Jesse Beder
c0c55fe50b Removed the (unused) 'required' flag from simple keys (the parser should take care of this, not the scanner). 2008-07-08 18:34:26 +00:00
Jesse Beder
115cf601e9 Added a (recursive) ordering, so we have a canonical output that we can compare. 2008-07-06 00:06:36 +00:00
Jesse Beder
2a0ddc8cb2 Wrote some tests, but they don't work because it doesn't output maps in a canonical form. 2008-07-05 19:00:58 +00:00
Jesse Beder
ed488e5197 Removed the document class (since it's really just a root node, and that's it). 2008-07-04 22:56:43 +00:00
Jesse Beder
d56b54b34f Added an iterator class that can iterate through both sequence and map nodes. 2008-07-02 01:22:39 +00:00
Jesse Beder
4c5a488f68 Tags, anchors, and aliases are all parsed now. 2008-07-01 06:28:10 +00:00
Jesse Beder
121c2e577f Finished parsing of basic data types (scalar, sequence, map). 2008-06-30 23:57:58 +00:00
Jesse Beder
b6a0ef207b Started the parser. 2008-06-30 06:51:22 +00:00
Jesse Beder
ff99f85a6d Moved the input stream, together with line/column info, into its own class, which allowed some other stuff just to pass the stream, and not have to be a member of Scanner. 2008-06-29 06:32:13 +00:00
Jesse Beder
6c193d6fbd Moved the scalar-related functions to their own file. 2008-06-29 03:11:25 +00:00
Jesse Beder
11706abbb7 Added simple keys.
There's a bug (and question): should we test simple keys' validity BEFORE stuff or AFTER stuff?
2008-06-28 06:36:59 +00:00
Jesse Beder
49a75b2d78 Added quoted scalars (with escaping).
Refactored some common whitespace-parsing code in scanning both scalars.
Implemented the flow collection tokens.
2008-06-27 23:11:46 +00:00
Jesse Beder
8fca02fb2a Split off the specific regular expressions, and the specialized token-scanning functions, into their own files. 2008-06-27 19:13:03 +00:00
Jesse Beder
4e435b1321 Wrote a simplified regular expression parser to make life easier (it only does single matches; i.e., no one-or-more matches, etc.).
Fixed some of the whitespace/line break matching.
2008-06-27 08:20:41 +00:00
Jesse Beder
a3961d047f Continued working on scanner.
We're now using exceptions for errors, and scanning/pushing tokens is exception-safe (using a set of "limbo tokens").
2008-06-26 19:30:11 +00:00
Jesse Beder
8ae7b48188 Started the scanner. 2008-06-26 09:05:28 +00:00
Jesse Beder
bcbca461de Beginning of first attempt to parse.
Will be completely wiped, I think, in favor of a Scanner (to tokens), then Parser mechanism.
2008-06-26 06:49:50 +00:00
Jesse Beder
4ed7f62431 Preliminary setup - basic data structures are there. 2008-06-25 23:00:18 +00:00
Jesse Beder
e22eea26b1 2008-06-25 22:46:18 +00:00