Commit Graph

78 Commits

Author SHA1 Message Date
beder
88540cc96a Fixed double -> int conversion (now throws) for old API 2012-01-12 23:52:51 -06:00
beder
60fa4d7f63 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
beder
924bb8b00e Added default parameters for the as<> function (new API) 2012-01-12 01:03:31 -06:00
beder
f3446cbcea Added LoadFile and LoadAllFromFile (new API) 2012-01-11 21:31:01 -06:00
beder
e4838f0933 Fixed signed/unsigned mismatch with the new precision code 2012-01-11 16:50:06 -06:00
beder
8f948b8f37 Added float/double precision setters 2012-01-11 14:34:04 -06:00
beder
537063f907 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
beder
c82122ba36 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
beder
569a0461f2 Fixed assignment with an empty node (new API) - a segfault that only showed up in debuggable 2011-12-20 22:19:54 -06:00
beder
66980da9d2 Added overload for emitting unsigned char 2011-11-14 17:00:28 -06:00
beder
c6e5ad350b Added single character emitting 2011-11-14 16:23:14 -06:00
beder
c4b3b5e52e Added (unspecified-type) bool conversions for Node (new API) 2011-11-13 16:05:42 -06:00
beder
50b6a02907 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
beder
b204169c65 Fixed broken includes when using the old api 2011-10-18 15:13:10 -05:00
beder
488c3d6cef Fixed the #ifdefs for the api stuff 2011-10-18 14:47:35 -05:00
beder
075f8449f8 Couldn't get the copy command to work for yaml.h, so switched to configure_file 2011-10-18 14:43:48 -05:00
beder
482c0afe2f 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
beder
36086448d2 Added bool conversions 2011-09-14 01:48:36 -05:00
beder
4e6418ff12 Added Dump() 2011-09-13 14:49:00 -05:00
beder
183ba98d03 Switched YAML::Parse to YAML::Load, and added LoadAll 2011-09-13 14:24:47 -05:00
beder
c314860e00 Added IsNull, IsScalar, IsSequence, IsMap functions, so you don't have to query Type() 2011-09-13 14:10:27 -05:00
beder
8dcd96dbd2 Added tags to Node 2011-09-13 14:00:47 -05:00
beder
535f81a387 Added a convert<> specialization for YAML::_Null (so you can say node[YAML::Null]) 2011-09-13 02:03:56 -05:00
beder
78ebd14551 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
beder
04152dae8f 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
beder
14955a2a63 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
beder
f38e38df09 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
beder
cf240daf63 Added reading/writing std::list 2011-09-11 23:18:19 -05:00
beder
2a71e8868b Added reading/writing std::vector 2011-09-11 23:14:52 -05:00
beder
cf5695e320 Removed the (unimplemented) operator <, and added operator == (in place of is()) for nodes 2011-09-11 22:56:04 -05:00
beder
30ce282198 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
beder
4dd9f036d3 Implemented operator[] specialization, but only const (should the sequence be mutable?) 2011-09-11 21:51:04 -05:00
beder
e8210b476c Started specialization for operator[] for integers 2011-09-11 21:32:47 -05:00
beder
d8955fc52c Set the map iterator to filter over undefined items 2011-09-11 19:44:27 -05:00
beder
c8fc3c9592 Implemented the map size computation 2011-09-11 17:16:26 -05:00
beder
9c6bd61398 Switched the implementation of maps from list<pair> to map (but just pointer comparison) 2011-09-11 16:56:38 -05:00
beder
ad28ffc6f8 Added computing and caching the sequence size 2011-09-11 16:21:36 -05:00
beder
bb1a816a3a Added dependency management (to cause nodes to become defined if their children do) 2011-09-11 15:59:53 -05:00
beder
4bbe984bdc 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
beder
2851f5f8c9 Fixed minor things that used the old API, compiles/links/runs\! 2011-09-10 22:59:27 -05:00
beder
e905b74232 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
beder
8fd372b0db Start of moving Value -> Node and Node -> old API Node (with a #define toggle) 2011-09-10 17:18:15 -05:00
beder
33a71151ca Added helper emitter functions, but we have a problem: YAML::Value is already a manipulator 2011-09-10 16:50:44 -05:00
beder
b3086ac260 Fixed node iterator 2011-09-10 14:36:10 -05:00
beder
c12a03473e New iterators work\! 2011-09-10 14:16:50 -05:00
beder
89f87d855d 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
beder
81243c87d4 Finished the main iterator stuff, now have to hook it to the nodes/values 2011-09-10 14:06:49 -05:00
beder
f809206baa Halfway towards factoring out a node_iterator, and then building iterator on top of it 2011-09-10 13:20:22 -05:00
beder
dcf9309ea8 Started emitting events for Values 2011-09-10 12:42:42 -05:00
beder
b8e9b52af7 Implemented sugar Parse() functions 2011-09-09 23:40:19 -05:00