Commit Graph

283 Commits

Author SHA1 Message Date
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
Jesse Beder
0c72825303 Renamed all variables named 'null' (for real now, and only that) 2012-11-08 18:38:20 -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
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
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
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
a6fe313d32 Removed key/value error checks (since we don't require asking them) 2012-05-22 16:57:30 -05:00
Jesse Beder
0e3e6791ff Added flow map, simple key/value 2012-05-22 16:36:07 -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
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
35d827f187 Structured emitter node handling better 2012-05-21 21:57:25 -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
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
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
d6a0fc6f01 Fixed warning about binary's shadowing members functions 2012-01-25 17:40:16 -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
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
7ace0e93d2 Fixed signed/unsigned mismatch with the new precision code 2012-01-11 16:50:06 -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
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
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
c953ce0b07 Fixed broken includes when using the old api 2011-10-18 15:13:10 -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
f64f619c29 Added bool conversions 2011-09-14 01:48:36 -05:00
Jesse Beder
e5d0366797 Added Dump() 2011-09-13 14:49: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
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
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
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
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