From 413144a8b21270883bfe9d20723441ac12b414dc Mon Sep 17 00:00:00 2001 From: Mateusz Loskot Date: Fri, 26 Jun 2015 16:00:49 +0200 Subject: [PATCH] Add GenericDocument ctor overload to specify JSON type. It unifies the interfaces with Value where kXXXType can be passed into constructor. It enables shortcut that helps to avoid extra SetXXX() call following construction of a document. --- include/rapidjson/document.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/rapidjson/document.h b/include/rapidjson/document.h index 889cdfa..1b3a4f3 100644 --- a/include/rapidjson/document.h +++ b/include/rapidjson/document.h @@ -1748,6 +1748,13 @@ public: typedef GenericValue ValueType; //!< Value type of the document. typedef Allocator AllocatorType; //!< Allocator type from template parameter. + GenericDocument(Type type, Allocator* allocator = 0, size_t stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) : + GenericValue(type), allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_() + { + if (!allocator_) + ownAllocator_ = allocator_ = RAPIDJSON_NEW(Allocator()); + } + //! Constructor /*! \param allocator Optional allocator for allocating memory. \param stackCapacity Optional initial capacity of stack in bytes.