28 Commits

Author SHA1 Message Date
Felix Krause
5444572543 Fixed bugs with handling scalars
* Fixed a problem with ':' followed by a plain-safe char
   after space within a plain scalar
 * Fixed block scalar handling in indented block context
2016-03-11 17:56:42 +01:00
Felix Krause
3a8781ba6e Handle more indented lines in folded block scalars 2016-03-10 21:20:14 +01:00
Felix Krause
491c5f5e3a Fixed a problem with implicit keys and properties 2016-03-10 19:59:56 +01:00
Felix Krause
99ece33b8b Parser: Use sets instead of arrays where feasible 2016-03-09 20:29:18 +01:00
Felix Krause
a6ce61d3c4 Fixed bug related to block sequence indentation 2016-03-09 20:26:16 +01:00
Felix Krause
a6fff2d7af Parser: Fixed bugs in multiline and block scalar 2016-03-04 21:51:37 +01:00
Felix Krause
54703ae577 Fixed a problem with comment after plain scalar 2016-03-04 19:07:12 +01:00
Felix Krause
a720abdc44 Parser: fixed problems with block scalars
* Block scalar as root node no longer leads to an error
 * Block scalar does not get a ! tag by default
2016-03-04 17:45:47 +01:00
Felix Krause
6b46cffbbb Replaced \x0A with \l in strings 2016-02-26 19:28:28 +01:00
Felix Krause
c9dae4430c Fixes #5 2016-02-25 21:16:03 +01:00
Felix Krause
33a7f93480 Code cleanup; reduced compiler hints 2016-02-19 18:25:01 +01:00
Felix Krause
f2f340c0b6 Fixes #2 2016-02-19 17:31:57 +01:00
Felix Krause
43e10f496a Fixes #3 2016-02-18 22:32:25 +01:00
Felix Krause
bc9229d0c5 Fixes #1 2016-02-18 22:14:24 +01:00
Felix Krause
c6c13eb044 Better doc index. YamlStream now an object.
* Also various fixes to serialization and presentation
2016-02-12 19:53:25 +01:00
Felix Krause
b7828884bd Documentation fixes.
* Some typo fixes in code
 * nim documentation now generates API doc with source links
 * presenter now uses "" if a string starts with @ or `
 * Removed some outdated stuff
2016-01-24 19:15:50 +01:00
Felix Krause
a08f4c1e4e Sanitized exceptions and raises pragmas
* Added raises pragma to every proc in yaml.nim
 * Properly encapsulate exceptions from YamlStreams
 * Discovered a Nim compiler bug and added a workaround
 * Added possibility to query line, column and line content from
   YamlParser
 * Updated rst documentation
 * Actually call callback in fastparse if available
 * Fixed parsing YAML version
2016-01-24 18:24:09 +01:00
Felix Krause
fdcc699768 Removed old lexer/parser impl in favor of new one
* fastparse now used for everything
 * private/[lexer|parser].nim gone
 * Made fastparse use YamlParser object
 * Got all tests working with fastparse
 * Some more smaller changes to API
2016-01-24 11:44:10 +01:00
Felix Krause
971218314e fastparse: made it pass the parsing tests
* Scan for implicit map key as soon as a property is encountered
 * Proper handling of node properties throughout parser
 * Fixed an issue where plain scalars sometimes contained garbage
   when yielded
 * Catch reserved chars @ and `
 * Fixed some test cases
 * Made parser test cases use fastparse
2016-01-23 17:44:50 +01:00
Felix Krause
7f8afef3d4 Handle line folding in double quoted strings 2016-01-23 15:29:45 +01:00
Felix Krause
954aeafd15 Implemented block scalar, improved comments 2016-01-23 14:09:52 +01:00
Felix Krause
573d4788c7 Properly parse flow sequences 2016-01-22 23:53:42 +01:00
Felix Krause
8c91abc917 fastparse: Implemented explicit keys 2016-01-22 23:44:26 +01:00
Felix Krause
c89f07e1fd fastparse: Improvements to flow parsing 2016-01-22 22:40:22 +01:00
Felix Krause
f670c5c86b fastparse: Support flow object as implicit keys 2016-01-22 21:36:11 +01:00
Felix Krause
7af566c3a0 Handle quoted strings in flow style.
* Also use fastparse for benchmarking
2016-01-21 19:23:45 +01:00
Felix Krause
bb5804cd15 FastParser: Implemented flow style
* still missing: block scalars and explicit map keys
2016-01-20 23:38:39 +01:00
Felix Krause
55d5cfcbf9 Started re-implementing parser
* Made TagLibrary a ref object
 * Started writing fastparse.nim, a parser aimed to deliver
   much faster speeds than the current implementation. It
   currently is only able to parse block content
2016-01-20 21:18:28 +01:00