Rosen Penev
90ca694e46
clang-tidy fixes again ( #1155 )
...
* [clang-tidy] remove redundant string initialization
Found with readability-redundant-string-init
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* [clang-tidy] switch to raw strings
Easier to read.
Found with modernize-raw-string-literal
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* [clang-tidy] fix performance issues
Found with performance*
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* fix extra comma warnings
Found with clang's -Wextra-semi-stmt
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* remove JSONCPP_OP_EXPLICIT
This codebase in C++11. No need for compatibility with C++98.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* remove JSONCPP_NOEXCEPT
This codebase is C++11 now. No need for this macro.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-04-12 01:26:04 -04:00
Jordan Bayles
9704cedb20
Issue 1100: Drop CPPTL support
...
CPPTL support is no longer relevant to JsonCpp, and can be removed from
the library. This patch removes all mentions of CPPTL, by removing all
definitions and code sections conditionally compiled only when JsonCpp
is used with CPPTL. Include guards are also renamed to not refer to
CPPTL where appropriate.
2019-11-14 09:38:11 -08:00
Billy Donahue
1c2ed7a10f
convert JSONCPP_STRING etc from macros to typedefs
2019-01-17 23:14:18 -05:00
Billy Donahue
dc4a7f9b61
Reapply clang-format.
...
$ clang-format -i -style=file \
$(find . | egrep '.*\.(h|cpp|inl)$')
2019-01-17 11:11:55 -05:00
Hans Johnson
e50bfefef1
COMP: Prefer the C++ headers over the C99 headers
...
Using the C++11 headers keeps the library cleaner and more
rigorously scoped use of namespaces.
2018-12-30 15:29:22 -06:00
Billy Donahue
b5e1fe89aa
Apply the formatting specified in .clang-format file.
...
$ clang-format --version
clang-format version 7.0.0 (tags/google/stable/2018-01-11)
$ clang-format -i --style=file $(find . -name '*.cpp' -o -name '*.h')
2018-05-20 18:38:42 -04:00
Devin Jeanpierre
59e4d35339
Restore BL's authorship attribution, and add "The Jsoncpp Authors" where it was missing.
...
Requested/noticed in https://github.com/open-source-parsers/jsoncpp/pull/610 , and a
followup to https://github.com/open-source-parsers/jsoncpp/pull/607 .
2017-07-21 03:44:36 -07:00
Christopher Dunn
38bb491400
JSONCPP_OSTRINGSTREAM
2016-03-06 11:56:38 -06:00
Christopher Dunn
9376368d86
use Json::LogicError in macros
2015-03-08 12:42:53 -05:00
Christopher Dunn
717b08695e
clarify errors
...
* use macros for logic errors, not input errors
* throw on parsing failure in `operator>>()`, not assert
* throw on malloc, not assert
2015-03-08 12:06:22 -05:00
Christopher Dunn
b3e6f3d70f
drop do{}while(0)
idiom
...
Rationale:
* http://stackoverflow.com/questions/154136/do-while-and-if-else-statements-in-c-c-macros/154138#154138
But Visual Studio issues a warning: `warning C4127: conditional expression is constant`
* http://stackoverflow.com/questions/1946445/c-c-how-to-use-the-do-while0-construct-without-compiler-warnings-like-c412
2015-03-05 15:26:29 -06:00
Christopher Dunn
0c91927da2
assertions should be logic_error
2015-03-03 09:45:33 -06:00
Kobi Gurkan
09b8670536
only throws exceptions JSON_USE_EXCEPTION
...
JSON_ASSERT now throws a runtime_error
2015-02-15 18:00:31 +02:00
Christopher Dunn
7956ccd61e
allow stream ops for JSON_FAIL_MESSAGE
...
http://www.iar.com/Global/Resources/Developers_Toolbox/C_Cplusplus_Programming/Tips%20and%20tricks%20using%20the%20preprocessor%20%28part%20two%29.pdf
2015-01-20 16:25:26 -06:00
Aaron Jacobs
11086dd6a7
Enabled PointerBindsToType in clang-format options.
2014-09-15 10:15:29 +10:00
Christopher Dunn
60f778b9fc
relative include
2014-07-09 21:40:23 -07:00
Aaron Jacobs
9fa4e849a1
Ran clang-format over all .h and .cpp files.
...
clang-format -i $(find . -name '*.h' -or -name '*.cpp')
2014-07-01 08:48:54 +10:00
Christopher Dunn
6764059395
fix stdexcept
...
https://sourceforge.net/p/jsoncpp/bugs/68/
2014-05-13 09:49:25 +00:00
Aaron Jacobs
f572e8e42e
Added an exit() to JSON_FAIL_MESSAGE to fix "no return" errors.
2012-01-08 23:49:55 +00:00
Aaron Jacobs
2b853c4067
Got rid of several unnecessary includes of <iostream>.
...
Including <iostream> causes the file to be polluted with a static
initializer for the __ioinit symbol. This can harm binary startup time.
For more info, see here:
http://neugierig.org/software/chromium/notes/2011/08/static-initializers.html
2011-12-22 03:18:24 +00:00
Aaron Jacobs
7c507d7eba
Made JSON_USE_EXCEPTION's value in config.h a default that can be overridden.
...
This allows users to override it with their compiler invocation. For example:
g++ -D JSON_USE_EXCEPTION=0 ...
2011-09-14 08:41:37 +00:00
Aaron Jacobs
7b5edd9859
Added line breaks to make error messages easier to read.
2011-05-25 04:59:57 +00:00
Aaron Jacobs
a761530f14
Fixed a missing include error.
2011-05-24 06:27:36 +00:00
Aaron Jacobs
e3d0eca9f4
Centralized assertion macros and made them obey JSON_USE_EXCEPTION.
2011-05-24 01:03:22 +00:00