Baptiste Lepilleur
201fb2cf0d
- Moved definition of Json::Int and Json::UInt to config.h which compiler detection logic to define them to 64 bits integer if JSON_NO_INT64 is not defined.
...
- Added Json::ArrayIndex as an unsigned int to forwards.h
- Modified Json::Value to consistently use Json::ArrayIndex.
- Added int/unsigned int constructor overload to Json::Value to avoid ambiguous constructor call.
- Modified jsontestrunner/main.cpp to use Json::valueToString for Value::asInt() conversion to string.
- Modified Json::Reader to only overflow to double when the number is too large (previous code relied on the fact that an int fitted in a double without precision loss).
- Generalized uintToString() helpers and buffer size to automatically adapt to the precision of Json::UInt.
- Added specific conversion logic for UInt to double conversion on Microsoft Visual Studio 6 which only support __int64 to double conversion (unsigned __int64 conversion is not supported)
- Added test for 64 bits parsing/writing. Notes: those will fail when compiled with JSON_NO_INT64 (more dev required to adapt).
2010-04-19 07:37:41 +00:00
Baptiste Lepilleur
afd9cef928
Removed experimental ValueAllocator, it caused static initialization/destruction order issues (bug #2934500 ). The DefaultValueAllocator has been inlined in code.
2010-03-13 13:10:27 +00:00
Baptiste Lepilleur
d38ba2a2cb
- extracted some utility functions out-of reader and parser.
2010-03-13 12:24:38 +00:00
Baptiste Lepilleur
fcf145ecd4
- changed SVN EOL properties so that HTML file are in Unix format, Visual Studio solution are always in Windows format, and sources are in native format.
2010-02-23 08:23:41 +00:00
Baptiste Lepilleur
8d3790d217
- added missing virtual destructor to TestCase.
2010-02-21 14:28:54 +00:00
Baptiste Lepilleur
3a1b93be1c
- added Int/UInt typedef in Json namespace. Modified Value::Int and Value::UInt to be typedef on those. Modified code to use Json::Int instead of Value::Int.
...
- added Value constructor taking begin/end pointer to initialize the Value with a non-zero terminated string.
2010-02-21 14:08:17 +00:00
Baptiste Lepilleur
4a5e58c4f4
Integrated part of Patch #2839016 , fixing default iterator initialization when using internal map.
2010-01-15 14:56:59 +00:00
Baptiste Lepilleur
56c0401a90
Fixed compilation with Sun Studio 12 (avoid usage of std::distance)
2009-11-24 17:43:58 +00:00
Baptiste Lepilleur
a1d6c9e66a
Fixed iteration bug over null values.
2009-11-23 22:33:30 +00:00
Baptiste Lepilleur
45c499d310
- added mini unit testing framework
...
- added unit tests for Value.isXYZ() and iteration over Value members to compute size
2009-11-21 18:07:09 +00:00
Baptiste Lepilleur
f73d4b9a6b
Fixed compilation issue with vs2005
2009-11-19 19:13:18 +00:00
Baptiste Lepilleur
2a787ec8e6
Moved Visual Studio projects file under makefiles/vs71 to allow usage of multiple versions on the same source tree.
2009-11-19 13:29:25 +00:00
Baptiste Lepilleur
f179a180bd
Fixed comment after value in object value signaled by Frederic Surleau.
2009-11-18 22:25:34 +00:00
Baptiste Lepilleur
8868147835
- added Features class that describes allowed extension for Reader, to allow for strict configuration
...
- added tests from json.org jsonchecker and modified jsontestrunner to use strict parsing mode when executing them
2009-11-18 21:38:54 +00:00
Malay Shah
617270bfaa
Fixing string index issue when checking for control characters
2009-11-18 17:40:22 +00:00
Baptiste Lepilleur
5d0ed235c6
Fixed default constructor initialization.
2009-11-18 17:12:24 +00:00
Baptiste Lepilleur
eda47b61b5
Fixed bug introduced by utf-8 patch with fix provided by Henry Ludemann. All unit tests are now passing.
2009-11-18 17:01:09 +00:00
Baptiste Lepilleur
b0ab79bc5b
Added patch for mingw from Sebastien Vincent
2009-11-15 22:49:54 +00:00
Malay Shah
ee4b4dab54
Implementing support for reading and writing Unicode escape sequences.
2009-11-13 04:21:14 +00:00
Christopher Dunn
8f5ddcfa8d
Added cstring for memcpy(), as suggested by sebastien.vincent@turnserver.org . This allows gcc-4 to compile. Removed doxygen from SConstruct, since it is now broken; I have been unable to get it to work with either scons 0.97 or scons 2.1; hopefully someone else can get that working again.
2009-05-11 20:04:10 +00:00
Christopher Dunn
2083c9e3bf
Forgot to add # to %g modifier for sprintf in valueToString for floats. Otherwise no decimal point appears when only zeroes would follow, which changes the type to integer.
2008-01-24 20:21:11 +00:00
Christopher Dunn
ed971e180e
Changed valueToString for floats so that zeroes after a decimal are truncated -- saves file size esp. for StyledStreamWriter which uses tabs instead of spaces.
2008-01-24 20:09:48 +00:00
Baptiste Lepilleur
e1aad35ae5
Fixed compilation issue on windows (avoid using cstring and use string.h instead).
2008-01-20 16:55:26 +00:00
Christopher Dunn
e1f8a4799a
added dependency
2007-06-14 22:01:40 +00:00
Christopher Dunn
f986423955
Stripped carriage return and added eol-style native prop.
2007-06-14 21:01:26 +00:00
Christopher Dunn
9f8abcb258
Indentation is not perfect, but pretty good. Not sure how to perfect, given the difficulty of testing the last char written.
2007-06-13 17:02:01 +00:00
Christopher Dunn
605cd7e902
Added StyledStreamWriter, which has no reason to derive from Writer, since its write() method does cannot return a string and must take a stream.
2007-06-13 15:55:50 +00:00
Christopher Dunn
b2f720456e
Added prop svn:eol-style native. Stripped carriage-returns on unix. Hopefully, this will work for Windows too now.
2007-06-13 15:48:30 +00:00
Christopher Dunn
a44cffb342
Fixed compilation warnings. Added -Wall to linux-gcc compilation. JSON_ASSERT_MESSAGE now throws exception (but JSON_ASSERT does not).
2007-05-09 19:35:15 +00:00
Christopher Dunn
f153eaaed0
Fixed 2.95.3 header probs
2007-03-23 10:19:49 +00:00
Christopher Dunn
56a1d6cbf5
Added istream/ostream funcs/operators
2007-03-23 09:57:01 +00:00
Christopher Dunn
2370789d67
Renamed buildLibary to buildLibrary and added SharedLibrary rule.
2007-03-23 08:57:57 +00:00
Christopher Dunn
208a781e47
Added empty() operator-bang and isNull()
2007-03-23 08:55:25 +00:00
Christopher Dunn
1aa20f9e58
Added removeMember() and altered a few comments.
2007-03-23 08:30:20 +00:00
Christopher Dunn
0c498695a7
fixed compiler warning
2007-03-23 07:16:59 +00:00
Christopher Dunn
ca21256395
setComment() will assert if comment does not start with / (or if it were NULL, which would have seg-faulted before).
2007-03-23 07:05:19 +00:00
Christopher Dunn
5674738668
[1611376]by reserving the max string-size when escaped chars exist, we should save some runtime.
2007-03-23 06:12:28 +00:00
Christopher Dunn
ce1f32981b
[1611376]writer now escapes special characters. When no special chars are present, old behavior is retained. New method might have a performance penalty b/c of operator new inside std::string. (This would not exist if the whole thing operated on ostream instead, I think.)
2007-03-23 05:56:39 +00:00
Christopher Dunn
fe536c0631
[1587188]Fixed parsing of comment at tail of object.
2007-03-23 05:04:38 +00:00
Christopher Dunn
3ffbf208a0
Fixed gcc 2.95.3 problem. Bug: 1570919
2007-03-23 04:55:07 +00:00
Christopher Dunn
baca6c23c2
Added newline b/c of gcc--warning: no newline at end of file
2007-03-23 03:31:35 +00:00
Baptiste Lepilleur
2d4dd281f1
- Made FastWriter output more compact.
...
- fixed bug in runjsontests.py script.
2007-03-17 22:14:59 +00:00
Baptiste Lepilleur
4cd8bae331
- reorganized repository to match standard layout
2007-03-15 22:11:38 +00:00