Commit Graph

59 Commits

Author SHA1 Message Date
Jesse Beder
326899815f Added overloads for parsing stl maps and vectors 2010-03-15 04:25:17 +00:00
Jesse Beder
083a97b171 Set alias nodes to return the tag of their anchor 2010-03-15 04:10:36 +00:00
Jesse Beder
bca7737463 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
Jesse Beder
03df73a7b0 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
Jesse Beder
3307f0941c 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
Jesse Beder
32491166ac Replaced conversion macros with SFINAE 2009-11-10 21:23:52 +00:00
Jesse Beder
6f94f954bb Overloaded more integral types for emitting 2009-11-06 03:24:12 +00:00
Jesse Beder
90fd24d149 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
Jesse Beder
e04be7890a 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
Jesse Beder
a372bfdc60 Merged r295:305 from the tags branch to the trunk 2009-10-29 15:48:06 +00:00
Jesse Beder
fe57829aca Removed crt stuff (we can do memory leak checking in Linux easier) 2009-10-27 14:55:01 +00:00
Jesse Beder
fa0af88dfe Merged r270:HEAD of the emitting-unicode branch 2009-10-19 23:31:11 +00:00
Jesse Beder
ed570b9f7c Added default constructor to Parser, and cleaned it up a bit 2009-10-19 22:40:46 +00:00
Jesse Beder
7db39e66b8 Updated signature of Parser::GetNextDocument (issue 45) 2009-09-29 18:25:11 +00:00
Jesse Beder
94eb7f1dbd 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
Jesse Beder
5733b77b84 Patched for gcc version <= 3.3 (just fall back to original version of Node::Read) 2009-09-16 04:01:40 +00:00
Jesse Beder
7c4cc9bf5f 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
Jesse Beder
e7ac6b3bf1 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
Jesse Beder
07443495c8 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
Jesse Beder
abe0af76c5 Added Node::Clone function 2009-08-24 20:10:42 +00:00
Jesse Beder
8e636436f8 Cleaned up 2009-08-24 18:23:20 +00:00
Jesse Beder
8c33523b15 Removed the std::wstring conversion 2009-08-22 00:25:37 +00:00
Jesse Beder
81c2e6b6ca 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
Jesse Beder
ba11f5ae15 Added 'yaml-cpp: ' to the exception messages 2009-08-19 05:09:12 +00:00
Jesse Beder
d92ca21bcc 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
Jesse Beder
d506dae914 Added IsNull function 2009-07-31 05:07:21 +00:00
Jesse Beder
7a89920441 Fixed null key/value bug, added tests 2009-07-30 06:49:09 +00:00
Jesse Beder
ae41e58ca3 Added support for emitting and represeting null 2009-07-30 04:42:27 +00:00
Jesse Beder
72919adf55 Added header file inclusion guards 2009-07-29 22:27:20 +00:00
Jesse Beder
1507fcd36d Forgot to add mark.h 2009-07-27 04:14:19 +00:00
Jesse Beder
b1ce042535 Collected pos, line, and column into a Mark struct 2009-07-27 02:56:18 +00:00
Jesse Beder
555fb5c3a0 Fixed the Exception::what() function 2009-07-26 01:37:21 +00:00
Jesse Beder
670a3e952a Patched to read into std::wstring 2009-07-15 20:47:51 +00:00
Jesse Beder
a84c1af98a Added FindValue to more easily read optional keys in a map 2009-07-12 02:59:23 +00:00
Jesse Beder
3e0179fd6e Added emitting for a YAML::Node (instead of the ad-hoc std::ostream overload) so it'll actually emit valid YAML always 2009-07-10 23:39:14 +00:00
Jesse Beder
11f98f1cc6 (Finally) overrode Exception::what()\n 2009-07-10 04:17:30 +00:00
Jesse Beder
781fb4d093 Fixed warnings to compile on gcc with -Wall -pedantic -Wextra 2009-07-10 03:30:04 +00:00
Jesse Beder
441a230509 Set eol-style to native on all of the new files 2009-05-30 02:29:47 +00:00
Jesse Beder
e76521c0e9 Changed the way we read different types of scalars.
It's better organized now, I think - nodes only offer a single main way of getting the fundamental scalar (as a string), and now we can specialize a single template to read specific types.
2009-05-23 23:51:01 +00:00
Jesse Beder
5139ebf7ba Added emitter headers to yaml.h 2009-05-22 22:23:57 +00:00
Jesse Beder
b51a32ae14 Replaced direct emitter writing with an accessor to a C-string 2009-05-22 22:21:01 +00:00
Jesse Beder
9245f9253a Merged emitter branch into trunk, changes r105:r151 2009-05-22 21:52:31 +00:00
Jesse Beder
b3a5a519f2 Merged aliases branch into trunk, changes r100:150 2009-05-22 21:48:05 +00:00
Jesse Beder
7214ffc107 Re-added the throw() specification to ~Exception(), and also to ~TypedKeyNotFound(); I suppose this'll fix the gcc compiler error. 2009-01-01 23:59:37 +00:00
Jesse Beder
d98f9d8713 Removed throw() specifier in Exception (I don't remember putting it in). This may solve a gcc error (I haven't tested it yet) or it may break it further. 2009-01-01 20:14:32 +00:00
Jesse Beder
27bd791ea0 Added a templated derived exception to KeyNotFound so that you can figure out *which* key wasn't found. 2009-01-01 02:40:18 +00:00
Jesse Beder
043bbddcf0 Added line/column data for nodes so they can give better invalid scalar exceptions. 2008-11-18 04:20:07 +00:00
Jesse Beder
14cdec770c Added more natural ways to parse boolean values (based on the YAML spec).
(Thanks to Vadim Zeitlin)
2008-09-25 00:15:40 +00:00
Jesse Beder
6e4317e37c Added Read() functions for Node that return true/false, so we can easily check if a read is successful without throwing.
But we still have operator >> that throws on failure.
2008-09-24 23:29:00 +00:00
Jesse Beder
1406b84016 Made Node non-copyable. 2008-09-19 02:44:49 +00:00