Jonathan Hamilton
b426fafff6
Fix some Node::operator[] regressions from 0.5.1
...
"const Node Node::operator[](const Key& key) const" changed from
returning new empty node if the key was missing in 0.5.1 to returning
a shared 'zombie' node in 0.5.2 to resolve a memory leak.
(Specifically 1025f76df1
was where this
was introduced)
This caused some regressions where this 'zombie' object threw exceptions
in some functions where the 'empty' object would not.
This change fixes the Node::as(fallback) method (to return the
'fallback' instead of throwing an exception) and the
Node::begin()/Node::end() methods to return default-constructed
iterators (so begin() == end() in such cases) instead of another
exception.
2015-06-08 11:47:10 -07:00
Jesse Beder
5c390e8d6c
Merge pull request #303 from bdutro/patch-1-squashed
...
Fix compiler error by updating node_data::remove to use new equals() method.
2015-04-08 13:59:56 -05:00
bdutro
aa928b925b
Update node_data::remove to use new equals() method
...
- Update the call to equals() in node_data::remove() to match the new implementation
- Add unit test for node::remove() to catch this type of bug in the future
2015-04-08 13:41:59 -05:00
Oliver Hamlet
ec8aa4fa62
More useful error messages.
...
Applied the patch given in jbeder/yaml-cpp#200 with the correct code
style.
2015-04-02 20:50:11 +01:00
Jesse Beder
25c466a152
Run clang-format
2015-03-29 21:27:20 -05:00
Jesse Beder
7092a0b099
Fixed linker error on Visual Studio with a shared lib by moving the static methods node_data::equals to an instance method on node.
2015-03-29 21:11:53 -05:00
Jesse Beder
25b2ed0787
Fix operator bool() exception on zombie node
2015-03-29 14:31:22 -05:00
Jesse Beder
0970a108bd
Remove stray field
2015-01-24 17:58:58 -06:00
Jesse Beder
1025f76df1
Fix memory leak when accessing a const Node with a key that doesn't exist.
2015-01-24 17:22:45 -06:00
Jesse Beder
1006bee48a
Default-initialize all sub-iterators in node_iterator_base
2015-01-24 16:23:35 -06:00
Jesse Beder
7d932f0a10
Merge from core
2015-01-24 15:59:24 -06:00
Jesse Beder
087e0673f3
Renamed the None enumeration vaules to NoType to avoid a collision with X11's macro
2015-01-24 15:58:14 -06:00
Jesse Beder
fcbec237c9
Add conversion for signed char
2015-01-24 15:19:49 -06:00
Jesse Beder
c324bf8a7d
Merge core
2015-01-24 14:47:29 -06:00
Jesse Beder
2b2e607118
Fix gcc warning
2015-01-24 14:47:00 -06:00
Jesse Beder
391111c055
Merge core
2015-01-24 14:40:55 -06:00
Jesse Beder
0c8a539361
Fix warnings on visual studio, including changing unsigned to std::size_t
2015-01-24 14:38:22 -06:00
Jesse Beder
9eae039c91
Merge
2015-01-24 13:24:08 -06:00
Jesse Beder
0c280724e9
Add flow/block style setting on Nodes
2015-01-24 13:11:43 -06:00
Jesse Beder
9880b608b9
Merge from core
2015-01-24 12:26:16 -06:00
Jesse Beder
ad712c4f2d
Add EmitterStyle, which will allow sequence or map style (i.e., flow or block) to be preserved between parsing and emitting
2015-01-24 12:19:20 -06:00
Jesse Beder
c7752ca336
Fix build warning from gcc about std::copy
2015-01-24 11:14:53 -06:00
Jesse Beder
2c340f0546
Fixed memory corruption when using a node as a key
2014-08-16 10:52:51 -05:00
Jesse Beder
47af59f09c
Add dll tag to Binary
2014-03-25 22:03:27 -05:00
Jesse Beder
13130ec20d
clang-format
2014-03-25 00:11:17 -05:00
Jesse Beder
066359802b
Merge from core, and update several missing DLL exports. This does not resolve them all (in particular, node_data::equals seems to be still missing, even though it is inlined in a header, which seems strange).
2014-03-24 00:31:43 -05:00
Jesse Beder
fe8ca77a1b
Add missing DLL export, and set up gtest/gmock to properly import their symbols.
2014-03-23 23:56:17 -05:00
Jesse Beder
253c80d09e
Merge from core
2014-03-23 20:17:34 -05:00
Jesse Beder
06bf012d81
clang-format
2014-03-23 20:08:54 -05:00
Jesse Beder
4b40441cee
Run IWYU
2014-03-22 23:14:48 -05:00
Jesse Beder
8d7eb02c46
Merge IWYU from core
2014-03-22 23:08:09 -05:00
Jesse Beder
5fd25df859
Run IWYU
2014-03-22 22:46:04 -05:00
Jesse Beder
c7567b7b07
Add missing includes to node_data.h
2014-03-22 19:32:53 -05:00
Jesse Beder
d98ab9f342
Merge ostream_wrapper fix from core
2014-03-22 19:27:54 -05:00
Jesse Beder
0fbeac8f4f
Add more ostream_wrapper tests
2014-03-22 19:22:23 -05:00
Jesse Beder
d63ec48c8a
Run clang-format
2014-03-22 13:05:03 -05:00
Jesse Beder
3355bbb399
Merge clang-format from core
2014-03-22 13:03:18 -05:00
Jesse Beder
9b4db068bb
Run clang-format
2014-03-22 12:49:16 -05:00
Jesse Beder
5b88931143
Fixed bug while reading a single space char
2013-11-10 14:50:35 -06:00
Jesse Beder
895af26226
Fix floating point precision on input.
2013-04-13 13:10:36 -05:00
Jesse Beder
434c6a5697
Add better exception reporting when incorrectly dereferencing an iterator.
2013-04-12 23:41:02 -05:00
Jesse Beder
097ac171c6
Add std::pair conversion specialization.
2013-04-02 21:04:17 -05:00
Jesse Beder
0482463569
Rename clear() to reset(), and it now takes an optional node parameter.
2013-04-02 20:39:54 -05:00
Jesse Beder
5dbcf7eeb1
Fix conversion for C-strings (both literals and normal C-strings) so it compiles on Visual Studio.
2013-04-01 22:25:53 -05:00
Jesse Beder
f5418306d6
Explicity disallow get_idx for boolean type, to avoid ambiguity with a map.
2013-04-01 22:06:09 -05:00
Jesse Beder
04937649b7
Add missing line from previous fix.
2013-04-01 21:52:32 -05:00
Jesse Beder
71f35b1104
Fix warning in Visual Studio:
...
warning C4146: unary minus operator applied to unsigned type, result still unsigned
2013-04-01 21:43:09 -05:00
Jesse Beder
bcdda4027f
Added Node::clear() function
2012-11-08 18:47:22 -06:00
Jesse Beder
eb02dd8dc3
Fixed typo from null fix
2012-11-08 18:40:44 -06:00
Jesse Beder
5721ac6194
Pulled 'null' renaming fix
2012-11-08 18:39:06 -06:00