Jesse Beder
94dc63af04
Added parsing .inf and .nan (and friend)
2011-07-10 16:27:40 +00:00
Jesse Beder
4c3926a5c7
Added emitting std::set (and refactored the stl emitters a bit)
2011-05-18 21:07:25 +00:00
Jesse Beder
dc5bd4afce
Fixed mixed line endings
2011-03-17 02:04:34 +00:00
Jesse Beder
c67b41c966
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
Jesse Beder
ebdfeb0349
Removed comparison/implicit conversion operators for Node, and renamed Node::Read<T>() to Node::to<T>()
2011-03-15 05:49:56 +00:00
Jesse Beder
cb632b3968
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
Jesse Beder
9128d841f5
Set the precision of emitting float/double to 15
2011-03-03 02:38:35 +00:00
Jesse Beder
ca5992b971
Merged r444:449 from the node refactoring branch to the trunk
2011-03-03 00:19:26 +00:00
Jesse Beder
39c396ab01
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
Jesse Beder
1e0c36c5cc
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
Jesse Beder
f34d60ca65
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
Jesse Beder
75a2fbe564
Fixed 'long long' error in VS 2002, issue 90
2011-03-02 05:15:36 +00:00
Jesse Beder
802cc6bcd6
Merged contrib folders from the graphbuilder-api branch, including the recursive search in CMakeLists.txt
2011-03-02 04:48:04 +00:00
Jesse Beder
c65a7dfc7c
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
Jesse Beder
99089bf218
Added long long types to the emitter
2010-11-15 01:46:33 +00:00
Jesse Beder
a6afaabcb0
Refactored tags so we can emit secondary tags (and named local tags)
2010-10-28 23:06:16 +00:00
Jesse Beder
d508203ed8
Implemented binary emitting without the binary tag
2010-10-28 21:53:54 +00:00
Jesse Beder
6b7cb45ac8
Added more tests for the newline, and disallowed newlines after implicit block keys
2010-10-22 03:53:33 +00:00
Jesse Beder
1e4210401f
Added YAML::Newline manipulator for the emitter
2010-10-21 22:02:29 +00:00
Jesse Beder
51c84f1c02
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
Jesse Beder
a19336fd98
Made emitter noncopyable, which should fix any auto_ptr warnings
2010-10-18 07:24:42 +00:00
Jesse Beder
9ad3a1b905
Fixed the rest of the includes to explicitly state yaml-cpp/
2010-10-18 07:22:53 +00:00
Jesse Beder
5b8ca9ce01
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
Jesse Beder
a71c03a18b
Merged r366:387 from the jbeder-event-api branch
2010-10-18 06:45:03 +00:00
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