thebusytypist
6b0df217a8
WIP: refactor iterative parsing.
2014-07-08 02:19:35 +08:00
thebusytypist
ebb9a250d8
It is sufficient to check finish state in iterative parsing.
2014-07-07 22:06:14 +08:00
thebusytypist
7d33b01515
Bugfix: add missing transition from finish state.
2014-07-07 21:57:23 +08:00
thebusytypist
7acb0c181e
Rename flags/state names/functions/test cases from 'NonRecursive' to 'Iterative'.
2014-07-07 21:46:57 +08:00
Milo Yip
6e4d8db51d
Fix readme issue in doxygen, customize css
...
Imitate GitHub markdown rendering
2014-07-07 01:01:49 +08:00
Philipp A. Hartmann
a213d2d881
Doxygen: fixup main page
...
To avoid the {#mainpage} tag to be rendered on GitHub, explicitly add a
`\mainpage` section to `rapidjson.h`, referring to `readme.md`.
2014-07-06 16:39:23 +02:00
Philipp A. Hartmann
53b27ac8ba
GenericReader: improve doxygen documentation
2014-07-06 15:35:43 +02:00
Philipp A. Hartmann
ec8f26e6e5
(Pretty)Writer: improve doxygen documentation
2014-07-06 15:35:43 +02:00
Philipp A. Hartmann
7972f22fcb
Doxygen: document some UTF-8 typedefs
2014-07-06 15:35:43 +02:00
Philipp A. Hartmann
6ed0ac174f
GenericDocument: improve Doxygen documentation
2014-07-06 15:35:43 +02:00
Philipp A. Hartmann
c63c40fa85
GenericMemberIterator::Type -> GenericMemberIterator::Iterator
...
Rename nested typedef to avoid confusion with JSON Type enum.
2014-07-06 15:35:43 +02:00
Philipp A. Hartmann
5174fe4f65
rapidjson.h: add some file-level doxygen documentation
...
Although not yet complete, the rapidjson.h header contains most of
the customisation macro definitions. These should be documented via
Doxygen as well. This requires adding file-level documentation.
Some parts are excluded via `@cond` to avoid cluttering the documentation
with internals too much.
Secondly, a brief description is added to the 'rapidjson' namespace to
include the namespace-level elements (enums, typedefs, functions) to
the generated documentation.
2014-07-06 15:35:43 +02:00
thebusytypist
3006fa7d8c
Try to resolve issue #35 : implement iterative parsing.
2014-07-06 21:15:38 +08:00
Milo Yip
96882f4977
Prohibit copy constructor in StackStream.
2014-07-04 20:19:15 +08:00
Milo Yip
d9c02b5b79
Fixed a few cppcheck warnings.
...
C-style cast
Add function const to MemoryPoolAllocator::Capacity() and Size()
2014-07-04 19:53:14 +08:00
Milo Yip
e2cd486e6e
Fixes -Wswitch-default warnings
2014-07-04 17:25:33 +08:00
Milo Yip
b01093b16c
Fixes a compilation error in Reader when using encoded stream.
...
Added unit test for parsing EncodedStream to Document.
2014-07-04 14:32:44 +08:00
Milo Yip
9ed11d29a2
Safer implementation of Swap()
...
Also added documentation, unit tests for swapping Document/Value,
Document/Document.
2014-07-04 00:59:16 +08:00
Philipp A. Hartmann
c8673ef3de
GenericReader::ParseNumber: consistently use s.Tell()
...
The error messages in ParseNumber used `is.Tell` to report the
position of the number parsing error. Depending on the copy
optimization of the current stream, this can lead to different
behaviour (beginning of number vs. position of error).
2014-07-03 17:07:14 +02:00
Philipp A. Hartmann
249529f039
avoid truncation warning on MSVC
2014-07-03 17:07:07 +02:00
Philipp A. Hartmann
afa8279d8a
GenericValue: drop duplicate/unneeded code
...
* Delegate constant string construction to SetStringRaw
* Delegate "const Ch*" overloads to GenericValue variants
of operator[], FindMember and RemoveMember
* Remove repeated template arguments in nested struct Array
(cherry-picked from ca9b0332d)
2014-07-03 17:06:36 +02:00
Philipp A. Hartmann
d178fd4e94
Parse*: explicitly spell out kParseDefaultFlags
...
Instead of hard-coding the value 0 for the parseFlags in the
various parsing overloads, explicitly use kParseDefaultFlags
to provide more self-documenting code.
2014-07-03 17:06:35 +02:00
Philipp A. Hartmann
6b7f346437
ParseErrorCode: fix typo (NumberTooBig)
2014-07-03 17:06:35 +02:00
Milo Yip
1aa84342ba
Added GenericValue::Swap()
2014-07-03 22:38:34 +08:00
Milo Yip
009c4005b2
Fixes 'not' keyword that is not supported by Visual Studio by default
2014-07-03 22:37:42 +08:00
Philipp A. Hartmann
5835750259
GenericMemberIterator: fixup some formatting and documentation
...
No functional changes.
2014-07-03 15:18:01 +02:00
Philipp A. Hartmann
86c47a6a8b
document.h: move inclusion of template meta functions
...
In order to activate the suppression of "-Weffc++" warnings in the
template meta function classes (non-virtual destructor), move the
inclusion of the meta-function header `internal/meta.h` after the
suppression pragma.
2014-07-03 14:56:43 +02:00
Philipp A. Hartmann
43737ef310
GenericValue::FindMember: return MemberEnd, if member doesn't exist
2014-07-03 14:33:56 +02:00
Philipp A. Hartmann
17a8804cf3
document.h: add GenericMemberIterator
...
Add dedicated class-based member iterator to prepare the switch to a
(safe) API change to return MemberEnd() from FindMember().
Pointer-based iterator can be kept by defining
RAPIDJSON_NOMEMBERITERATORCLASS. This may be useful for platforms without
a working <iterator> header.
2014-07-03 14:29:57 +02:00
Philipp A. Hartmann
05179e2891
internal/meta.h: add some template meta functions
...
* Add/RemoveConst
* IsSame, IsConst, IsMoreConst
* Enable/DisableIf (including helper macro)
2014-07-03 14:24:58 +02:00
Philipp A. Hartmann
7890a1b17a
StreamLocalCopy: move to reader.h
...
Eventually move to internal header `internal/streamcopy.h`?
Based on 088e8173.
2014-07-02 21:28:41 +02:00
Philipp A. Hartmann
f6903f79d4
GenericReader: simplify local stream copy optimization
...
rapidjson.h:
* StreamLocalCopy: add default argument to copy optimization selector
based on StreamTraits of Stream parameter
* drop operator->, operator*
* make Stream (reference) member public
* drop empty destructor
reader.h:
* add local references, initialized from "copy"
(reverts algorithmic bodies back to plain 's.xx()')
2014-07-02 20:51:10 +02:00
Milo Yip
1e99f0b537
Merge remote-tracking branch 'origin/master' into warning
2014-07-03 01:00:01 +08:00
Milo Yip
5a186104f4
Fixes warnings
2014-07-03 00:59:35 +08:00
Milo Yip
2a9c7a9ffa
Makes FileReadStream not using local copy optimization
2014-07-03 00:25:45 +08:00
Milo Yip
9aec8d6ad4
Fixes local copy optimization
...
The previous optimization #32 has problem that restoration requires
assignment operator.
Change the backup/restore process using a template wrapper class to
select code path.
2014-07-02 23:49:47 +08:00
Milo Yip
10924e389c
Fixes parsing small floating point values underflow
...
https://code.google.com/p/rapidjson/issues/detail?id=75
The modification is slightly different from dlbattle123 to improve
speed.
2014-06-30 21:26:43 +08:00
miloyip
a9356c09c0
Fixes IBM XL C/C++ for AIX issue
...
Move rapidjson::GenericValue::Member to rapidjson::GenericMember
https://code.google.com/p/rapidjson/issues/detail?id=64
2014-06-30 19:07:58 +08:00
miloyip
a1ce06a187
Fixes vs2010 warning about INT64_C()
2014-06-30 10:18:14 +08:00
miloyip
389fe87cd8
Merge branch 'master' into issue23errorcode
...
Conflicts:
example/condense/condense.cpp
include/rapidjson/reader.h
test/unittest/readertest.cpp
2014-06-30 09:44:24 +08:00
Milo Yip
8e76a9dcce
Fixes compilation error
...
need ‘typename’ before
‘rapidjson::StreamTraits<InputStream>::StreamCopyType
2014-06-29 21:24:15 +08:00
Milo Yip
789761ae1b
Fixes compilation error
...
‘>>’ should be ‘> >’ within a nested template argument list
2014-06-29 21:18:31 +08:00
Milo Yip
bcf7cee788
Add stream copying optimization switch depending stream type.
...
An unit test is added
2014-06-29 20:59:01 +08:00
Milo Yip
1d14748bc9
Added overloaded functions for default parseFlags
...
Can write d.Parse(...) instead of d.Parse<0>(...)
Hope to reduce strangeness and confusion for beginner.
2014-06-29 15:03:38 +08:00
Milo Yip
c14c5ff236
Documentation on error related files and include dependent header.
2014-06-27 22:43:21 +08:00
Milo Yip
69ca7487bc
Manually merge the segfault fix from main branch and fix several unit tests about error code
2014-06-27 22:27:18 +08:00
Milo Yip
b0059483c8
Error can only be assigned once
2014-06-27 22:13:02 +08:00
Philipp A. Hartmann
0277ebdc3c
document.h: avoid casting away const
...
Another instance of casting away constness via C-style cast
has been missed (introduced by #20 ).
2014-06-27 10:27:35 +02:00
Philipp A. Hartmann
be01d3d7cc
fix build on travis-ci.org
...
Some early returns were missing after the removal of longjmp in #22 .
This has led to segfaults on Linux (confirmed locally).
2014-06-27 10:26:37 +02:00
Milo Yip
b4df717675
Fixes grammar mistakes in error messages.
2014-06-27 16:13:54 +08:00