Cameron Ross
08951119df
fix UTF-8 decoding in URI sequences
2019-01-07 22:07:31 -04:00
Cameron Ross
38c157df88
Add test for duplicate mapping keys
2018-04-25 07:30:27 +02:00
Cameron Ross
4a106181dd
Add support for unicode chars in the 0x10000 - 0x10FFFF range as required by spec
2018-02-27 14:15:47 -04:00
Sebastian Wilzbach
d830832b02
Fix testsuite
2018-01-18 02:22:18 +01:00
Ferdinand Majerech
b254e35762
Unittest build now works with 'dub test'
2014-08-06 14:17:07 +02:00
Ferdinand Majerech
601f10bf2f
New loader ctor in errors unittests.
2014-07-31 03:22:13 +02:00
Ferdinand Majerech
9fe6950df0
Style.
2014-07-31 03:21:58 +02:00
Ferdinand Majerech
ee2df932a0
New Loader ctor used in Emitter tests.
2014-07-31 03:16:22 +02:00
Ferdinand Majerech
eb29c2626d
Style.
2014-07-31 03:15:56 +02:00
Ferdinand Majerech
337938f090
Using new Loader ctor in unicode input tests.
2014-07-31 03:12:57 +02:00
Ferdinand Majerech
ee0a449977
Style.
2014-07-31 03:12:25 +02:00
Ferdinand Majerech
c5b7987e68
Using non-Stream Loader ctor in Representer test.
2014-07-31 03:12:02 +02:00
Ferdinand Majerech
21700fdb5d
Style.
2014-07-31 03:11:37 +02:00
Ferdinand Majerech
505a26ff4e
Reader unittest now constructs Reader from buffer.
2014-07-31 02:32:23 +02:00
Ferdinand Majerech
3c36d4ad63
Replaced some old 'in' params with const
2014-07-28 23:20:35 +02:00
Ferdinand Majerech
405a61891f
Reader unittest fixes.
2014-07-22 01:13:01 +02:00
Ferdinand Majerech
c856a35eb0
More readable tests.
2014-07-19 04:09:09 +02:00
Ferdinand Majerech
4faaf77950
Removed deprecation errors, improved readability.
2014-07-19 03:51:52 +02:00
Ferdinand Majerech
a341340d6c
Using the dyaml.all module instead of yaml (which will eventually be removed).
2013-12-17 15:09:19 +01:00
Kiith-Sa
a409cceeff
DMD 2.053 compatibility.
2013-05-23 14:33:34 +02:00
kiith-sa
edf3e2a799
Using std.typecons.Flag where possible, and more in->const.
2012-09-14 01:21:01 +02:00
Ferdinand Majerech
9596806644
Red-Black Trees are now used for duplicate detection, and planned
...
to be used for unordered map storage. This is because AAs still
don't work correctly and even if they did, require the user to
define both toHash and opCmp/opEquals for every YAML
struct/class. Now only opCmp needs to be defined.
Documentation/tutorials/examples have been updated accordingly.
2012-01-23 15:57:26 +01:00
Ferdinand Majerech
fbc962623d
Simplified the Constructor API.
2011-11-17 23:53:24 +01:00
Ferdinand Majerech
2c9d464389
Reader was reimplemented.
...
After experiments with loading the whole file at once, and
with decoding and parsing in separate thread, lazy reader
turned to be the fastest/least memory intensive solution.
Characters are now decoded in small batches.
This improved parsing speed by ~20%.
No global state anymore. Anchors are now zero terminated strings
and TagDirectives are a simple array. Event structure was changed
to prevent size increase.
Minor fixes and improvements.
2011-11-16 03:10:29 +01:00
Ferdinand Majerech
8208e817de
Updated Node for much more constness (unfortunately, quite some
...
code duplication as well). No longer need a custom Variant.
2011-10-30 18:12:02 +01:00
Ferdinand Majerech
9d68b6fa9a
Optimized GC performance when loading,
...
greatly decreasing memory usage and
improving speed by 30% or more.
2011-10-23 20:17:37 +02:00
Ferdinand Majerech
13ea5f0c24
Added a shortcut alias called "as" for Node.get(), and replaced
...
get() with as() all over the code, tutorials, examples and docs.
Fixed a bug in YAML benchmark makefile.
Fixed a bug in autoddoc configuration.
2011-10-22 17:06:32 +02:00
Ferdinand Majerech
33a376b038
String representation of a Node's tag can now be accessed by the
...
user.
2011-10-20 15:48:21 +02:00
Ferdinand Majerech
548480b06b
Changed the Constructor API (for loading of custom types) to
...
make it easier to load custom classes/structs. Updated API docs,
tutorials and examples accordingly.
2011-10-17 12:53:38 +02:00
Ferdinand Majerech
34b11405d4
Implemented the resolver unittest.
...
Changed Loader API to be in line with Dumper,
and updated examples, tutorials and docs.
2011-10-12 23:49:42 +02:00
Ferdinand Majerech
934df763ad
Most of emitter work done. There are some more changes left until 0.2,
...
and the turorials and documentation still need some updating.
2011-10-11 15:58:23 +02:00
Ferdinand Majerech
b0f2ce201a
Added Node constructors needed to create new nodes to emit.
2011-08-21 03:56:21 +02:00
Ferdinand Majerech
dde7d2f64f
Node equality test now takes tag into account, as the
...
specification requires.
2011-08-20 22:38:32 +02:00
Ferdinand Majerech
7192503fe6
Implemented a Tag struct taking as little memory as possible.
...
Removed endMark from Node to keep it in 32 bytes on 64bit.
This will result in slightly worse debugging messages, but we
still have the start position of a node.
Tag is needed for better compliance with the spec and emitting
support for multiple tags with the same D data type.
2011-08-20 22:15:20 +02:00
Ferdinand Majerech
283c42bf8f
Initial commit.
2011-08-16 14:53:13 +02:00