Jesse Beder
fa6a71e37f
Bumped version to 0.5.1
2013-04-13 18:37:33 -05:00
Jesse Beder
e5aa599b27
Merge null string bug fix from core, plus bug fix regarding use-after-delete for a token that seems to have been ignored.
2013-04-13 18:25:37 -05:00
Jesse Beder
2375f2c66b
Fix bug where the string "null" (without quotes) is deserialized as a string, instead of null.
2013-04-13 18:21:06 -05:00
Jesse Beder
895af26226
Fix floating point precision on input.
2013-04-13 13:10:36 -05:00
Jesse Beder
ae42def6cf
Merge to fix default precision for floats.
2013-04-13 00:09:40 -05:00
Jesse Beder
e0ae477b8f
Switch default precision to one more than the number of digits allows.
...
See, e.g., http://stackoverflow.com/questions/4738768/printing-double-without-losing-precision .
2013-04-13 00:00:58 -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
c335c8dd75
Added tag release-0.5.0 for changeset d042aa2fa32d
2012-12-28 18:59:29 -06:00
Jesse Beder
6276189716
Merged ? fix from core
2012-11-08 19:12:22 -06:00
Jesse Beder
8c517bf0fd
Fixed parsing ? when attached to a scalar
2012-11-08 19:11:41 -06:00
Jesse Beder
15b60e2a3b
Added failing test for parsing a ? at the start of a value
2012-11-08 19:00:46 -06:00
Jesse Beder
4e1bdd08d3
Removed that failing test - I don't think the parser is correct here
2012-11-08 18:54:53 -06:00
Jesse Beder
490265cf22
Added failing tests for emitter ? at the start of a value
2012-11-08 18:52:54 -06: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
Jesse Beder
0c72825303
Renamed all variables named 'null' (for real now, and only that)
2012-11-08 18:38:20 -06:00
Jesse Beder
6539648dac
Merge from core + revert
2012-11-08 18:34:09 -06:00
Jesse Beder
b12e4b0781
Merged from core, rfaef276b1f6e
2012-11-08 18:33:12 -06:00
Jesse Beder
16f05e73b9
Reverted last change
2012-11-08 18:24:00 -06:00
Jesse Beder
06e09d1d64
Renamed all variables named 'null'
2012-11-08 18:21:00 -06:00
Jesse Beder
0c772c4c3f
Set LoadFile and LoadAllFromFile to throw an exception if we can't load the file
2012-11-08 18:14:26 -06:00
Jesse Beder
a03e861d8c
Switched map's convert<> specialization to use the new force_insert
2012-10-31 19:10:45 -05:00
Jesse Beder
09b4706faf
Added force_insert for mapping nodes that doesn't check to see if the key exists already (so it could duplicate keys)
2012-10-31 19:08:09 -05:00
Jesse Beder
a645866ffa
Simplified Node::operator[] interface by removing the C-string overloads, using a helper to_value
2012-10-31 18:55:07 -05:00
Jesse Beder
979a91692f
Added small 'read' program to test reading a single doc (from stdin)
2012-09-15 16:29:07 -07:00
Jesse Beder
1d1d6886cc
Fixed typo in the core parser tests
2012-09-15 15:50:44 -07:00
Jeff Wang
d770a7dc97
workaround for gcc 3
2012-07-17 11:55:45 -05:00
Jesse Beder
823311384f
Added free Clone() function for Nodes
2012-07-04 15:26:37 -05:00
Jesse Beder
f29ea4b070
Merged end of map/seq flow fix from core
2012-06-09 14:42:00 -05:00
Jesse Beder
68dd9b5d18
Fixed bug where the parser doesn't find the end of a map or seq flow
2012-06-09 14:39:00 -05:00
Jesse Beder
2d815c5d6a
Added extra parser tests for the core; in particular, one that asserts instead of throwing
2012-06-09 14:26:44 -05:00
Jesse Beder
c722684f0d
Removed unnecessary forward declarations
2012-06-08 10:26:49 -05:00
Jesse Beder
5c097d417a
Removed stray GetNextDocument declaration from the parser (it's from the old API, and not the new one)
2012-06-08 10:25:42 -05:00
Jesse Beder
ab36ca930f
Updated from core (emitter)
2012-05-25 19:39:15 -05:00
Jesse Beder
d5130a4109
Changed Emitter::size() to return std::size_t instead of unsigned
2012-05-25 19:38:58 -05:00
Jesse Beder
6c690e8294
Updated the ostream emitting overload to user the new ostream-handling emitters
2012-05-25 19:38:20 -05:00
Jesse Beder
a78069a6e2
Merged ostreams for the emitter change from the core
2012-05-25 19:35:24 -05:00
Jesse Beder
bc3f72b565
Switched the stream << for c-strings to take a templated array param (since we never stream user-built c-strings, only string literals). For this, refactored the escape character display
2012-05-25 19:33:34 -05:00
Jesse Beder
772969270d
Refactored stream overloads
2012-05-25 18:24:07 -05:00
Jesse Beder
2ffdc5b4d1
Added constructor to the Emitter with a stream, so you can write directly to a stream instead of our temp
2012-05-25 18:22:33 -05:00
Jesse Beder
e6d4a915dc
Switched the ostream wrapper to wrap a std::vector<char> instead of our manually managed memory
2012-05-25 18:17:14 -05:00
Jesse Beder
7c85e9d5de
Updated ostream wrapper with a write() and update_pos
2012-05-25 17:39:14 -05:00
Jesse Beder
1602f78974
Renamed ostream -> ostream_wrapper
2012-05-25 17:28:35 -05:00
Jesse Beder
4116d89f2c
Merged emitter refactor from core
2012-05-23 15:30:03 -05:00
Jesse Beder
2dd1cf4596
Added compiler flag to compile the generated tests, since gcc takes *forever* to compile them
2012-05-23 15:16:34 -05:00
Jesse Beder
f011975769
Fixed handler macros to remove warnings in gcc
2012-05-23 15:12:36 -05:00
Jesse Beder
288c7e51f2
Added seq/map gen emitter tests
2012-05-23 11:20:36 -05:00
Jesse Beder
52813050d2
Fixed map/comment/seq emitting
2012-05-23 11:18:53 -05:00
Jesse Beder
1ab9469f10
Added map/seq gen emitter tests, including some failing ones
2012-05-23 11:16:32 -05:00
Jesse Beder
3ddfeff4f5
Added seq gen emitter tests
2012-05-23 11:11:50 -05:00
Jesse Beder
fdfffb0916
Added gen emitter tests
2012-05-23 11:02:42 -05:00
Jesse Beder
52d01ff154
Fixed top-level comment emitting
2012-05-23 11:02:17 -05:00
Jesse Beder
c197d822c1
Updated gen emitter tests
2012-05-23 11:00:33 -05:00
Jesse Beder
277132a21f
Refactored emitter test template code
2012-05-23 10:56:16 -05:00
Jesse Beder
5af3fc04c6
Registered all the generated emitter tests
2012-05-22 22:17:50 -05:00
Jesse Beder
0fb59c18dd
Split test struct and handler macros out for the emitter/spec tests
2012-05-22 22:10:47 -05:00
Jesse Beder
115101d25d
Updated emitter test script, and moved handler macros to own include file
2012-05-22 21:59:12 -05:00
Jesse Beder
8d529cbcf2
Started emitting test generator
2012-05-22 19:31:23 -05:00
Jesse Beder
7d7075fdf9
Set indentation to be at least 2
2012-05-22 18:01:48 -05:00
Jesse Beder
8aabc0766b
Fixed indentation test - all emitter tests now pass
2012-05-22 17:56:07 -05:00
Jesse Beder
abd49d8bca
Added null
2012-05-22 17:55:17 -05:00
Jesse Beder
8b3778a639
Fixed warnings
2012-05-22 17:50:40 -05:00
Jesse Beder
0abbf650b5
Fixed char output
2012-05-22 17:50:10 -05:00
Jesse Beder
c664d50d5c
Fixed double quote escapes (e.g., \n is now that instead of \x0a)
2012-05-22 17:45:31 -05:00
Jesse Beder
ad275901b2
Switched single quoted test to positive test (since we just convert to double quoted)
2012-05-22 16:59:39 -05:00
Jesse Beder
a6fe313d32
Removed key/value error checks (since we don't require asking them)
2012-05-22 16:57:30 -05:00
Jesse Beder
4123583159
Fixed end seq/map error msg
2012-05-22 16:56:10 -05:00
Jesse Beder
2c2b788391
Fixed doc start/end
2012-05-22 16:53:40 -05:00
Jesse Beder
bc884061e2
Fixed some newline/comma tests
2012-05-22 16:49:09 -05:00
Jesse Beder
611d243b84
Fixed global setting indentation
2012-05-22 16:47:08 -05:00
Jesse Beder
b2f9a61c46
Fixed emitter tests with newlines
2012-05-22 16:44:49 -05:00
Jesse Beder
f4278fe39f
Added long key flow map
2012-05-22 16:41:03 -05:00
Jesse Beder
676e0b94ac
Fixed flow seq/map indentation
2012-05-22 16:39:03 -05:00
Jesse Beder
0e3e6791ff
Added flow map, simple key/value
2012-05-22 16:36:07 -05:00
Jesse Beder
b8a87c43bc
Added flow seq
2012-05-22 15:42:45 -05:00
Jesse Beder
2670ce8aaf
Fixed bool formatting
2012-05-22 15:08:21 -05:00
Jesse Beder
faa2e50605
Forced literal scalars to use long keys
2012-05-22 15:07:11 -05:00
Jesse Beder
cdfbac1fd7
Fixed some tests with the new compact long keys
2012-05-22 15:02:36 -05:00
Jesse Beder
944ebb7d1e
Fixed settings reverting properly
2012-05-22 15:00:10 -05:00
Jesse Beder
bf07af52ff
Added long key
2012-05-22 14:26:34 -05:00
Jesse Beder
41e4cd3308
Split block map simple/long key for both key/value
2012-05-22 14:20:50 -05:00
Jesse Beder
952fe51c73
Added writing float/double
2012-05-22 13:59:31 -05:00
Jesse Beder
c95bcae49f
Added writing integral types
2012-05-22 13:57:44 -05:00
Jesse Beder
cc559956a0
Added bool, char, binary
2012-05-22 13:53:03 -05:00
Jesse Beder
879f96d2f6
Tweak sandbox
2012-05-22 12:59:58 -05:00
Jesse Beder
5e0886db87
Fixed block map prepare value (where the colon goes)
2012-05-22 12:59:07 -05:00
Jesse Beder
a626424baa
Split the block map prepare into key/value
2012-05-22 12:56:40 -05:00
Jesse Beder
80823583a0
Tweaked spacing for comments
2012-05-22 12:54:54 -05:00
Jesse Beder
eef692d7b2
Fixed when we emit the doc start (only if there already is a document in the stream, and we're about to emit a new node)
2012-05-22 12:37:00 -05:00
Jesse Beder
0814813302
Added comments, not entirely correct
2012-05-22 12:29:36 -05:00
Jesse Beder
0f3f1e26a7
Fixed map/value
2012-05-21 23:47:57 -05:00
Jesse Beder
f72e325c40
Renamed begin/end scalar/group to started/ended scalar/group
2012-05-21 23:39:45 -05:00
Jesse Beder
07e88a78cb
Added alias
2012-05-21 23:37:49 -05:00
Jesse Beder
c5e4bdee94
Fixed newline
2012-05-21 23:34:42 -05:00
Jesse Beder
d3801b7482
Added newlines, fixed map/map
2012-05-21 23:29:59 -05:00
Jesse Beder
b0dd0f862a
Fixed anchor/tag in seq > map
2012-05-21 23:23:53 -05:00
Jesse Beder
3cae26a75e
Added tags and anchors
2012-05-21 23:19:29 -05:00
Jesse Beder
91eac5d93d
Implemented block seq and block map indentation/newlines
2012-05-21 22:14:26 -05:00
Jesse Beder
35d827f187
Structured emitter node handling better
2012-05-21 21:57:25 -05:00
Jesse Beder
23fb2dc811
Fixed basic block seq indentation
2012-05-21 21:11:03 -05:00
Jesse Beder
b5d8241dfa
Added block seq indentation
2012-05-21 21:04:10 -05:00
Jesse Beder
d86cfc1c63
Implemented the Write for scalars (including checking which type of scalar it should be)
2012-05-21 19:07:56 -05:00
Jesse Beder
65d80ebc11
Started prepare node
2012-05-21 17:06:12 -05:00
Jesse Beder
923ccc8fed
Implemented begin/end doc
2012-05-21 16:54:45 -05:00
Jesse Beder
5a2183f55b
Removed old emitter state machine
2012-05-21 16:31:07 -05:00
Jesse Beder
41c2ddc03e
Switched the emitter state enums to scoped enums
2012-05-21 15:05:17 -05:00
Jesse Beder
39165338e0
Added sandbox to play with
2012-05-20 01:46:08 -05:00
Jesse Beder
d8bdeb5b51
Added failing test for compact map with newline
2012-05-20 01:31:57 -05:00
Jesse Beder
16fd111a6b
Fixed formatting for spec tests
2012-05-20 01:19:27 -05:00
Jesse Beder
f17cfacdbb
Updated from core
2012-05-19 22:39:36 -05:00
Jesse Beder
030f48583a
Fixed tag for implicit map
2012-05-19 22:38:12 -05:00
Jesse Beder
729ac991c7
Added 8.x tests
2012-05-19 22:24:20 -05:00
Jesse Beder
7d57209033
Added 7.x tests
2012-05-19 21:43:22 -05:00
Jesse Beder
4086c285fa
Added 6.x tests
2012-05-19 21:08:58 -05:00
Jesse Beder
4245c36a84
Added 5.x tests
2012-05-19 20:40:42 -05:00
Jesse Beder
84b68c3868
Added all the 2.x tests
2012-05-19 18:43:02 -05:00
Jesse Beder
c2b22d6129
Added framework for spectests with event handling
2012-05-19 17:53:43 -05:00
Jesse Beder
58d4fedfc3
Backed out of removing parse
2012-05-19 15:55:13 -05:00
Jesse Beder
55fc800989
Updated from core
2012-05-19 15:54:52 -05:00
Jesse Beder
1f4d8ee3b4
Removed parse
2012-05-19 15:52:43 -05:00
Jesse Beder
e09fbacd35
Updated from core
2012-05-19 15:40:30 -05:00
Jesse Beder
06cb65c6b3
Removed stl node, which was from the old-api but never deleted
2012-05-19 15:37:39 -05:00
Jesse Beder
6c8b369312
Updated CMakeLists from new-api
2012-05-19 15:36:22 -05:00
Jesse Beder
be92547264
Added old parse utility
2012-05-19 15:34:49 -05:00
Jesse Beder
c22512649e
Copied all files from new-api branch of old repo
2012-05-19 15:34:02 -05:00
Jesse Beder
c8a539f4f4
Removed old api exceptions
2012-05-19 01:32:10 -05:00
Jesse Beder
683c60f490
Removed traces of old-api Node
2012-05-19 01:19:03 -05:00
Jesse Beder
a183293ff0
Removed old-api tests, added (empty) core spec tests
2012-05-19 01:16:54 -05:00
Jesse Beder
0d32d19ed8
First pass at spearating out a 'core' library from the old api (default) branch
2012-05-19 01:04:43 -05:00
Jesse Beder
fca7b7e190
Fixed reading bad memory error
2012-05-14 23:09:25 -05:00
Jesse Beder
4ca9269e24
Patched signed -> unsigned warning (issue 98)
2012-02-14 10:11:44 -06:00
Jesse Beder
d6a0fc6f01
Fixed warning about binary's shadowing members functions
2012-01-25 17:40:16 -06:00
Jesse Beder
5d6e09d699
Added tag release-0.3.0 for changeset 6d37925fb440
2012-01-21 02:52:18 -06:00
Jesse Beder
572e940c83
Bumped version to 0.3.0
2012-01-21 02:51:56 -06:00
Jesse Beder
01eb370300
Added operator >> overload for Binary
2012-01-21 02:01:37 -06:00
Jesse Beder
d760d037ca
Renamed the base64 methods, and switched the EncodeBase64 one to return a string (to make it easy to use elsewhere)
2012-01-21 01:33:49 -06:00
Jesse Beder
6105d4cfeb
Refactored the base64 binary to its own space with a unified class that (will) be used for parsing (in addition to emitting)
2012-01-21 01:18:37 -06:00
Jesse Beder
e145488547
Added back yaml.h (since it used to be generated)
2012-01-21 00:08:35 -06:00
Jesse Beder
b688c93050
Put all the old-api stuff back in the main folder, for simplicity
2012-01-20 23:55:39 -06:00
Jesse Beder
1723523c43
Removed the new API from the default branch
2012-01-20 23:50:39 -06:00
Jesse Beder
d772361f15
Fixed hex and oct emitting (it now adds the 0x or 0 prefix)
2012-01-13 00:00:11 -06:00
Jesse Beder
a441e1a14c
Added test for new API octal/hex conversion
2012-01-12 23:55:15 -06:00
Jesse Beder
fb0802097c
Fixed double -> int conversion (now throws) for old API
2012-01-12 23:52:51 -06:00
Jesse Beder
643ea61a98
Updated new API conversion to handle nan/inf and to throw when the conversion didn't use the entire string (e.g., parsing 1.2 as an integer)
2012-01-12 23:49:05 -06:00
Jesse Beder
d1e4c2640c
Added default parameters for the as<> function (new API)
2012-01-12 01:03:31 -06:00
Jesse Beder
ddc578dbd7
Added LoadFile and LoadAllFromFile (new API)
2012-01-11 21:31:01 -06:00
Jesse Beder
8906ae9a0d
Fixed bug in parsing escaped newline (it was being clipped like a regular newline)
2012-01-11 17:55:27 -06:00
Jesse Beder
4e350e5808
Removed some extra stuff in the comment/newline in flow map tests, which really should be illegal (since implicit keys can't span multiple lines). It would be impossible to fix if we keep the immediate-output we're doing now - the only way to prevent it would be to hold on to a key's text until we got to the value token to make sure it could be an implicit key
2012-01-11 17:06:27 -06:00
Jesse Beder
7ace0e93d2
Fixed signed/unsigned mismatch with the new precision code
2012-01-11 16:50:06 -06:00
Jesse Beder
0e61ddb6d9
Added parsing emitter tests with the new API, two fail
2012-01-11 16:41:13 -06:00
Jesse Beder
97fa02a484
Disallowed a plain scalar with just a dash
2012-01-11 16:39:24 -06:00
Jesse Beder
5024caa69c
Added float/double precision setters
2012-01-11 14:34:04 -06:00
Jesse Beder
21ed2b5817
Added explicit conversion from an iterator value to a Node. This conversion was always allowed (since the iterator value is derived from Node, but since Node has a templated constructor, that would take precedence over the derived-to-base conversion. This didn't seem to be a problem in gcc or clang, but MSVC seems to have trouble. (new API)
2012-01-11 13:58:18 -06:00
Jesse Beder
92a35581d7
Added boost find/includes to the new API CMake instructions
2012-01-11 13:19:31 -06:00
Jesse Beder
5b32d89222
Fixed compiler error in iterator_base friend forward declaration in node on clang (and I hope MSVC), plus warnings on clang
2012-01-07 01:42:21 -06:00
Jesse Beder
812a2dc684
Fixed assignment with an empty node (new API) - a segfault that only showed up in debuggable
2011-12-20 22:19:54 -06:00
Jesse Beder
add460947b
Added overload for emitting unsigned char
2011-11-14 17:00:28 -06:00
Jesse Beder
3099d51ba4
Added single character emitting
2011-11-14 16:23:14 -06:00
Jesse Beder
6f4608ce05
Added missing includes (iostream) for the tests
2011-11-13 16:12:39 -06:00
Jesse Beder
5abfbf5aac
Added (unspecified-type) bool conversions for Node (new API)
2011-11-13 16:05:42 -06:00
Jesse Beder
d78d16532a
Set the default operator >> to not compile unless there is a scalar conversion, so it doesn't interfere with user-defined types
2011-11-01 17:19:03 -05:00
Jesse Beder
62634f53ec
Fixed emitter bug with colon at the end of a scalar in a flow collection
2011-10-31 19:16:17 -05:00
Jesse Beder
860365b263
Switched the utf bom checking to putback in the stream (instead of keeping a secondary buffer), which fixes a bug when there's only one ascii character
2011-10-20 22:29:41 -05:00
Jesse Beder
e8e5d4bc40
Fixed typo in computing private headers (no effect on the build, just for the project files)
2011-10-20 21:50:47 -05:00
Jesse Beder
b077e8390e
Added parser test for single char input (that fails)
2011-10-20 13:53:27 -05:00
Jesse Beder
c953ce0b07
Fixed broken includes when using the old api
2011-10-18 15:13:10 -05:00
Jesse Beder
f87dced5c9
Fixed installation (we now install the whole include header tree)
2011-10-18 14:55:31 -05:00
Jesse Beder
62361e6f27
Added a .hgignore file that ignores the generated yaml.h
2011-10-18 14:48:07 -05:00
Jesse Beder
70e1eb3f9c
Fixed the #ifdefs for the api stuff
2011-10-18 14:47:35 -05:00
Jesse Beder
77cc54585f
Couldn't get the copy command to work for yaml.h, so switched to configure_file
2011-10-18 14:43:48 -05:00
Jesse Beder
e69f51ee16
Split the yaml.h file into new/old API, which we'll then copy to yaml.h at build time (so the right one gets installed)
2011-10-18 00:16:51 -05:00
Jesse Beder
ee795d7e3e
Merged with the main branch, which just updated version count to 0.2.7
2011-09-18 00:26:18 -05:00
Jesse Beder
f6d6c90aa9
Updated old api spectests with common spec examples
2011-09-17 23:57:40 -05:00
Jesse Beder
d9c7bcf32f
Set the default build to the old API, and removed the duplicate spec test implementation for the old api
2011-09-17 23:46:48 -05:00
Jesse Beder
f3b230693a
Moved conversion.cpp to the old api, where it belongs
2011-09-14 01:49:06 -05:00
Jesse Beder
f64f619c29
Added bool conversions
2011-09-14 01:48:36 -05:00
Jesse Beder
8e5fc0e304
Added tag release-0.2.7 for changeset d0bed6918076
2011-09-14 01:23:25 -05:00
Jesse Beder
976e8b184c
Bumped version to 0.2.7
2011-09-14 01:23:15 -05:00
Jesse Beder
e5d0366797
Added Dump()
2011-09-13 14:49:00 -05:00
Jesse Beder
c3798d9bd4
Added tags to Node emitter output
2011-09-13 14:47:33 -05:00
Jesse Beder
40c47f6312
Finished adding old spec tests
2011-09-13 14:31:00 -05:00
Jesse Beder
e3d5ec189d
Switched YAML::Parse to YAML::Load, and added LoadAll
2011-09-13 14:24:47 -05:00
Jesse Beder
5be19ccbfd
Added 7.x and 8.x tests with tags - all that's left is multiple docs in stream
2011-09-13 14:20:32 -05:00
Jesse Beder
98830a4a15
Added 6.x tests with tags
2011-09-13 14:18:00 -05:00
Jesse Beder
3a88c4b4a1
Added IsNull, IsScalar, IsSequence, IsMap functions, so you don't have to query Type()
2011-09-13 14:10:27 -05:00
Jesse Beder
69af9b420a
Copied 2.x tests with tags
2011-09-13 14:07:22 -05:00
Jesse Beder
0987b234c3
Added tags to Node
2011-09-13 14:00:47 -05:00
Jesse Beder
2dfccbb945
Added a convert<> specialization for YAML::_Null (so you can say node[YAML::Null])
2011-09-13 02:03:56 -05:00
Jesse Beder
a9be4849d8
Copied over the 8.x tests that don't have tags
2011-09-13 01:56:44 -05:00
Jesse Beder
b1100d7c54
Copied over the 7.x tests that don't have tags
2011-09-13 01:46:42 -05:00
Jesse Beder
64e381f2c1
Copied over the 6.x tests that don't have tags
2011-09-13 01:36:27 -05:00
Jesse Beder
f6b728d56c
Copied over the 5.x tests
2011-09-13 01:28:32 -05:00
Jesse Beder
edd6650536
Copied over all the 2.x tests that are (a) single doc and (b) don't have tags
2011-09-13 01:23:30 -05:00
Jesse Beder
a04dfdeb07
Factored out spec examples, and sketched skeleton for spec tests for new API
2011-09-12 22:55:37 -05:00
Jesse Beder
1721750d9e
Added temp variable tests
2011-09-12 22:09:16 -05:00
Jesse Beder
a8f82af604
Switched Node::operator=(const Node&) to *not* force itself to create its node first (since we're just assigning them)
2011-09-12 22:05:43 -05:00
Jesse Beder
0c321a6dc6
Switched the node_ref to *always* create its data (since now the Node itself doesn't always create itself)
2011-09-12 22:03:11 -05:00
Jesse Beder
08b3ddfd3e
Set the pimpl node in Node to be optional, so we don't create unnecessary guys every time you call Node tmp = foo[value];
2011-09-12 21:59:47 -05:00
Jesse Beder
fddc991b60
Fixed NodeBuilder bug when an alias was in a map - we weren't pushing that guy as a key
2011-09-12 14:24:27 -05:00
Jesse Beder
3337df7ca2
Fixed new API node key/value insertion in NodeBuilder (it was using the wrong condition on when it had added a key already)
2011-09-12 13:25:41 -05:00
Jesse Beder
41533a8c49
Added failing self-reference tests
2011-09-12 12:48:51 -05:00
Jesse Beder
a6e1d4cf74
Added two alias tests
2011-09-12 12:42:23 -05:00
Jesse Beder
5397a93702
Implemented std::map decode (and fixed bug in the Node iterator - the reference_type should be just a plain value, since it's created on-the-fly)
2011-09-12 00:29:39 -05:00
Jesse Beder
b9583dde76
Added reading/writing std::list
2011-09-11 23:18:19 -05:00
Jesse Beder
f22f38f7f2
Added reading/writing std::vector
2011-09-11 23:14:52 -05:00
Jesse Beder
9e62bf8349
Removed the (unimplemented) operator <, and added operator == (in place of is()) for nodes
2011-09-11 22:56:04 -05:00
Jesse Beder
f9d826c22a
Added mutable operator[] for integral types (you can only grow the sequence if you specify the *next* element)
2011-09-11 22:51:49 -05:00
Jesse Beder
4770ec798c
Implemented operator[] specialization, but only const (should the sequence be mutable?)
2011-09-11 21:51:04 -05:00
Jesse Beder
4568dd0b19
Started specialization for operator[] for integers
2011-09-11 21:32:47 -05:00
Jesse Beder
a308b73e8a
Set the map iterator to filter over undefined items
2011-09-11 19:44:27 -05:00
Jesse Beder
c2a8a2c1f7
Added failing map iterator count test
2011-09-11 17:36:08 -05:00
Jesse Beder
a03af5dd73
Implemented the map size computation
2011-09-11 17:16:26 -05:00
Jesse Beder
b50264e74d
Switched the implementation of maps from list<pair> to map (but just pointer comparison)
2011-09-11 16:56:38 -05:00
Jesse Beder
ecdd9cc66d
Added computing and caching the sequence size
2011-09-11 16:21:36 -05:00
Jesse Beder
3a90454d50
Added some small map tests
2011-09-11 16:02:31 -05:00
Jesse Beder
2d81e46655
Added dependency management (to cause nodes to become defined if their children do)
2011-09-11 15:59:53 -05:00
Jesse Beder
b4963ab0fa
Added a few simple node tests, and the sequence one doesn't pass (let's work now)
2011-09-10 23:31:12 -05:00
Jesse Beder
432268917b
Started Node tests (for the new API Node)
2011-09-10 23:22:30 -05:00
Jesse Beder
2d06df474b
Fixed up the old API stuff, and removed the util/value (since it's no longer needed)
2011-09-10 23:11:28 -05:00
Jesse Beder
03fc837236
Set up util/parse for the new API
2011-09-10 23:03:02 -05:00
Jesse Beder
80cf3c98db
Fixed minor things that used the old API, compiles/links/runs\!
2011-09-10 22:59:27 -05:00
Jesse Beder
f7b2247217
Added stubs for spec and parser tests with the new API
2011-09-10 18:05:35 -05:00
Jesse Beder
36c63980b9
Moved old api tests to subfolder
2011-09-10 18:02:07 -05:00
Jesse Beder
0d1b5224c8
Major switch from Value -> Node. The library compiles with the new API, but tests are still oldies, and don't compile
2011-09-10 17:57:23 -05:00
Jesse Beder
ac81d7c883
Start of moving Value -> Node and Node -> old API Node (with a #define toggle)
2011-09-10 17:18:15 -05:00
Jesse Beder
78b7a1b8a9
Added helper emitter functions, but we have a problem: YAML::Value is already a manipulator
2011-09-10 16:50:44 -05:00
Jesse Beder
12364895cb
Implemented value events emitter
2011-09-10 16:23:18 -05:00
Jesse Beder
5012063143
Fixed node iterator
2011-09-10 14:36:10 -05:00
Jesse Beder
c3b0ba9d61
New iterators work\!
2011-09-10 14:16:50 -05:00
Jesse Beder
4fdbb748ec
Updated the node/value classes with the new iterators, they compile until we try to instantiate anything
2011-09-10 14:11:42 -05:00
Jesse Beder
b1730ea3da
Finished the main iterator stuff, now have to hook it to the nodes/values
2011-09-10 14:06:49 -05:00
Jesse Beder
3865d37bc7
Halfway towards factoring out a node_iterator, and then building iterator on top of it
2011-09-10 13:20:22 -05:00
Jesse Beder
f5a9d4c8e3
Started emitting events for Values
2011-09-10 12:42:42 -05:00
Jesse Beder
09beb5c47a
Implemented sugar Parse() functions
2011-09-09 23:40:19 -05:00
Jesse Beder
6e03bebeb0
Implemented (untested) the value builder
2011-09-09 23:28:21 -05:00
Jesse Beder
a7bdf08c7e
Map iterator works\!
2011-09-09 19:25:11 -05:00
Jesse Beder
cf198080d0
Sequence iterator works\!
2011-09-09 19:22:17 -05:00
Jesse Beder
190a556756
Switched iterators to typedef's, with a bit of finagling so we can forward-declare them
2011-09-09 19:07:37 -05:00
Jesse Beder
9aa3eb56f2
Base iterator stuff compiles :)
2011-09-09 18:46:37 -05:00
Jesse Beder
ff1a8fc59a
Started writing new iterators
2011-09-09 16:17:59 -05:00
Jesse Beder
7bbf712c36
Made the 'data' member optional in node_ref - it's only created on-demand, so we don't waste extra memory every time we do Value tmp = v;
2011-09-09 14:26:55 -05:00
Jesse Beder
9b985c5ce2
Switched value = otherValue to assign the actual nodes after setting the reference (so that tmp = foo['bar']; tmp = other; is the same as foo['bar'] = other;)
2011-09-09 14:02:18 -05:00
Jesse Beder
d3bbd08273
Added append()
2011-09-09 02:51:35 -05:00
Jesse Beder
4f8680b540
Switched operator[] access to node reference equality, not node equality
2011-09-09 02:39:36 -05:00
Jesse Beder
ec95e61c04
Switched memory to using shared nodes, and node_data to keep only naked node pointers, not shared nodes (to break the cycle, and we don't need weak pointers because their memory is guaranteed to exist, via 'memory')
2011-09-09 02:29:17 -05:00
Jesse Beder
6ffc9ac788
Added half of the std::map conversion (we don't have reading from Values yet)
2011-09-08 02:10:04 -05:00
Jesse Beder
0e197b8723
Added back the streamable conversions
2011-09-08 02:05:03 -05:00
Jesse Beder
3d84f57008
Switched convert to a templated struct that can be specialized (so we can partially specialize it)
2011-09-08 02:02:15 -05:00
Jesse Beder
a7ebb3615a
Added streamable conversions
2011-09-08 00:48:40 -05:00
Jesse Beder
a95baeafd6
Implemented conversion for std::string, including a bypass-accessor to the scalar value
2011-09-07 15:49:01 -05:00
Jesse Beder
1ab16bac62
Set the 'memory' to only store node_refs, not nodes
2011-09-07 14:56:04 -05:00
Jesse Beder
4aa61944fe
Implemented is()
2011-09-07 14:46:25 -05:00
Jesse Beder
e225509210
Added (another) layer - now 'node_ref' is between node and node_data, and it decrees whether nodes are identical
2011-09-07 14:44:18 -05:00
Jesse Beder
d1eca90216
Implemented map get(), and it would work (I think) if we implemented convert() for strings
2011-09-07 03:36:50 -05:00
Jesse Beder
020cd97915
Set up map searching by templated key
2011-09-07 03:21:24 -05:00
Jesse Beder
f0174ca08b
Reorganized so that we don't have cyclic include problems
2011-09-07 02:59:58 -05:00
Jesse Beder
fed95c5da4
Implemented map access by already-existing node
2011-09-07 02:39:59 -05:00
Jesse Beder
a530630f1c
Started implementing node_data
2011-09-07 00:45:28 -05:00
Jesse Beder
00e4a56d15
Compiles/links assignment to string
2011-09-07 00:20:23 -05:00
Jesse Beder
1e6877043e
Value stuff compiles/links with lots of placeholder functions
2011-09-07 00:12:24 -05:00
Jesse Beder
248b18a2d0
Sketched more of the implementation
2011-09-06 23:11:38 -05:00
Jesse Beder
7e79edc058
Moved the value header to its own subfolder
2011-09-06 16:06:46 -05:00
Jesse Beder
8b97dfe77e
Sketched out interface for YAML::Value
2011-09-06 01:43:15 -05:00
Jesse Beder
3eeb270ef5
Merged from trunk
2011-09-06 01:10:27 -05:00
Jesse Beder
c1d75dd4f7
Added notes about the two failing tests - that they're (I think) bugs in the YAML spec
2011-09-06 01:05:14 -05:00
Jesse Beder
dd1eb715c4
Switched YAML::Binary interface to use unsigned chars, not chars
2011-09-06 00:39:31 -05:00
Jesse Beder
fadca5a89d
Added overload for operator [] for char * (non-const version)
2011-09-06 00:32:53 -05:00
Jesse Beder
7e129c9b64
Fixed empty string emitter bug (it now with auto-quote it
2011-09-06 00:24:10 -05:00
Jesse Beder
3e94c0a037
Switched the 'pragma once' to only happen on MSVC, or gcc >= 3.4 (it was causing trouble on the sun compiler)
2011-09-06 00:16:03 -05:00
Jesse Beder
d7feb2e9b9
Added api sketch
2011-09-04 19:50:08 -05:00
Jesse Beder
8ba5e3fbf6
Added .hgeol for native eols
2011-08-24 02:59:58 -05:00
Jesse Beder
857c7d93a0
update tags
2011-08-24 13:44:56 +00:00
Jesse Beder
b690648308
Removed ATOMIC_TYPE, an old enum that wasn't used any more
2011-08-22 21:37:51 +00:00
Jesse Beder
d904b600a9
Added test for anchor/alias in flow
2011-08-04 21:50:04 +00:00
Jesse Beder
bacb74e8ec
Forced a newline after any comments
2011-08-04 21:47:57 +00:00
Jesse Beder
b1ac3289b8
Included <cstddef> for NULL
2011-08-04 18:47:37 +00:00
Jesse Beder
835b86d9f7
Fixed negative infinity parsing
2011-07-10 18:29:44 +00:00
Jesse Beder
94dc63af04
Added parsing .inf and .nan (and friend)
2011-07-10 16:27:40 +00:00
Jesse Beder
50474b6b9f
Fixed includedir for the .pc.cmake file
2011-05-29 02:17:49 +00:00
Jesse Beder
4c3926a5c7
Added emitting std::set (and refactored the stl emitters a bit)
2011-05-18 21:07:25 +00:00
Jesse Beder
9fbcfe9ec5
Added include <cstdlib> for using 'NULL' (apparently gcc 4.6 is more strict)
2011-05-03 21:55:49 +00:00
Jesse Beder
d98687afc3
Set version to 0.2.6
2011-03-30 01:33:02 +00:00