Milo Yip
3679c280dd
Merge remote-tracking branch 'origin/master' into issue120floatprecision_customstrtod
2014-11-23 08:48:03 +08:00
Philipp A. Hartmann
3220438aa5
GenericDocument: explicitly prohibit copying
...
See #201 .
2014-11-21 13:05:54 +01:00
Philipp A. Hartmann
c88cc331d5
DiyFp: avoid shadowing ( closes #195 )
2014-11-17 13:31:24 +01:00
Philipp A. Hartmann
6b69662ce8
Writer: declare constructors as explicit
...
Avoids implicit conversion from an `OutputStream` (or an allocator pointer)
to a `Writer` instance.
2014-11-17 13:27:54 +01:00
Philipp A. Hartmann
c35bbe54d9
Writer: fix documentation of stackAllocator param ( closes #196 )
2014-11-17 13:26:49 +01:00
Milo Yip
57b91300fb
Merge remote-tracking branch 'origin/master' into issue120floatprecision_customstrtod
...
Conflicts:
include/rapidjson/internal/dtoa.h
test/unittest/readertest.cpp
2014-11-14 22:23:16 +08:00
Milo Yip
22ca9312df
Fix gcc/clang compilation errors and turn off exhaustive number test
2014-11-14 18:36:25 +08:00
Milo Yip
40852f4d6d
Fixes StrtodDiyFp bugs
2014-11-14 18:23:51 +08:00
Philipp A. Hartmann
549dcb755d
*.h: move to namespace macros
2014-11-06 20:52:49 +01:00
Philipp A. Hartmann
5d9125f51c
add RAPIDJSON_NAMESPACE + _BEGIN, _END
2014-11-06 20:52:49 +01:00
miloyip
b4e2d58c74
Temp commit
2014-10-31 10:25:04 +08:00
Philipp A. Hartmann
e8f5d9f8ef
MemoryPoolAllocator, Stack: lazily allocate Allocators
...
In order to make the constructors more efficient, especially
in the context of C++11 move semantics, the (dynamic) allocations
in MemoryPoolAllocator and Stack should be performed lazily.
Move the allocations to the first use of the allocator in both
classes.
2014-10-30 18:40:58 +01:00
Philipp A. Hartmann
d0c283254b
Stack<>: add _ suffix to member ownAllocator_
...
For consistency, all member variables should follow the same pattern.
2014-10-30 18:21:27 +01:00
Philipp A. Hartmann
c557b230a6
Add customization macros for global new/delete
...
As mentioned in #181 , some environments may require adaptations to
the internal calls to the global `new`/`delete` operators, like
adding explicit `NULL` checks to `delete.
This patch adds two new macros
* RAPIDJSON_NEW(x)
* RAPIDJSON_DELETE(x)
to allow user-defined expressions in these cases.
This fixes #181 in an alternative manner.
2014-10-30 11:20:46 +01:00
Sean Leather
716907b9fb
Clarify documentation on RemoveMember, EraseMember ordering
2014-10-27 15:04:26 +02:00
Milo Yip
8fc0e57926
Merge pull request #177 from spl/use-deprecated
...
Use 'deprecated' instead of 'depreciated'
2014-10-27 14:53:29 +08:00
Sean Leather
32525a5d5e
Use 'deprecated' instead of 'depreciated'
2014-10-26 14:51:35 +02:00
ecorm
b0328d2d3b
GenericDocument move-assignment now uses std::foward to move-assign the base class.
2014-10-24 15:25:27 -03:00
ecorm
20a9cd2810
Merge branch 'master' into issue123movesupport
2014-10-24 14:09:30 -03:00
ecorm
fd12dcb3db
Added MemoryPoolAllocator to GenericDocument moveunit tests. Added comment in GenericDocument move assignment operator explaining why the static_cast is needed to move the base class.
2014-10-24 14:05:32 -03:00
Philipp A. Hartmann
6bd5ecb08c
GenericValue: improve documentation for operator[]
2014-10-24 14:45:48 +02:00
Philipp A. Hartmann
e8445e0bbc
GenericValue: improve operator[] disambiguation
...
In the original disambiguation fix for `GenericValue::operator[]` (#170 ),
the documentation has been missing, which led to quite badly rendered
Doxygen pages.
During a cleanup, I've realized that a much simpler disambiguation is
possible:
````cpp
GenericValue& operator[](SizeType idx); // array
template <typename T>
GenericValue& operator[](T* name); // object
````
This approach works, as non-template functions are preferred over
template functions.
In order to improve the error messages, the pointer type is restricted
to `(const) Ch`.
Update `tutorial.md` to drop the ambiguity warning.
2014-10-24 13:55:26 +02:00
ecorm
cb33f910c3
Merge branch 'master' into issue123movesupport
2014-10-24 03:11:34 -03:00
ecorm
02f3b00ee6
Implemented C++11 move semantics for GenericDocument
2014-10-24 02:51:17 -03:00
Zhihao Yuan
7303d92990
Disambiguate GenericValue's [0] and ["string"]
2014-10-23 21:50:39 -04:00
Zhihao Yuan
0d90bcc709
No implicit conversion from Type to GenericValue
2014-10-23 21:50:39 -04:00
Sean Leather
0e715872c0
Fix MemoryStream::Peek() and add test for fix
...
MemoryStream::Peek() did not return '\0' if src_ == end_, but Peek() == '\0' is
used in parsing in the GenericReader. Without this change, parsing with
MemoryStream as the InputStream could result in a segmentation fault.
2014-10-23 00:31:19 +02:00
Milo Yip
faa877ff78
Partial StrtodDiyFp implementation [ci skip]
2014-09-19 08:59:36 +08:00
TyRoXx
b9608f2cf2
turn implicit integer conversions into static_casts to avoid -Wconversion warnings
2014-09-17 20:30:19 +02:00
Milo Yip
475b242087
Minor refactoring before optimization trial
2014-09-16 19:38:18 +08:00
Milo Yip
5171775d4c
Minor optimizations in BigInteger
2014-09-16 19:23:28 +08:00
Milo Yip
299e9f1e32
Added missing files
2014-09-16 18:47:35 +08:00
Philipp A. Hartmann
5117f9e555
explicitly qualify C(++) library functions
...
Some compilers do not export the standard C library functions
to the global namespace, in case the C++ header variants are
included (<cstdlib>, <cstring>).
RapidJSON currently uses:
* malloc, realloc, free
* memcpy, memmove, memset, memcpy
Add an explicit namespace qualification to avoid lookup problems.
2014-09-16 10:42:14 +02:00
Philipp A. Hartmann
c0bde81b03
rapidjson.h: explicitly import std::size_t to rapidjson namespace
2014-09-16 10:37:37 +02:00
Philipp A. Hartmann
e052c727b2
GenericValue: drop forced packing pragma
2014-09-16 10:19:40 +02:00
Milo Yip
74b81fa510
Extract classes into various files.
2014-09-16 15:23:18 +08:00
Milo Yip
4f99e25b9d
Minor code cleaning
2014-09-16 15:06:44 +08:00
Milo Yip
a425ad5552
Trimming leading/trailing zeros and correct underflow case
2014-09-16 10:52:40 +08:00
miloyip
50fc3fedb2
Fix round towards even
2014-09-15 16:53:57 +08:00
miloyip
b29acfb90d
Limit significand to 17 digits for fast path
...
Should fix gcc debug error in tranvis. May need further refactoring.
2014-09-15 15:54:15 +08:00
Milo Yip
bea4fa7f6a
Remove unused BigInteger::operator+=(const BigInteger&)
2014-09-15 00:31:38 +08:00
Milo Yip
cbd7475242
Fix normal-subnormal boundary and add more boundary cases in unit tests.
2014-09-15 00:30:22 +08:00
Milo Yip
4c2128818f
Add 32-bit support for custom strtod
2014-09-14 12:42:58 +08:00
Milo Yip
855da06d0f
Makes gcc x64 runnable, but failed on one case. [ci skip]
2014-09-14 10:52:33 +08:00
Milo Yip
98dd0a0a64
Make custom strtod work for denormal numbers and some boundary cases [ci skip]
2014-09-13 23:24:40 +08:00
Milo Yip
4bd240abee
Implementing custom strtod, fail on some cases [ci skip]
2014-09-12 23:03:20 +08:00
Koji Kobayashi
a69dffbc53
make MemoryPoolAllocator's Malloc work after Clear if a buffer was not supplied by the user
2014-09-10 20:35:23 -07:00
Milo Yip
359ebc78c0
Extract conversion code to strtod.h [ci skip]
2014-09-10 23:36:09 +08:00
miloyip
30ea2a32d1
Prepare custom strtod data. (cannot pass unit test) [ci skip]
2014-09-10 18:54:41 +08:00
Philipp A. Hartmann
296c7db140
Stack: adjust growth factor
...
The growth factor for the `internal::Stack` helper has not been updated
together with the growth factors used in GenericValue (#130 ).
2014-09-09 10:49:40 +02:00