Milo Yip
a7762a3453
Custom dtoa() impleemntation
...
Modified from Milo's Grisu2 implementation. 99.9% cases return shortest
decimal format.
2014-08-09 21:12:58 +08:00
Milo Yip
6978778884
Change double parsing with fast-path conversion
...
Accurate rounding in normal numerical ranges, also reduce lookup table
size.
2014-08-09 21:11:37 +08:00
Milo Yip
0e4f08ea89
Fix a compilation error due to INT64_C
2014-08-08 22:07:02 +08:00
Milo Yip
5e5fb7b3d8
Change UINT64_C() to RAPIDJSON_UINT64_C2()
...
Fix #94
2014-08-08 21:34:43 +08:00
Milo Yip
41dde39bbc
Merge pull request #96 from miloyip/issue91removeelement
...
Fix #91
2014-08-08 20:42:55 +08:00
Milo Yip
67143c2ba0
Merge pull request #93 from pah/fixes/86-gtest-werror
...
premake.lua: relax warnings for GTest and perftest (fixes #86 )
2014-08-01 09:31:51 +08:00
Philipp A. Hartmann
5ecf7f50ed
premake.lua: relax warnings for GTest and perftest ( fixes #86 )
...
For the "test" solution, the "gtest" and "perftest" projects contain
third-party code. Relax the warning settings for "gmake" for these
projects to avoid build failures due to third-party code.
2014-07-31 21:12:45 +02:00
Milo Yip
2f9544620b
Add UINT64_C()
macros for 64-bit integer literals in u64toa()
2014-08-01 00:25:56 +08:00
Milo Yip
b52e07822e
Try to add erase-remove idiom in unit test but fail to compile on VC2013.
2014-08-01 00:04:31 +08:00
Milo Yip
c3ad232c3e
Fixes size type in Value::operator==()
2014-08-01 00:01:06 +08:00
Milo Yip
9892847021
Update documents about erase member/elements, also added some time complexity information.
2014-07-31 23:58:52 +08:00
Milo Yip
10098319fe
Merge pull request #92 from pah/issue91removeelement
...
Remove for object members, some cleanups for values
2014-07-31 19:19:44 +08:00
Philipp A. Hartmann
fc6d7a59dc
GenericValue: rename Erase(ConstMemberIterator) to EraseMember
2014-07-31 13:16:56 +02:00
miloyip
afe59a0db1
Makes StringEqual()
more safe by always compares lengths.
2014-07-31 19:08:37 +08:00
Philipp A. Hartmann
82b32a93d2
fix missing bracket
2014-07-31 13:06:28 +02:00
Philipp A. Hartmann
b98852e165
GenericValue: add tests for Erase(ConstMemberIterator[, ConstMemberIterator])
2014-07-31 13:03:51 +02:00
Philipp A. Hartmann
96af95c945
GenericValue: add Erase function for object members
2014-07-31 13:03:32 +02:00
Philipp A. Hartmann
c0fcdcc478
GenericValue: use generated assignment/destructor for GenericMember
2014-07-31 13:03:32 +02:00
Philipp A. Hartmann
59fee54f9d
GenericValue::Erase: pass ConstValueIterators
2014-07-31 13:03:32 +02:00
Philipp A. Hartmann
9a9c6d6810
GenericValue: improve Erase documentation
2014-07-31 13:03:32 +02:00
Philipp A. Hartmann
6ed9934143
GenericValue: document Array iterator functions
2014-07-31 13:03:32 +02:00
Philipp A. Hartmann
11d31aaa7b
fix typo
2014-07-31 13:03:32 +02:00
miloyip
71ae5660ed
Revert "Add Erase(ConstValueIterator) and Erase(ConstValueIterator,ConstValueIterator)"
...
This reverts commit 9ab2621e855a9abb8377520b42d6dfddcd49a8e1.
2014-07-31 18:56:57 +08:00
miloyip
9ab2621e85
Add Erase(ConstValueIterator) and Erase(ConstValueIterator,ConstValueIterator)
...
As std::vector::erase() overloads added in C++11
2014-07-31 18:53:17 +08:00
miloyip
71c8402549
Add equal-to and non-equal-to operators
2014-07-31 18:43:59 +08:00
miloyip
0f7d2dad51
Add 2 overloads of Erase() for removing elements of array.
2014-07-31 14:22:59 +08:00
Milo Yip
88a9716c6c
Merge pull request #89 from miloyip/issue88denormalnumber
...
Fix parsing numbers which are less than 1e-308
2014-07-31 00:25:21 +08:00
Milo Yip
5456606232
Add a "must underflow" case as suggested by @pah
2014-07-31 00:02:02 +08:00
Milo Yip
808d362b88
Fix parsing numbers which are less than 1e-308
...
Overflow should check sign of exponent.
2014-07-30 23:27:17 +08:00
Milo Yip
c4f64e7b02
Merge pull request #87 from miloyip/issue85simdsegfault
...
Fix SIMD page fault by using aligned load
2014-07-29 16:39:13 +08:00
miloyip
a32e2ac1d0
Fix SIMD page fault by using aligned load
2014-07-29 16:05:54 +08:00
miloyip
fdd380bbc0
Added insitu parsing test for kParseStopWhenDoneFlag
...
Related to discussion in #83
2014-07-29 13:01:35 +08:00
Milo Yip
e6f344637b
Merge pull request #83 from miloyip/issue75stopwhendone
...
Issue75stopwhendone
2014-07-28 18:45:06 +08:00
Milo Yip
c545895368
Merge pull request #84 from miloyip/issue79memorystreambuffer
...
Add MemoryBuffer and MemoryStream
2014-07-28 18:45:00 +08:00
Milo Yip
fe33a0178f
Update readme.md
2014-07-28 13:21:31 +08:00
Milo Yip
b60bcc2762
Add MemoryBuffer and MemoryStream
2014-07-27 19:29:57 +08:00
Milo Yip
3d106085c1
Add a space in multiple root test for ensuring that whitespace is not consumed when done.
2014-07-27 17:29:03 +08:00
Milo Yip
e09b9d5c05
Merge remote-tracking branch 'origin/master' into issue75stopwhendone
2014-07-27 17:13:32 +08:00
Milo Yip
47849a2841
Merge pull request #81 from miloyip/IterativeParseOptimization
...
Iterative parse optimization
2014-07-27 17:13:05 +08:00
Milo Yip
c81386413b
Add kParseStopWhenDoneFlag, its implementation and related unit tests
2014-07-27 17:10:32 +08:00
Milo Yip
2a389ad659
Merge remote-tracking branch 'origin/master' into IterativeParseOptimization
2014-07-27 15:50:16 +08:00
Milo Yip
c4ce48cde9
Merge pull request #80 from miloyip/issue31optimizeitoa
...
Issue31optimizeitoa
2014-07-27 15:49:36 +08:00
Milo Yip
857865a166
Fix parse error message
2014-07-27 00:36:23 +08:00
Milo Yip
8081e2a2c8
Add perf test cases for document using iterative parsing
2014-07-27 00:03:37 +08:00
Milo Yip
b99a515ef2
Define RAPIDJSON_FORCEINLINE for gcc
...
Performance boost a lot!
2014-07-26 23:23:52 +08:00
Milo Yip
58e0fb89b2
In iterative parsing, always use SizeType to prevent potential alignment problem on some platforms.
2014-07-26 22:21:06 +08:00
Milo Yip
7fa194d165
Force inline some suitable functions.
2014-07-26 21:56:11 +08:00
Milo Yip
6f382fd907
Cleanup code
2014-07-26 21:51:38 +08:00
Milo Yip
e3e8fea0f3
Remove stack size limit feature
...
It is not very useful for iterative parsing as the worst case of heap
size is O(n) where n is number of character in JSON, for the worst
synthetic cases. This is reasonable and should not create stack overflow
security problem as in recursive parsing.
2014-07-26 21:40:11 +08:00
Milo Yip
89865cb919
Use lookup table for Tokenize()
2014-07-26 21:23:37 +08:00