Alexander Ivanov
ba53fc0494
Load 0 fix #60
2018-08-30 09:21:30 +02:00
Marcus Eriksson
2328289dba
Fixes #54
2018-05-29 19:12:03 +02:00
Jacob MacDonald
4933194dd6
Fix for newer versions of compiler.
...
61720e0df9475af647de171f6b2964c36234961a in the Nim compiler introduced the bug
in this project. In brief, the upstream change flattens `nnkStmtList`s of one
item. Thus, `quote do:` followed by one statement is no longer a nnkStmtList
but whatever that one statement is. This breaks several macro implementations
where a `quote do:` form is initialized and then appended to. Based on Araq's
feedback (https://irclogs.nim-lang.org/02-10-2017.html#21:01:26 ), these
single-statement quotes are now converted into one-element statement lists as
necessary (behavior on old versions of the compiler is maintained).
2017-10-03 15:59:45 +02:00
Felix Krause
8d8464da71
Fixes #43
2017-09-20 18:58:09 +02:00
Felix Krause
37031c4c80
make tests green again
2017-08-30 18:11:18 +02:00
Felix Krause
ff86083461
Fixes #44
2017-08-30 18:04:52 +02:00
Felix Krause
f07cf173dc
Fixed to previous JS adjustments
2017-03-30 17:58:53 +02:00
Felix Krause
7ba95845e0
JS improvements; also added constructObjectDefault
2017-03-29 21:42:07 +02:00
Felix Krause
71b075abf6
Allow backticked field names in macros
2017-03-29 18:38:31 +02:00
Felix Krause
5ebde01ca5
Made tjson and tserialization compile for JS
2017-02-13 17:10:56 +01:00
Felix Krause
0ef9cbf535
Moved private sources to yaml/private
2017-02-06 20:39:04 +01:00
Felix Krause
40e303049f
Documented serialization macros
2016-11-30 18:31:09 +01:00
Felix Krause
5e00d714eb
Do not assume RecLists everywhere. Fixes #31
2016-11-30 18:01:03 +01:00
Felix Krause
a51befe30d
Improved float parsing
...
* Fixed #30
* Accept underscores in float literals
* Added test
2016-11-10 10:12:32 +01:00
Felix Krause
64f68ae1af
Implemented !!timestamp
2016-11-08 21:13:01 +01:00
Felix Krause
dcfa8fd27c
Implemented ignoreInputKey
2016-10-27 17:58:14 +02:00
Felix Krause
6402433d2a
Implemented setDefaultValue.
2016-10-26 18:32:54 +02:00
Felix Krause
9290ca0d91
Load objects with transient fields
2016-10-19 22:04:46 +02:00
Felix Krause
ab8bfe4192
Removed garbage code
2016-10-15 18:30:52 +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
b3d83025f7
Started transient implementation
...
* represent of simple object works
* TODO: variant objects
* TODO: construct
2016-10-12 22:39:59 +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
0f2e077b87
Added automatic test for quickstart snippets
...
* There are errors which indicate real bugs!
2016-10-08 23:35:33 +02:00
Felix Krause
9f7e87e935
Ordered snippets with file system hierarchy
2016-10-08 20:57:53 +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
a8d68d1696
Addressed some compiler warnings
2016-09-22 14:25:10 +02:00
Felix Krause
680e419d12
Simplified field checking
2016-09-22 14:16:10 +02:00
Felix Krause
1dc8ddc6ea
got rid of yaml.common
2016-09-22 13:28:24 +02:00
Felix Krause
5dfc984913
Updated documentation for new structure
2016-09-21 21:20:57 +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
325e3ec18f
Made serialization part of yaml. Improved doc.
2016-02-12 20:44:38 +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
32c42054f7
Renamed serialize() to represent() to better conform to YAML spec
2016-02-02 18:19:40 +01:00
Felix Krause
e89a9a5b14
Serialization: Support enum types
2016-02-01 20:16:35 +01:00
Felix Krause
e967038d06
Support custom types without serialize macro
2016-02-01 19:48:42 +01:00
Felix Krause
f74a5da999
Implemented construction of ref objects.
2016-01-28 22:29:26 +01:00
Felix Krause
96f01385ef
Implemented serializing ref objects.
2016-01-28 21:59:26 +01:00
Felix Krause
5162c310ce
Serialization: Better proc names
...
* renamed serialize to serializeObject and construct to constructObject
* added new serialize() and construct() procs that handle document
start & end
* re-raise AssertionError instead of swallowing it
2016-01-26 20:51:21 +01:00
Felix Krause
4c3f7cd485
Better and more system types for serialization
...
* Use int[8|16|32|64] and float[32|64] instead of int and float
* Support uint[8|16|32|64]
* Support char
2016-01-26 20:00:28 +01:00
Felix Krause
24f44b5022
Fixed wrapped exception handling
2016-01-24 21:38:29 +01:00
Felix Krause
f2c81f1fc5
Small improvements
2016-01-24 21:21:37 +01:00
Felix Krause
36872370d5
Fixed bugs in presenter, serialization, README
...
* Made presenter output numbers without double quotes in
JSON style again
* Fixed broken serialization.load
* Updated examples in README
2016-01-24 20:53:51 +01:00
Felix Krause
8436026250
Sanitized exception handling in serialization
2016-01-24 20:38:30 +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
56d3537920
Refactoring: Shorter type names
2016-01-14 22:51:30 +01:00
Felix Krause
551c8b0dd1
Refactoring: Extracted type guessing from lexer
2016-01-14 19:58:38 +01:00
Felix Krause
18753b1a4a
Got rid of yamlWarning, use YamlPresenterError
...
* Added YamlWarningCallback that may be used to capture
parser warnings
* Removed yamlWarning as event kind
* Replaced checks for well-formedness in presenter with asserts
* Added checks for JSON compatibility of YamlStream in presenter
* Added proper type hints for special float values in
serializer to be able to check for them in the presenter
2016-01-05 19:06:55 +01:00
Felix Krause
d2baa1749e
Got rid of yamlError.
...
* Replaced yielding yamlError tokens with raising a YamlParserError
* Renamed sequential.nim to parser.nim because it's the parser (duh)
2016-01-05 18:14:11 +01:00