From 86d63ff10c9131bc43efe4ec2fee333dc7cbedc9 Mon Sep 17 00:00:00 2001 From: Milo Yip Date: Sat, 6 Sep 2014 10:28:54 +0800 Subject: [PATCH] Update document for kParseFullPrecisionFlag --- doc/dom.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/dom.md b/doc/dom.md index d2274de..1afd0c9 100644 --- a/doc/dom.md +++ b/doc/dom.md @@ -115,6 +115,9 @@ Parse flags | Meaning `kParseDefaultFlags = 0` | Default parse flags. `kParseInsituFlag` | In-situ(destructive) parsing. `kParseValidateEncodingFlag` | Validate encoding of JSON strings. +`kParseIterativeFlag` | Iterative(constant complexity in terms of function call stack size) parsing. +`kParseStopWhenDoneFlag` | After parsing a complete JSON root from stream, stop further processing the rest of stream. When this flag is used, parser will not generate `kParseErrorDocumentRootNotSingular` error. Using this flag for parsing multiple JSONs in the same stream. +`kParseFullPrecisionFlag` | Parse number in full precision (slower). If this flag is not set, the normal precision (faster) is used. Normal precision has maximum 3 [ULP](http://en.wikipedia.org/wiki/Unit_in_the_last_place) error. By using a non-type template parameter, instead of a function parameter, C++ compiler can generate code which is optimized for specified combinations, improving speed, and reducing code size (if only using a single specialization). The downside is the flags needed to be determined in compile-time.