Commit Graph

388 Commits

Author SHA1 Message Date
beder
2851f5f8c9 Fixed minor things that used the old API, compiles/links/runs\! 2011-09-10 22:59:27 -05:00
beder
24c55b434a Added stubs for spec and parser tests with the new API 2011-09-10 18:05:35 -05:00
beder
7cdf684ae6 Moved old api tests to subfolder 2011-09-10 18:02:07 -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
59ce694ca3 Implemented value events emitter 2011-09-10 16:23:18 -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
beder
8185fa48f1 Implemented (untested) the value builder 2011-09-09 23:28:21 -05:00
beder
91a3f020ff Map iterator works\! 2011-09-09 19:25:11 -05:00
beder
f0ae0254d4 Sequence iterator works\! 2011-09-09 19:22:17 -05:00
beder
b35a332fdd Switched iterators to typedef's, with a bit of finagling so we can forward-declare them 2011-09-09 19:07:37 -05:00
beder
f60fb95ab6 Base iterator stuff compiles :) 2011-09-09 18:46:37 -05:00
beder
9de9ac7e7e Started writing new iterators 2011-09-09 16:17:59 -05:00
beder
603c726811 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
beder
8e52497d96 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
beder
7a1e47e03f Added append() 2011-09-09 02:51:35 -05:00
beder
255a392eb9 Switched operator[] access to node reference equality, not node equality 2011-09-09 02:39:36 -05:00
beder
e32b3cd93f 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
beder
37cd3bd53c Added half of the std::map conversion (we don't have reading from Values yet) 2011-09-08 02:10:04 -05:00
beder
c080478444 Added back the streamable conversions 2011-09-08 02:05:03 -05:00
beder
bb2eafc387 Switched convert to a templated struct that can be specialized (so we can partially specialize it) 2011-09-08 02:02:15 -05:00
beder
21fbb461c0 Added streamable conversions 2011-09-08 00:48:40 -05:00
beder
3b0cc619b2 Implemented conversion for std::string, including a bypass-accessor to the scalar value 2011-09-07 15:49:01 -05:00
beder
a9c7f8cc5a Set the 'memory' to only store node_refs, not nodes 2011-09-07 14:56:04 -05:00
beder
82fa4e71db Implemented is() 2011-09-07 14:46:25 -05:00
beder
980fb59d4b 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
beder
75f3a36547 Implemented map get(), and it would work (I think) if we implemented convert() for strings 2011-09-07 03:36:50 -05:00
beder
2d75a631e2 Set up map searching by templated key 2011-09-07 03:21:24 -05:00
beder
7a3f425720 Reorganized so that we don't have cyclic include problems 2011-09-07 02:59:58 -05:00
beder
6fa53f9714 Implemented map access by already-existing node 2011-09-07 02:39:59 -05:00
beder
a07642f156 Started implementing node_data 2011-09-07 00:45:28 -05:00
beder
555cfae28d Compiles/links assignment to string 2011-09-07 00:20:23 -05:00
beder
74ffe6a61b Value stuff compiles/links with lots of placeholder functions 2011-09-07 00:12:24 -05:00
beder
57617cc5cc Sketched more of the implementation 2011-09-06 23:11:38 -05:00
beder
40605b78c7 Moved the value header to its own subfolder 2011-09-06 16:06:46 -05:00
beder
1d7e6a6589 Sketched out interface for YAML::Value 2011-09-06 01:43:15 -05:00
beder
d6811c42a8 Merged from trunk 2011-09-06 01:10:27 -05:00
beder
ae14042031 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
beder
126dfdb155 Switched YAML::Binary interface to use unsigned chars, not chars 2011-09-06 00:39:31 -05:00
beder
a8fdb1718d Added overload for operator [] for char * (non-const version) 2011-09-06 00:32:53 -05:00
beder
ec3a9ecbf0 Fixed empty string emitter bug (it now with auto-quote it 2011-09-06 00:24:10 -05:00
beder
ced351dec8 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
beder
f56d453050 Added api sketch 2011-09-04 19:50:08 -05:00