Christopher Dunn
3cf9175bde
remark defaults via doxygen snippet
2015-02-09 18:16:24 -06:00
Christopher Dunn
a9e1ab302d
Builder::settings_
...
We use Json::Value to configure the builders so we can maintain
binary-compatibility easily.
2015-02-09 17:30:11 -06:00
Christopher Dunn
694dbcb328
update docs, writeString()
2015-02-09 15:25:57 -06:00
Christopher Dunn
3a65581b20
drop an old impl
2015-02-09 09:54:26 -06:00
Christopher Dunn
66a8ba255f
clarify Builders
2015-02-09 01:29:43 -06:00
Christopher Dunn
2c1197c2c8
CharReader/Builder
...
* CharReaderBuilder is similar to StreamWriterBuilder.
* use rdbuf(), since getline(string) is not required to handle EOF as delimiter
2015-02-08 13:22:09 -06:00
Christopher Dunn
dee4602b8f
rm unique_ptr<>/shared_ptr<>, for pre-C++11
2015-02-08 11:54:49 -06:00
Christopher Dunn
636121485c
fix JSONCPP_WITH_CMAKE_PACKAGE #155
...
mv JSONCPP_WITH_CMAKE_PACKAGE ahead of INSTALL def.
2015-02-07 11:39:16 -06:00
Christopher Dunn
fe855fb4dd
drop nullptr
...
See issue #153 .
2015-02-02 15:33:47 -06:00
Christopher Dunn
198cc350c5
drop scoped enum, for pre-C++11 compatibility
2015-01-29 13:49:21 -06:00
Peter Spiess-Knafl
5e8595c0e2
added cmake option to build static and shared libraries at once
...
See #147 and #149 .
2015-01-27 18:22:43 -06:00
Christopher Dunn
7eca3b4e88
gcc-4.6 (Travis CI) does not support
2015-01-26 11:17:42 -06:00
Christopher Dunn
6065a1c142
make StreamWriterBuilder concrete
2015-01-26 11:01:15 -06:00
Christopher Dunn
28a20917b0
Move old FastWriter stuff out of new Builder
2015-01-26 10:47:42 -06:00
Christopher Dunn
177b7b8f22
OldCompressingStreamWriterBuilder
2015-01-26 10:44:20 -06:00
Christopher Dunn
c7b39c2e25
deprecate old Writers
...
also, use withers instead of setters, and update docs
2015-01-25 18:45:59 -06:00
Christopher Dunn
d78caa3851
implement strange setting from FastWriter
2015-01-25 18:15:54 -06:00
Christopher Dunn
c6e0688e5a
implement CommentStyle::None/indentation_==""
2015-01-25 17:32:36 -06:00
Christopher Dunn
1e21e63853
default \t indentation, All comments
2015-01-25 16:01:59 -06:00
Christopher Dunn
dea6f8d9a6
incorporate 'proper newlines for comments' into new StreamWriter
2015-01-25 15:55:18 -06:00
Christopher Dunn
fe3979cd8a
drop StreamWriterBuilderFactory, for now
2015-01-25 15:54:40 -06:00
Christopher Dunn
94665eab72
copy fixes from StyledStreamWriter
2015-01-25 15:54:40 -06:00
Christopher Dunn
9243d602fe
const stuff
2015-01-25 15:54:40 -06:00
Christopher Dunn
beb6f35c63
non-const write
2015-01-25 15:54:40 -06:00
Christopher Dunn
ceef7f5219
copied impl of StyledStreamWriter
2015-01-25 15:54:40 -06:00
Christopher Dunn
d49ab5aee1
use new BuiltStyledStreamWriter in operator<<()
2015-01-25 15:54:40 -06:00
Christopher Dunn
4d649402b0
setIndentation()
2015-01-25 15:54:40 -06:00
Christopher Dunn
489707ff60
StreamWriter::Builder
2015-01-25 15:54:39 -06:00
Christopher Dunn
5fbfe3cdb9
StreamWriter
2015-01-25 15:54:39 -06:00
Christopher Dunn
964affd333
add back space before trailing comment
2015-01-25 15:49:02 -06:00
Christopher Dunn
74c2d82e19
proper newlines for comments
...
The logic is still messy, but it seems to work.
2015-01-25 15:05:09 -06:00
Christopher Dunn
1e3149ab75
rm trailing newlines for *all* comments
...
This will make it easier to fix newlines consistently.
2015-01-25 14:32:13 -06:00
datadiode
2f046b584d
Fix a border case which causes Value::CommentInfo::setComment() to crash
...
re: pull #140
2015-01-25 11:19:51 -06:00
Christopher Dunn
7d82b14726
fix issue #90
...
We are static-casting to U, so we really have no reason to use
references.
However, if this comes up again, try applying -ffloat-store to
the target executable, per
https://github.com/open-source-parsers/jsoncpp/issues/90
2015-01-24 14:34:54 -06:00
Christopher Dunn
2bc6137ada
fix gcc warnings
2015-01-24 13:42:37 -06:00
Christopher Dunn
216ecd3085
fix test_comment_00 for #103
2015-01-23 14:28:44 -06:00
Christopher Dunn
d383056fbb
avoid extra newlines in StyledStreamWriter
...
Add indented_ as a bitfield. (Verified that sizeof(StyledStreamWriter)
remains 96 for binary compatibility. But the new symbol requires a minor
version-bump.)
2015-01-23 14:23:31 -06:00
Christopher Dunn
3efc587fba
make StyledStreamWriter work more like StyledWriter
...
tests pass
2015-01-23 13:36:10 -06:00
Christopher Dunn
3682f60927
--json-writer arg
2015-01-23 13:36:10 -06:00
Christopher Dunn
58c31ac550
mv try-block
2015-01-23 12:35:12 -06:00
Christopher Dunn
08cfd02d8c
fix minor bugs in test-runner
2015-01-23 12:35:12 -06:00
Christopher Dunn
79211e1aeb
Options class for test
2015-01-23 12:35:12 -06:00
Christopher Dunn
632c9b5032
cleaner
2015-01-23 12:35:12 -06:00
Christopher Dunn
05810a7607
cleaner
2015-01-23 12:35:12 -06:00
Christopher Dunn
942e2c999a
unindent test-code
2015-01-23 12:35:12 -06:00
Christopher Dunn
2160c9a042
switch from StyledWriter to StyledStream writer in tests
2015-01-23 09:02:44 -06:00
Christopher Dunn
76746b09fc
deprecate old removeMember()
2015-01-22 19:25:44 -06:00
Connor Manning
00b8ce81db
Build without warnings with -pedantic enabled.
2015-01-22 10:48:45 -06:00
Christopher Dunn
59167d8627
more changes per cr
2015-01-21 16:05:08 -06:00
Christopher Dunn
05c1b8344d
drop this-> (team preference)
2015-01-21 15:43:48 -06:00
Christopher Dunn
e893625e88
test removeIndex/Member()
2015-01-20 17:04:03 -06:00
Christopher Dunn
e87e41cdb0
from Itzik S; see issue #28
...
with minor corrections
2015-01-20 17:03:58 -06:00
Christopher Dunn
9de2c2d84d
partial
2015-01-20 17:02:48 -06:00
Christopher Dunn
46a925ba4a
fix compiler warning for a test
2015-01-20 15:19:22 -06:00
Mark Zeren
e39fb0083c
Normalize comment EOLs while reading instead of while writing
...
Tests are currently failing when git cloning on Windows with autocrlf = true. In
that setup multiline comments contain \r\n EOLs. The test code assumes that
comments contain \n EOLs and opens the .actual files (etc.) with "wt" which
converts \n to \r\n. Thus we end up with \r\r\n EOLs in the output, which
triggers a test failure.
Instead we should cannonicalize comments while reading so that they contain only
\n EOLs. This approach simplifies other parts of the reader and writer logic,
and requires no changes to the test. It is a breaking change, but probably the
Right Thing going forward.
This change also fixes dereferencing past the end of the comment string in
StyledWriter::writeCommentBeforeValue.
Tests should be added with appropriate .gitattributes for the input files to
ensure that we run tests for DOS, Mac, and Unix EOL files on all platforms. For
now this change is enough to unblock Windows builds.
issue #116
2015-01-20 13:45:44 -06:00
Christopher Dunn
836f0fb863
fix comments before several types
...
tests pass
2015-01-20 12:23:44 -06:00
Christopher Dunn
66eb72f121
use SwapPayload() to retain comments
...
All tests pass, but we might be missing coverage.
issue #47
2015-01-20 12:07:01 -06:00
datadiode
c07ef37904
https://github.com/open-source-parsers/jsoncpp/issues/47
2015-01-18 10:05:25 +01:00
datadiode
09d352ac13
Remove unused functions
2015-01-17 13:26:23 +01:00
datadiode
50753bb808
Simplify Reader::decodeNumber()
2015-01-17 13:21:42 +01:00
datadiode
c1441ef5e0
stricter float parsing
...
fixes `test/jsonchecker/fail31.json`
(issue #113 )
2015-01-16 15:05:12 -06:00
Christopher Dunn
65cee6ea16
fix double->string->double round-trip (bump minor ver.)
...
See #98 .
http://stackoverflow.com/questions/747470/what-is-the-meaning-of-numeric-limitsdoubledigits10/16941784#16941784
2015-01-06 12:40:36 -06:00
Magnus Bjerke Vik
748328a0d1
Fix cmake_package install being broken because of wrong include path.
...
The TARGET_INCLUDE_DIRECTORIES from inside the
IF(JSONCPP_WITH_CMAKE_PACKAGE) block was removed, since it only needs to
be set once.
In addition the CMAKE_VERSION check was simplified.
2015-01-06 09:51:44 +01:00
dominicpezzuto
d2b6992f3e
Fix build issues related to Solaris and older GCC
...
Fixed two build issues:
- JsonCPP currently doesn’t compile for Solaris due to platform
differences with ‘isfinite’ function. Fixed by adding proper include
and define for Solaris.
- JsonCPP currently doesn’t compile for GCC version 4.1.2 and earlier
due to use of ‘-Werror=*’ compile flag, which was introduced in a later
version. Fixed by adding version check to only add this flag on
supported versions of GCC.
2014-12-27 16:45:40 -05:00
dominicpezzuto
54764dd85b
Fix build issues related to Solaris and older GCC
...
Fixed two build issues:
- JsonCPP currently doesn’t compile for Solaris due to platform
differences with ‘isfinite’ function. Fixed by adding proper include
and define for Solaris.
- JsonCPP currently doesn’t compile for GCC version 4.1.2 and earlier
due to use of ‘-Werror=*’ compile flag, which was introduced in a later
version. Fixed by adding version check to only add this flag on
supported versions of GCC.
2014-12-27 16:44:26 -05:00
Christopher Dunn
8dd32e1e2e
Merge pull request #94 from Gachapen/cmake_target_include
...
CMake: Add include directory to jsoncpp_lib target
Well-researched. Passes Travis CI.
2014-12-24 01:30:13 -06:00
Magnus Bjerke Vik
3fd7f8b470
CMake: Only add include directory to jsoncpp_lib target if CMake version supports the command.
2014-12-16 08:58:52 +01:00
Magnus Bjerke Vik
e99e6d9cc6
CMake: Add include directory to jsoncpp_lib target so that it can be easier used with other projects.
2014-12-03 15:42:41 +01:00
Rémi Verschelde
27639ce578
Add support for BUILD_SHARED_LIBS argument
...
BUILD_SHARED_LIBS is a standard CMake argument that serves the purpose
of the custom JSONCPP_LIB_BUILD_SHARED. For now we force JSONCPP_LIB_BUILD_SHARED
to true if BUILD_SHARED_LIBS was defined.
Workaround for #51 .
2014-12-01 23:47:21 +01:00
xiaoyur347
83683da13f
fix gcc warning when CXXFLAGS contains '-Wextra'
...
json_value.cpp:179:26: warning: enumeral and non-enumeral type in conditional expression [enabled by default]
https://github.com/open-source-parsers/jsoncpp/pull/84
2014-11-19 23:59:34 -06:00
Gaurav
767713be2b
Remove gcc compilation warning in json_reader.cpp
...
Submitting Patch for Issue : https://github.com/open-source-parsers/jsoncpp/issues/77
It will fix warnings in json_reader.cpp
2014-11-17 14:04:03 +05:30
Gaurav
abc1e07543
Prefer appending character constants over string literals - correct patch.
...
Submitting correct patch for https://github.com/open-source-parsers/jsoncpp/issues/61
2014-11-13 12:47:19 +05:30
Billy Donahue
8eb5d89db6
Remove initInt and initUInt until they are needed.
2014-11-10 01:35:42 -05:00
Yu Xiaolei
dc84d96a49
Add CMake package file generation support
2014-11-05 12:31:44 +08:00
Yu Xiaolei
1c3a20de50
Allow customization of component install dirs
2014-11-05 11:25:53 +08:00
Mara Kim
b84a39cae5
Add public semantic error reporting
...
Closes open-source-parsers/jsoncpp#57
2014-10-23 02:18:14 -05:00
Cory Quammen
fd06bfca79
Removed unneeded newlines from parsed comments
...
Newlines from comments separated by lines are retained when comments
are appended, so adding a newline between separate comments for a
node is not needed.
2014-10-09 16:33:29 -04:00
Cory Quammen
4d23492d11
Added printing of comments to *.actual test files
...
This enables testing of comment-handling code. Updated *.expected test
result files to account for printing of comments.
2014-10-09 16:33:29 -04:00
Chuck Atkins
9dc9026e0b
Workaround for missing C99 functions in older versions of Visual Studio
2014-09-19 13:16:09 -04:00
Christopher Dunn
4002f8a4be
Revert "Revert "Removed vim mode lines.""
...
This reverts commit af77b5b59456f6a9c7a9c6a5464001ef5665f897.
See discussion at
32009b17e4 (commitcomment-7827708)
2014-09-18 16:46:40 -07:00
Christopher Dunn
0375af2eb5
drop version qualifier
...
This should help keep version.h stable.
x.y.z-dev
=> major, minor, patch, qual
== x, y, z, -dev
But we do not need -dev anymore.
2014-09-18 16:43:07 -07:00
Aaron Jacobs
ba330893d7
Ran clang-format again, this time hitting .inl files too.
...
clang-format -i $(find . -name '*.h' -or -name '*.cpp' -or -name '*.inl')
2014-09-18 16:33:49 -07:00
Christopher Dunn
877dd17206
bump version; proper SOVERSION
2014-09-16 12:42:33 -07:00
Christopher Dunn
16709c6ee8
JSONCPP_VERSION, not JSON_CPP_VERSION
2014-09-16 12:42:33 -07:00
Christopher Dunn
9aa4681052
Revert "Merge branch 'no-version'"
...
This reverts commit d9ced92d4040ee6c1475e96e18d715f99647e668, reversing
changes made to d2fa664a12b478b3fd21f7659f3674c8520bf43b.
Conflicts:
include/json/version.h (keep)
2014-09-16 12:42:32 -07:00
Christopher Dunn
af77b5b594
Revert "Removed vim mode lines."
...
This reverts commit 32009b17e4d35a812575cfcf6bae9ec49fc67446.
2014-09-16 12:42:32 -07:00
Aaron Jacobs
11086dd6a7
Enabled PointerBindsToType in clang-format options.
2014-09-15 10:15:29 +10:00
Aaron Jacobs
30b07c0275
Ran clang-format over all .h and .cpp files.
...
clang-format -i $(find . -name '*.h' -or -name '*.cpp')
2014-09-15 10:14:48 +10:00
Aaron Jacobs
32009b17e4
Removed vim mode lines.
...
Users can set their own preferences in their personal vimrc.
2014-09-15 08:23:41 +10:00
Christopher Dunn
8f730b8a60
stop using version.h.in for cmake
2014-09-11 10:09:48 -07:00
Billy Donahue
45cd9490cd
Switch to copy-and-swap idiom for operator=.
...
This allows the compiler to elide a copy when rhs is a temporary.
2014-09-10 10:37:34 -07:00
Christopher Dunn
236db83742
ws
2014-09-10 10:35:01 -07:00
Christopher Dunn
9d694516a0
clarify return value
2014-09-03 13:54:49 -07:00
Christopher Dunn
d94caac1ea
ws
2014-09-03 13:46:37 -07:00
mloy
8eb6f88a87
snprintf does return a signed integer
...
assert if returned value is neagtive
2014-09-03 13:37:17 -07:00
Matthias Loy
64d591b720
snprintf already calculated the length
2014-09-03 13:37:17 -07:00
Matthias Loy
fe2cd01e80
free does nothing if parameter equals NULL
2014-09-03 13:37:17 -07:00
Don Milham
5bf16105b5
added option to FastWriter which omits the trailing new line character
2014-09-02 17:09:07 -06:00
Matthias Loy
48d9a92a1b
do intermediate step in order to omit "dereferencing type-punned pointer" error
2014-08-13 13:20:29 +02:00
Matthias Loy
f97723dbb7
provoke compile error:
...
"dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]"
2014-08-13 13:19:02 +02:00