Commit Graph

84 Commits

Author SHA1 Message Date
jbeder
bd60bdb227 Fixed negative infinity parsing 2011-07-10 18:29:44 +00:00
jbeder
207b719966 Added parsing .inf and .nan (and friend) 2011-07-10 16:27:40 +00:00
jbeder
4b522aaf4c Added emitting std::set (and refactored the stl emitters a bit) 2011-05-18 21:07:25 +00:00
jbeder
ad63662bd9 Fixed mixed line endings 2011-03-17 02:04:34 +00:00
jbeder
88b9ea7067 Marked Parser, Emitter, Node, Iterator, Mark, and Null for exporting to a DLL. It appears to work properly, although VS gives me lots of warning C4251 since I didn't export all data members of each of the above classes.
It seems that it's not necessary to export those members (as long as you can't access them), and most of them are STL instances, which apparently cause lots of problems for DLLs. (For example, you simply can't export instances of std::map; see http://support.microsoft.com/kb/168958.)
2011-03-16 02:31:30 +00:00
jbeder
afa6cf2b68 Removed comparison/implicit conversion operators for Node, and renamed Node::Read<T>() to Node::to<T>() 2011-03-15 05:49:56 +00:00
jbeder
a19be21c60 Added explicit doc start/end tokens for the emitter, and set it so that if you try to write after you've already written a full doc, it writes a doc start and continues 2011-03-03 09:26:12 +00:00
jbeder
8186058a7f Set the precision of emitting float/double to 15 2011-03-03 02:38:35 +00:00
jbeder
1f3cf8639a Merged r444:449 from the node refactoring branch to the trunk 2011-03-03 00:19:26 +00:00
jbeder
067bd9866f Refactored bool emitting to make it 1) correct for the short bool form and 2) not barf on early versions of VS 2011-03-02 20:55:05 +00:00
jbeder
cd80b759c8 Included 'mark.h' in the graphbuilder so that its method for removing the unused param warning (casting to void) compiles on VS 2011-03-02 20:30:54 +00:00
jbeder
e227456982 Flipped the include guard and the pragma, and don't use the pragma for early versions of gcc (< 3.4) 2011-03-02 06:11:41 +00:00
jbeder
3fc93080f3 Fixed 'long long' error in VS 2002, issue 90 2011-03-02 05:15:36 +00:00
jbeder
faeb0425d8 Merged contrib folders from the graphbuilder-api branch, including the recursive search in CMakeLists.txt 2011-03-02 04:48:04 +00:00
jbeder
9a1ffcad7c Switched exception constants to const char * const (from const std::string) so we don't have to construct them all in every translation unit, and switched the exception class to derive from std::runtime_error (so it handles what() for us) 2011-03-02 04:12:57 +00:00
jbeder
d2e6c81a78 Added long long types to the emitter 2010-11-15 01:46:33 +00:00
jbeder
2410cc6e9e Refactored tags so we can emit secondary tags (and named local tags) 2010-10-28 23:06:16 +00:00
jbeder
b44e529d75 Implemented binary emitting without the binary tag 2010-10-28 21:53:54 +00:00
jbeder
48e70e464a Added more tests for the newline, and disallowed newlines after implicit block keys 2010-10-22 03:53:33 +00:00
jbeder
467eb4931b Added YAML::Newline manipulator for the emitter 2010-10-21 22:02:29 +00:00
jbeder
2a46b5d0eb Merged the other-tags branch into the trunk (this wasn't an rX:Y merge, since the branch wasn't branched directly from the head of the trunk) 2010-10-19 06:46:55 +00:00
jbeder
f78892ee4d Made emitter noncopyable, which should fix any auto_ptr warnings 2010-10-18 07:24:42 +00:00
jbeder
1b5dda963a Fixed the rest of the includes to explicitly state yaml-cpp/ 2010-10-18 07:22:53 +00:00
jbeder
3aafbdac96 Moved all the includes to a subfolder yaml-cpp so they don't interfere with other libraries' includes 2010-10-18 07:05:53 +00:00
jbeder
3ffcfb3a83 Merged r366:387 from the jbeder-event-api branch 2010-10-18 06:45:03 +00:00
jbeder
264c0c67c3 Added overloads for parsing stl maps and vectors 2010-03-15 04:25:17 +00:00
jbeder
514d0a90e9 Set alias nodes to return the tag of their anchor 2010-03-15 04:10:36 +00:00
jbeder
79fbaa6a33 Updated to remove most of the warnings in Visual Studio. (There's still the one about all control paths returning a value left.) Fixed one warning (when an istream converts to void * to then convert to bool), and disabled three. 2010-03-03 05:30:06 +00:00
jbeder
52a1a2f32f Refactored emitter operator << overloads to not template them, so it's easier to overload for pointer types 2009-11-17 20:21:22 +00:00
jbeder
24e3129a71 Refactored the traits a bit, and added displaying the key to string and numeric key not found errors 2009-11-12 17:00:12 +00:00
jbeder
dc6253863d Replaced conversion macros with SFINAE 2009-11-10 21:23:52 +00:00
jbeder
4f71ae3c72 Overloaded more integral types for emitting 2009-11-06 03:24:12 +00:00
jbeder
6c504ceae9 Fixed the return value of the integral conversion functions, and also unset the dec flag so it reads other bases (just a temporary fix, since we're officially supposed to read binary too) 2009-11-06 03:13:54 +00:00
jbeder
00225fc1c7 Fixed bug with block maps with null value (the next key was being read as the value) 2009-10-30 01:06:19 +00:00
jbeder
b8a2c396a3 Merged r295:305 from the tags branch to the trunk 2009-10-29 15:48:06 +00:00
jbeder
189e7e1a93 Removed crt stuff (we can do memory leak checking in Linux easier) 2009-10-27 14:55:01 +00:00
jbeder
7f0427a8b2 Merged r270:HEAD of the emitting-unicode branch 2009-10-19 23:31:11 +00:00
jbeder
1a3afd2438 Added default constructor to Parser, and cleaned it up a bit 2009-10-19 22:40:46 +00:00
jbeder
3f0cbb563d Updated signature of Parser::GetNextDocument (issue 45) 2009-09-29 18:25:11 +00:00
jbeder
564b0d4d52 Modified old gcc version patch so it still uses the new Node::Read in Visual Studio. Also broke up the \uNNNN characters in the spec tests into \xNN-type strings. 2009-09-16 05:31:28 +00:00
jbeder
bbc05e6457 Patched for gcc version <= 3.3 (just fall back to original version of Node::Read) 2009-09-16 04:01:40 +00:00
jbeder
f5bca50ff8 Cleaned up the read template overloads (per litb's update); it seems the old version didn't compile in VS2008. Also updated the VS project files. 2009-09-08 20:57:18 +00:00
jbeder
a258030d6d Refactored the operator >> and Node::Read default functions, as well as the conversion functions, to more easily read new types as keys (this uncovered an error, in example 2.11 of the spec) 2009-09-06 20:52:45 +00:00
jbeder
6b70894903 Added templated casting to nodes, as well as operator == and != (for quick checks, especially to help in testing). Implemented size() on a map node to return the number of key/value pairs (as in std::map) 2009-09-06 15:54:11 +00:00
jbeder
7118305ecd Added Node::Clone function 2009-08-24 20:10:42 +00:00
jbeder
7a80ac787d Cleaned up 2009-08-24 18:23:20 +00:00
jbeder
8cc5826a55 Removed the std::wstring conversion 2009-08-22 00:25:37 +00:00
jbeder
903b2d6d5a Converted indexing to std::size_t, and fixed the Node templated overloads to properly index any index type (determining what is an index type is a bit of a hack - it should be is_convertible<T, std::size_t> (I think), but I just explicitly wrote down a list) 2009-08-19 20:58:07 +00:00
jbeder
72bcc006de Added 'yaml-cpp: ' to the exception messages 2009-08-19 05:09:12 +00:00
jbeder
51f5e012bb Added templated Read() function that creates the output variable itself (so you don't need to have a temp variable) 2009-08-19 03:37:19 +00:00