Commit Graph

128 Commits

Author SHA1 Message Date
Felix Krause 9290ca0d91 Load objects with transient fields 2016-10-19 22:04:46 +02:00
Felix Krause 3ab3dc7ad0 Dump variant objects with transient fields
* tuples not working yet
 * loading not woring yet
 * added tests
2016-10-15 17:58:29 +02:00
Felix Krause 29352fa4fe Use global tag handle for NimYAML
* NimYAML now uses the tag prefix tag:nimyaml.org,2016:
 * That tag handle is shortened to !n! when presenting
 * Also fixed some minor bugs dealing with tag handles
2016-10-10 20:16:54 +02:00
Felix Krause 98c16afb47 This might finally fix travis 2016-10-09 15:53:47 +02:00
Felix Krause ea90b4d2db Debugging remaining travis issues 2016-10-09 15:42:43 +02:00
Felix Krause 636ee81295 Still working on travis 2016-10-09 15:37:20 +02:00
Felix Krause e1f3ac9b07 Another try to fix travis build 2016-10-09 15:30:50 +02:00
Felix Krause d2e5c9e0a9 Hopefully fixes travis build 2016-10-09 15:21:27 +02:00
Felix Krause 846b836e92 Integrated parser and quickstart tests
* Now executed when calling `nim tests`
 * Refactored parser tests to use unittest
 * Fixed some pwd issues in tests
2016-10-09 15:05:18 +02:00
Felix Krause 4bde3a7986 Fixed issues in quickstart and taglib
* Updated expected YAML in 02
 * Fixed duplicate TagIds in taglib
2016-10-09 11:48:52 +02:00
Felix Krause 0f2e077b87 Added automatic test for quickstart snippets
* There are errors which indicate real bugs!
2016-10-08 23:35:33 +02:00
Felix Krause 3942e80d9b Improved error messages and test them. 2016-09-24 16:45:49 +02:00
Felix Krause 2ad41d349e Improved and fixed issues with error reporting 2016-09-23 15:42:24 +02:00
Felix Krause d987b607e5 Check for custom object errors when loading
* Ensure no duplicate fields
 * Ensure no missing fields
 * Ensure no unknown fields
 * Implemented for both tuples and objects,
   including variant objects
2016-09-21 15:40:03 +02:00
Felix Krause 12960b2e31 Restructuring: no more includes 2016-09-20 21:53:38 +02:00
Felix Krause 8b3f8f5282 Made test names more consistent 2016-09-20 19:22:31 +02:00
GaveUp 6f8dfdcd00 Code cleanup per comments 2016-09-19 15:51:33 -05:00
GaveUp 2c470c8aa9 Add octal/hex support. Add multi doc support. 2016-09-19 14:40:03 -05:00
Felix Krause 2f3a809738 Support JS string output in presenter 2016-09-19 19:33:29 +02:00
Felix Krause 2bb7f45354 Improved tests, benchs, shallowCopies 2016-09-14 18:31:09 +02:00
Felix Krause 92504c1893 JSON tests working again. Other tests TODO 2016-09-13 10:39:54 +02:00
Felix Krause 92f5a7a6fd got parse.nim to compile again
* it is still pretty broken
2016-09-12 21:38:56 +02:00
Felix Krause a1f900ae44 Enhanced empty line processing 2016-09-11 19:20:02 +02:00
Felix Krause b9286fa550 Implemented lookahead 2016-09-11 18:23:47 +02:00
Felix Krause 4e97e53489 Implemented anchors and aliases 2016-09-11 13:04:10 +02:00
Felix Krause 4d1a444f61 Implemented tag handles 2016-09-11 12:52:24 +02:00
Felix Krause 279d233c4f Implemented adjacent values in flow style 2016-09-11 12:13:51 +02:00
Felix Krause 383f1ab016 Made lexer non-generic 2016-09-11 11:28:05 +02:00
Felix Krause 8e7b3b32bb lexer: Flow indicators 2016-09-10 17:33:58 +02:00
Felix Krause ba02b41555 lexer: worked on block scalars and stuff 2016-09-10 17:19:37 +02:00
Felix Krause 79f432a27d lexer: implemented quoted scalars 2016-09-10 13:38:42 +02:00
Felix Krause 68a157e173 First compiling version (incomplete) 2016-09-10 12:38:03 +02:00
Felix Krause d51872f9e7 Started work on new lexer 2016-09-10 10:30:40 +02:00
Felix Krause ad18db5113 Do not use first class iterators in serialization
* needed for JS backend
2016-09-01 20:56:34 +02:00
Felix Krause 34cbe61479 Got rid of lots of compiler warnings 2016-08-17 22:50:37 +02:00
Felix Krause 01b34290b7 Parser refactoring
* refactored parser to not use first class iterators
   (not available for JS backend)
 * Current state misses flow style handling and fails tests
2016-08-15 21:30:49 +02:00
Felix Krause 7cad7b5478 Fixed and properly implemented variant objects 2016-06-08 19:15:50 +02:00
Felix Krause 273093e390 improved setTagUri
* renamed setTagUriForType to setTagUri
 * generated TagId is now const (can be used in case etc)
 * Uses compile-time counter independent from tag library
2016-04-21 18:58:53 +02:00
Felix Krause 4ca4b2c87e Support nil strings and seqs 2016-04-04 21:21:24 +02:00
Felix Krause 58b9b92895 Support int, uint and float types. 2016-04-04 20:44:16 +02:00
Felix Krause 6ad7e33bb5 Reduced dead code and compiler warnings 2016-04-03 11:45:48 +02:00
Felix Krause f2c83cc170 Support array types. Updated documentation 2016-04-03 11:29:49 +02:00
Felix Krause a267f73e0a Serialization: support sets 2016-04-02 18:29:26 +02:00
Felix Krause cde346b85c Switched to indentation of 2 spaces 2016-04-02 17:48:22 +02:00
Felix Krause 5ec086081c Implemented serialization of OrderedMap 2016-03-25 22:22:42 +01:00
Felix Krause 42ddfbe5c5 Fixes #13.
* Separated into representObject and in representChild and
   representObject. Makes it possible for multiple types to
   use the same representObject proc.
2016-03-25 21:27:41 +01:00
Felix Krause 28ccdcc5a6 Handle block scalars line-per-line. Fixes #10 2016-03-25 18:17:37 +01:00
Felix Krause 4d4e3c94e1 Added fplDocument, fixes #11
* Do not use -1 for unknown indentation, because the document level is -1.
 * Use const UnknownIndentation in code instead of magic number
 * Added fplDocument level which is used as root of the ancestry
 * Added debugFail() template to better locate internal errors
2016-03-19 22:45:24 +01:00
Felix Krause ae933d90a1 Fixes to block scalars and yamlTestSuite
* Properly handle empty block scalars and trailing lines
 * Fixed a bug in yamlTestSuite that led to lots of open file handles
2016-03-18 22:29:35 +01:00
Felix Krause 1c61486739 Fixed small bugs
* allow '!' at beginning of tag URI in %TAG directive
 * recognise \t as start of more indented line in block flow scalar
 * Made testEventParser more robust
2016-03-16 19:20:18 +01:00