rj_schema 0.2.4 → 0.2.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/rj_schema/rapidjson/CHANGELOG.md +158 -0
- data/ext/rj_schema/rapidjson/CMakeLists.txt +226 -0
- data/ext/rj_schema/rapidjson/CMakeModules/FindGTestSrc.cmake +30 -0
- data/ext/rj_schema/rapidjson/RapidJSON.pc.in +7 -0
- data/ext/rj_schema/rapidjson/RapidJSONConfig.cmake.in +25 -0
- data/ext/rj_schema/rapidjson/RapidJSONConfigVersion.cmake.in +10 -0
- data/ext/rj_schema/rapidjson/appveyor.yml +54 -0
- data/ext/rj_schema/rapidjson/bin/data/abcde.txt +1 -0
- data/ext/rj_schema/rapidjson/bin/data/glossary.json +22 -0
- data/ext/rj_schema/rapidjson/bin/data/menu.json +27 -0
- data/ext/rj_schema/rapidjson/bin/data/readme.txt +1 -0
- data/ext/rj_schema/rapidjson/bin/data/sample.json +3315 -0
- data/ext/rj_schema/rapidjson/bin/data/webapp.json +88 -0
- data/ext/rj_schema/rapidjson/bin/data/widget.json +26 -0
- data/ext/rj_schema/rapidjson/bin/draft-04/schema +150 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16be.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16bebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16le.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16lebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32be.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32bebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32le.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32lebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf8.json +7 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf8bom.json +7 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail1.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail10.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail11.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail12.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail13.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail14.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail15.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail16.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail17.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail18.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail19.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail2.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail20.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail21.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail22.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail23.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail24.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail25.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail26.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail27.json +2 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail28.json +2 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail29.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail3.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail30.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail31.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail32.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail33.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail4.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail5.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail6.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail7.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail8.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail9.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/pass1.json +58 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/pass2.json +1 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/pass3.json +6 -0
- data/ext/rj_schema/rapidjson/bin/jsonchecker/readme.txt +3 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/LICENSE +19 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/README.md +148 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/bin/jsonschema_suite +283 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/folder/folderInteger.json +3 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/integer.json +3 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/subSchemas.json +8 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/additionalItems.json +82 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/additionalProperties.json +88 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/default.json +49 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/dependencies.json +108 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/disallow.json +80 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/divisibleBy.json +60 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/enum.json +71 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/extends.json +94 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/items.json +46 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maxItems.json +28 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maxLength.json +33 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maximum.json +42 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minItems.json +28 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minLength.json +33 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minimum.json +42 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/bignum.json +107 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/format.json +222 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/jsregex.json +18 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/zeroTerminatedFloats.json +15 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/pattern.json +34 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/patternProperties.json +110 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/properties.json +92 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/ref.json +159 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/refRemote.json +74 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/required.json +53 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/type.json +474 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/uniqueItems.json +79 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/additionalItems.json +82 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/additionalProperties.json +88 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/allOf.json +112 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/anyOf.json +68 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/default.json +49 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/definitions.json +32 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/dependencies.json +113 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/enum.json +72 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/items.json +46 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxItems.json +28 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxLength.json +33 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxProperties.json +28 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maximum.json +42 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minItems.json +28 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minLength.json +33 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minProperties.json +28 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minimum.json +42 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/multipleOf.json +60 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/not.json +96 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/oneOf.json +68 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/bignum.json +107 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/format.json +148 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/zeroTerminatedFloats.json +15 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/pattern.json +34 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/patternProperties.json +110 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/properties.json +92 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/ref.json +159 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/refRemote.json +74 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/required.json +39 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/type.json +330 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/uniqueItems.json +79 -0
- data/ext/rj_schema/rapidjson/bin/jsonschema/tox.ini +8 -0
- data/ext/rj_schema/rapidjson/bin/types/booleans.json +102 -0
- data/ext/rj_schema/rapidjson/bin/types/floats.json +102 -0
- data/ext/rj_schema/rapidjson/bin/types/guids.json +102 -0
- data/ext/rj_schema/rapidjson/bin/types/integers.json +102 -0
- data/ext/rj_schema/rapidjson/bin/types/mixed.json +592 -0
- data/ext/rj_schema/rapidjson/bin/types/nulls.json +102 -0
- data/ext/rj_schema/rapidjson/bin/types/paragraphs.json +102 -0
- data/ext/rj_schema/rapidjson/bin/types/readme.txt +1 -0
- data/ext/rj_schema/rapidjson/contrib/natvis/LICENSE +45 -0
- data/ext/rj_schema/rapidjson/contrib/natvis/README.md +7 -0
- data/ext/rj_schema/rapidjson/contrib/natvis/rapidjson.natvis +38 -0
- data/ext/rj_schema/rapidjson/doc/CMakeLists.txt +27 -0
- data/ext/rj_schema/rapidjson/doc/Doxyfile.in +2369 -0
- data/ext/rj_schema/rapidjson/doc/Doxyfile.zh-cn.in +2369 -0
- data/ext/rj_schema/rapidjson/doc/diagram/architecture.dot +50 -0
- data/ext/rj_schema/rapidjson/doc/diagram/architecture.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/insituparsing.dot +65 -0
- data/ext/rj_schema/rapidjson/doc/diagram/insituparsing.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/iterative-parser-states-diagram.dot +62 -0
- data/ext/rj_schema/rapidjson/doc/diagram/iterative-parser-states-diagram.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/makefile +8 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move1.dot +47 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move1.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move2.dot +62 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move2.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move3.dot +60 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move3.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/normalparsing.dot +56 -0
- data/ext/rj_schema/rapidjson/doc/diagram/normalparsing.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/simpledom.dot +54 -0
- data/ext/rj_schema/rapidjson/doc/diagram/simpledom.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/tutorial.dot +58 -0
- data/ext/rj_schema/rapidjson/doc/diagram/tutorial.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/utilityclass.dot +73 -0
- data/ext/rj_schema/rapidjson/doc/diagram/utilityclass.png +0 -0
- data/ext/rj_schema/rapidjson/doc/dom.md +281 -0
- data/ext/rj_schema/rapidjson/doc/dom.zh-cn.md +285 -0
- data/ext/rj_schema/rapidjson/doc/encoding.md +146 -0
- data/ext/rj_schema/rapidjson/doc/encoding.zh-cn.md +152 -0
- data/ext/rj_schema/rapidjson/doc/faq.md +289 -0
- data/ext/rj_schema/rapidjson/doc/faq.zh-cn.md +290 -0
- data/ext/rj_schema/rapidjson/doc/features.md +104 -0
- data/ext/rj_schema/rapidjson/doc/features.zh-cn.md +103 -0
- data/ext/rj_schema/rapidjson/doc/internals.md +368 -0
- data/ext/rj_schema/rapidjson/doc/internals.zh-cn.md +363 -0
- data/ext/rj_schema/rapidjson/doc/logo/rapidjson.png +0 -0
- data/ext/rj_schema/rapidjson/doc/logo/rapidjson.svg +119 -0
- data/ext/rj_schema/rapidjson/doc/misc/DoxygenLayout.xml +194 -0
- data/ext/rj_schema/rapidjson/doc/misc/doxygenextra.css +274 -0
- data/ext/rj_schema/rapidjson/doc/misc/footer.html +11 -0
- data/ext/rj_schema/rapidjson/doc/misc/header.html +24 -0
- data/ext/rj_schema/rapidjson/doc/npm.md +31 -0
- data/ext/rj_schema/rapidjson/doc/performance.md +26 -0
- data/ext/rj_schema/rapidjson/doc/performance.zh-cn.md +26 -0
- data/ext/rj_schema/rapidjson/doc/pointer.md +234 -0
- data/ext/rj_schema/rapidjson/doc/pointer.zh-cn.md +234 -0
- data/ext/rj_schema/rapidjson/doc/sax.md +509 -0
- data/ext/rj_schema/rapidjson/doc/sax.zh-cn.md +487 -0
- data/ext/rj_schema/rapidjson/doc/schema.md +505 -0
- data/ext/rj_schema/rapidjson/doc/schema.zh-cn.md +237 -0
- data/ext/rj_schema/rapidjson/doc/stream.md +429 -0
- data/ext/rj_schema/rapidjson/doc/stream.zh-cn.md +429 -0
- data/ext/rj_schema/rapidjson/doc/tutorial.md +536 -0
- data/ext/rj_schema/rapidjson/doc/tutorial.zh-cn.md +535 -0
- data/ext/rj_schema/rapidjson/docker/debian/Dockerfile +8 -0
- data/ext/rj_schema/rapidjson/example/CMakeLists.txt +46 -0
- data/ext/rj_schema/rapidjson/example/archiver/archiver.cpp +292 -0
- data/ext/rj_schema/rapidjson/example/archiver/archiver.h +145 -0
- data/ext/rj_schema/rapidjson/example/archiver/archivertest.cpp +287 -0
- data/ext/rj_schema/rapidjson/example/capitalize/capitalize.cpp +67 -0
- data/ext/rj_schema/rapidjson/example/condense/condense.cpp +32 -0
- data/ext/rj_schema/rapidjson/example/filterkey/filterkey.cpp +135 -0
- data/ext/rj_schema/rapidjson/example/filterkeydom/filterkeydom.cpp +170 -0
- data/ext/rj_schema/rapidjson/example/jsonx/jsonx.cpp +207 -0
- data/ext/rj_schema/rapidjson/example/lookaheadparser/lookaheadparser.cpp +350 -0
- data/ext/rj_schema/rapidjson/example/messagereader/messagereader.cpp +105 -0
- data/ext/rj_schema/rapidjson/example/parsebyparts/parsebyparts.cpp +176 -0
- data/ext/rj_schema/rapidjson/example/pretty/pretty.cpp +30 -0
- data/ext/rj_schema/rapidjson/example/prettyauto/prettyauto.cpp +56 -0
- data/ext/rj_schema/rapidjson/example/schemavalidator/schemavalidator.cpp +78 -0
- data/ext/rj_schema/rapidjson/example/serialize/serialize.cpp +173 -0
- data/ext/rj_schema/rapidjson/example/simpledom/simpledom.cpp +29 -0
- data/ext/rj_schema/rapidjson/example/simplepullreader/simplepullreader.cpp +53 -0
- data/ext/rj_schema/rapidjson/example/simplereader/simplereader.cpp +42 -0
- data/ext/rj_schema/rapidjson/example/simplewriter/simplewriter.cpp +36 -0
- data/ext/rj_schema/rapidjson/example/sortkeys/sortkeys.cpp +62 -0
- data/ext/rj_schema/rapidjson/example/tutorial/tutorial.cpp +151 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/allocators.h +284 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/cursorstreamwrapper.h +78 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/document.h +2732 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/encodedstream.h +299 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/encodings.h +716 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/error/en.h +74 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/error/error.h +161 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/filereadstream.h +99 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/filewritestream.h +104 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/fwd.h +151 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/biginteger.h +290 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/clzll.h +71 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/diyfp.h +257 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/dtoa.h +245 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/ieee754.h +78 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/itoa.h +308 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/meta.h +186 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/pow10.h +55 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/regex.h +739 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/stack.h +232 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/strfunc.h +69 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/strtod.h +290 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/swap.h +46 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/istreamwrapper.h +128 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/memorybuffer.h +70 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/memorystream.h +71 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/msinttypes/inttypes.h +316 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/msinttypes/stdint.h +300 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/ostreamwrapper.h +81 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/pointer.h +1415 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/prettywriter.h +277 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/rapidjson.h +676 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/reader.h +2236 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/schema.h +2496 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/stream.h +223 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/stringbuffer.h +121 -0
- data/ext/rj_schema/rapidjson/include/rapidjson/writer.h +710 -0
- data/ext/rj_schema/rapidjson/include_dirs.js +2 -0
- data/ext/rj_schema/rapidjson/library.json +15 -0
- data/ext/rj_schema/rapidjson/license.txt +57 -0
- data/ext/rj_schema/rapidjson/package.json +24 -0
- data/ext/rj_schema/rapidjson/rapidjson.autopkg +77 -0
- data/ext/rj_schema/rapidjson/readme.md +210 -0
- data/ext/rj_schema/rapidjson/readme.zh-cn.md +152 -0
- data/ext/rj_schema/rapidjson/test/CMakeLists.txt +20 -0
- data/ext/rj_schema/rapidjson/test/perftest/CMakeLists.txt +28 -0
- data/ext/rj_schema/rapidjson/test/perftest/misctest.cpp +974 -0
- data/ext/rj_schema/rapidjson/test/perftest/perftest.cpp +24 -0
- data/ext/rj_schema/rapidjson/test/perftest/perftest.h +185 -0
- data/ext/rj_schema/rapidjson/test/perftest/platformtest.cpp +166 -0
- data/ext/rj_schema/rapidjson/test/perftest/rapidjsontest.cpp +546 -0
- data/ext/rj_schema/rapidjson/test/perftest/schematest.cpp +223 -0
- data/ext/rj_schema/rapidjson/test/unittest/CMakeLists.txt +92 -0
- data/ext/rj_schema/rapidjson/test/unittest/allocatorstest.cpp +100 -0
- data/ext/rj_schema/rapidjson/test/unittest/bigintegertest.cpp +138 -0
- data/ext/rj_schema/rapidjson/test/unittest/cursorstreamwrappertest.cpp +115 -0
- data/ext/rj_schema/rapidjson/test/unittest/documenttest.cpp +672 -0
- data/ext/rj_schema/rapidjson/test/unittest/dtoatest.cpp +98 -0
- data/ext/rj_schema/rapidjson/test/unittest/encodedstreamtest.cpp +313 -0
- data/ext/rj_schema/rapidjson/test/unittest/encodingstest.cpp +451 -0
- data/ext/rj_schema/rapidjson/test/unittest/filestreamtest.cpp +155 -0
- data/ext/rj_schema/rapidjson/test/unittest/fwdtest.cpp +230 -0
- data/ext/rj_schema/rapidjson/test/unittest/istreamwrappertest.cpp +181 -0
- data/ext/rj_schema/rapidjson/test/unittest/itoatest.cpp +160 -0
- data/ext/rj_schema/rapidjson/test/unittest/jsoncheckertest.cpp +143 -0
- data/ext/rj_schema/rapidjson/test/unittest/namespacetest.cpp +70 -0
- data/ext/rj_schema/rapidjson/test/unittest/ostreamwrappertest.cpp +92 -0
- data/ext/rj_schema/rapidjson/test/unittest/pointertest.cpp +1638 -0
- data/ext/rj_schema/rapidjson/test/unittest/prettywritertest.cpp +373 -0
- data/ext/rj_schema/rapidjson/test/unittest/readertest.cpp +2225 -0
- data/ext/rj_schema/rapidjson/test/unittest/regextest.cpp +639 -0
- data/ext/rj_schema/rapidjson/test/unittest/schematest.cpp +2072 -0
- data/ext/rj_schema/rapidjson/test/unittest/simdtest.cpp +219 -0
- data/ext/rj_schema/rapidjson/test/unittest/strfunctest.cpp +30 -0
- data/ext/rj_schema/rapidjson/test/unittest/stringbuffertest.cpp +192 -0
- data/ext/rj_schema/rapidjson/test/unittest/strtodtest.cpp +132 -0
- data/ext/rj_schema/rapidjson/test/unittest/unittest.cpp +51 -0
- data/ext/rj_schema/rapidjson/test/unittest/unittest.h +143 -0
- data/ext/rj_schema/rapidjson/test/unittest/valuetest.cpp +1851 -0
- data/ext/rj_schema/rapidjson/test/unittest/writertest.cpp +598 -0
- data/ext/rj_schema/rapidjson/test/valgrind.supp +17 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/BUILD.bazel +175 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/CMakeLists.txt +33 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/CONTRIBUTING.md +160 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/LICENSE +28 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/Makefile.am +14 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/README.md +122 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/WORKSPACE +8 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/appveyor.yml +104 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/build-linux-autotools.sh +44 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/build-linux-bazel.sh +36 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/env-linux.sh +41 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/env-osx.sh +40 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/get-nprocessors.sh +48 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/install-linux.sh +49 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/install-osx.sh +39 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/log-config.sh +51 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/ci/travis.sh +44 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/configure.ac +16 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CHANGES +126 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CMakeLists.txt +242 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CONTRIBUTORS +40 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/LICENSE +28 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/Makefile.am +224 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/README.md +344 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/cmake/gmock.pc.in +9 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/cmake/gmock_main.pc.in +9 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/configure.ac +146 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/CheatSheet.md +564 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/CookBook.md +3660 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/DesignDoc.md +280 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/Documentation.md +15 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/ForDummies.md +447 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/FrequentlyAskedQuestions.md +627 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/KnownIssues.md +19 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-actions.h +1262 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-cardinalities.h +147 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h +2571 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h.pump +833 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h +1379 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h.pump +347 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h +2258 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h.pump +675 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h +458 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h.pump +178 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-matchers.h +5255 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-actions.h +246 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-matchers.h +91 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-spec-builders.h +1918 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock.h +95 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h +8 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump +10 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-matchers.h +38 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-port.h +46 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h +286 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h.pump +136 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-internal-utils.h +574 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-port.h +87 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/make/Makefile +101 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.sln +32 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.vcproj +191 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_config.vsprops +15 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_main.vcproj +187 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_test.vcproj +201 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.sln +46 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.vcxproj +145 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_config.props +19 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_main.vcxproj +151 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_test.vcxproj +176 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.sln +46 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.vcxproj +145 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_config.props +19 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_main.vcxproj +151 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_test.vcxproj +176 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/fuse_gmock_files.py +240 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/LICENSE +203 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README +34 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README.cppclean +115 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/__init__.py +0 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/ast.py +1733 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class.py +227 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class_test.py +448 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/keywords.py +59 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/tokenize.py +287 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/utils.py +41 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/gmock_gen.py +31 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/gmock-config.in +303 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/gmock_doctor.py +640 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/upload.py +1387 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/upload_gmock.py +78 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-all.cc +47 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-cardinalities.cc +156 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-internal-utils.cc +204 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-matchers.cc +573 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-spec-builders.cc +883 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock.cc +205 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock_main.cc +54 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/BUILD.bazel +123 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-actions_test.cc +1575 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-cardinalities_test.cc +428 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-actions_test.cc +1230 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-function-mockers_test.cc +647 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-internal-utils_test.cc +129 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-matchers_test.cc +1341 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-internal-utils_test.cc +718 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-matchers_test.cc +6767 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-more-actions_test.cc +710 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-nice-strict_test.cc +511 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-port_test.cc +43 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-spec-builders_test.cc +2771 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_all_test.cc +51 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_ex_test.cc +81 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test.py +108 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test_.cc +100 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link2_test.cc +40 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.cc +40 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.h +691 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test.py +183 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_.cc +310 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_golden.txt +317 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_stress_test.cc +323 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_test.cc +262 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_test_utils.py +110 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CHANGES +157 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CMakeLists.txt +312 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CONTRIBUTORS +37 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/LICENSE +28 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/Makefile.am +339 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/README.md +341 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/cmake/gtest.pc.in +9 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/cmake/gtest_main.pc.in +10 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/cmake/internal_utils.cmake +280 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest.cbproj +138 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest.groupproj +54 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_all.cc +38 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_link.cc +40 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_main.cbproj +82 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_unittest.cbproj +88 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/configure.ac +68 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Pkgconfig.md +146 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/PumpManual.md +177 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/XcodeGuide.md +93 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/advanced.md +2416 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/faq.md +1092 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/primer.md +536 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/samples.md +14 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-death-test.h +342 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-message.h +249 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h +1438 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h.pump +501 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-printers.h +1082 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-spi.h +231 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-test-part.h +179 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-typed-test.h +264 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest.h +2332 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_pred_impl.h +357 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_prod.h +61 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-port.h +70 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-printers.h +42 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest.h +45 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-death-test-internal.h +275 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-filepath.h +205 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-internal.h +1277 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-linked_ptr.h +243 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h +5139 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +279 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util.h +723 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port-arch.h +100 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port.h +2687 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-string.h +167 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h +1020 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h.pump +347 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h +3347 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h.pump +313 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/m4/acx_pthread.m4 +363 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/m4/gtest.m4 +74 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/make/Makefile +82 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest-md.sln +55 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest-md.vcxproj +149 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest-md.vcxproj.filters +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest.sln +55 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest.vcxproj +149 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest.vcxproj.filters +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main-md.vcxproj +154 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main-md.vcxproj.filters +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main.vcxproj +162 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_main.vcxproj.filters +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test-md.vcxproj +199 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test-md.vcxproj.filters +26 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test.vcxproj +191 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_prod_test.vcxproj.filters +26 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest-md.vcxproj +188 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest-md.vcxproj.filters +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest.vcxproj +180 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/2010/gtest_unittest.vcxproj.filters +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/prime_tables.h +127 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1.cc +68 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1.h +43 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample10_unittest.cc +140 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1_unittest.cc +154 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2.cc +56 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2.h +85 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2_unittest.cc +110 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample3-inl.h +172 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample3_unittest.cc +152 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4.cc +46 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4.h +53 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4_unittest.cc +49 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample5_unittest.cc +199 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample6_unittest.cc +225 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample7_unittest.cc +118 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample8_unittest.cc +174 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample9_unittest.cc +157 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/common.py +83 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/fuse_gtest_files.py +253 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/gen_gtest_pred_impl.py +730 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/gtest-config.in +274 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/pump.py +855 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/release_docs.py +158 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/test/Makefile +59 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/upload.py +1387 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/upload_gtest.py +78 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-all.cc +48 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-death-test.cc +1536 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-filepath.cc +385 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-internal-inl.h +1175 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-port.cc +1277 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-printers.cc +458 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-test-part.cc +102 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-typed-test.cc +119 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest.cc +5846 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest_main.cc +38 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/BUILD.bazel +396 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_ex_test.cc +93 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_test.cc +1424 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-filepath_test.cc +652 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-linked_ptr_test.cc +154 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-listener_test.cc +311 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-message_test.cc +159 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-options_test.cc +213 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test2_test.cc +61 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.cc +1110 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.h +53 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-port_test.cc +1303 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-printers_test.cc +1737 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-test-part_test.cc +208 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-tuple_test.cc +320 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test2_test.cc +45 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.cc +380 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.h +66 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-unittest-api_test.cc +341 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_all_test.cc +47 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_assert_by_exception_test.cc +119 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest.py +210 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest_.cc +87 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test.py +235 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test_.cc +311 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test.py +129 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test_.cc +63 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test.py +119 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test_.cc +124 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_environment_test.cc +189 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest.py +638 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest_.cc +138 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test.py +172 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test_.cc +46 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_json_outfiles_test.py +162 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_json_output_unittest.py +611 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_json_test_utils.py +60 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest.py +207 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest_.cc +157 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_main_unittest.cc +45 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_no_test_unittest.cc +56 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test.py +344 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_.cc +1067 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_golden_lin.txt +781 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_pred_impl_unittest.cc +2427 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_premature_exit_test.cc +127 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_prod_test.cc +57 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_repeat_test.cc +236 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test.py +325 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test_.cc +103 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_sole_header_test.cc +57 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_stress_test.cc +250 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_test_utils.py +318 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_testbridge_test.py +65 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_testbridge_test_.cc +44 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_ex_test.cc +92 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test.py +171 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test_.cc +72 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test.py +69 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test_.cc +43 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_unittest.cc +7797 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile1_test_.cc +48 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile2_test_.cc +48 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfiles_test.py +140 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest.py +378 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest_.cc +179 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_test_utils.py +196 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/production.cc +36 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/production.h +55 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/DebugProject.xcconfig +30 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/FrameworkTarget.xcconfig +17 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/General.xcconfig +41 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/ReleaseProject.xcconfig +32 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/StaticLibraryTarget.xcconfig +18 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/TestTarget.xcconfig +8 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Resources/Info.plist +30 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/Info.plist +28 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj +457 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/runtests.sh +62 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.cc +63 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.h +59 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget_test.cc +68 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/runtests.sh +65 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/versiongenerate.py +100 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/gtest.xcodeproj/project.pbxproj +1182 -0
- data/ext/rj_schema/rapidjson/travis-doxygen.sh +128 -0
- metadata +613 -1
@@ -0,0 +1,20 @@
|
|
1
|
+
find_package(GTestSrc)
|
2
|
+
|
3
|
+
IF(GTESTSRC_FOUND)
|
4
|
+
enable_testing()
|
5
|
+
|
6
|
+
if (WIN32 AND (NOT CYGWIN) AND (NOT MINGW))
|
7
|
+
set(gtest_disable_pthreads ON)
|
8
|
+
set(gtest_force_shared_crt ON)
|
9
|
+
endif()
|
10
|
+
|
11
|
+
add_subdirectory(${GTEST_SOURCE_DIR} ${CMAKE_BINARY_DIR}/googletest)
|
12
|
+
include_directories(SYSTEM ${GTEST_INCLUDE_DIR})
|
13
|
+
|
14
|
+
set(TEST_LIBRARIES gtest gtest_main)
|
15
|
+
|
16
|
+
add_custom_target(tests ALL)
|
17
|
+
add_subdirectory(perftest)
|
18
|
+
add_subdirectory(unittest)
|
19
|
+
|
20
|
+
ENDIF(GTESTSRC_FOUND)
|
@@ -0,0 +1,28 @@
|
|
1
|
+
set(PERFTEST_SOURCES
|
2
|
+
misctest.cpp
|
3
|
+
perftest.cpp
|
4
|
+
platformtest.cpp
|
5
|
+
rapidjsontest.cpp
|
6
|
+
schematest.cpp)
|
7
|
+
|
8
|
+
add_executable(perftest ${PERFTEST_SOURCES})
|
9
|
+
target_link_libraries(perftest ${TEST_LIBRARIES})
|
10
|
+
|
11
|
+
add_dependencies(tests perftest)
|
12
|
+
|
13
|
+
find_program(CCACHE_FOUND ccache)
|
14
|
+
if(CCACHE_FOUND)
|
15
|
+
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
|
16
|
+
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache)
|
17
|
+
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
18
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Qunused-arguments -fcolor-diagnostics")
|
19
|
+
endif()
|
20
|
+
endif(CCACHE_FOUND)
|
21
|
+
|
22
|
+
set_property(DIRECTORY PROPERTY COMPILE_OPTIONS ${EXTRA_CXX_FLAGS})
|
23
|
+
|
24
|
+
IF(NOT (CMAKE_BUILD_TYPE STREQUAL "Debug"))
|
25
|
+
add_test(NAME perftest
|
26
|
+
COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/perftest
|
27
|
+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
|
28
|
+
ENDIF()
|
@@ -0,0 +1,974 @@
|
|
1
|
+
// Tencent is pleased to support the open source community by making RapidJSON available.
|
2
|
+
//
|
3
|
+
// Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
|
4
|
+
//
|
5
|
+
// Licensed under the MIT License (the "License"); you may not use this file except
|
6
|
+
// in compliance with the License. You may obtain a copy of the License at
|
7
|
+
//
|
8
|
+
// http://opensource.org/licenses/MIT
|
9
|
+
//
|
10
|
+
// Unless required by applicable law or agreed to in writing, software distributed
|
11
|
+
// under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
12
|
+
// CONDITIONS OF ANY KIND, either express or implied. See the License for the
|
13
|
+
// specific language governing permissions and limitations under the License.
|
14
|
+
|
15
|
+
#include "perftest.h"
|
16
|
+
|
17
|
+
#if TEST_MISC
|
18
|
+
|
19
|
+
#define __STDC_FORMAT_MACROS
|
20
|
+
#include "rapidjson/stringbuffer.h"
|
21
|
+
|
22
|
+
#define protected public
|
23
|
+
#include "rapidjson/writer.h"
|
24
|
+
#undef private
|
25
|
+
|
26
|
+
class Misc : public PerfTest {
|
27
|
+
};
|
28
|
+
|
29
|
+
// Copyright (c) 2008-2010 Bjoern Hoehrmann <bjoern@hoehrmann.de>
|
30
|
+
// See http://bjoern.hoehrmann.de/utf-8/decoder/dfa/ for details.
|
31
|
+
|
32
|
+
#define UTF8_ACCEPT 0
|
33
|
+
#define UTF8_REJECT 12
|
34
|
+
|
35
|
+
static const unsigned char utf8d[] = {
|
36
|
+
// The first part of the table maps bytes to character classes that
|
37
|
+
// to reduce the size of the transition table and create bitmasks.
|
38
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
39
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
40
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
41
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
42
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,
|
43
|
+
7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
|
44
|
+
8,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
45
|
+
10,3,3,3,3,3,3,3,3,3,3,3,3,4,3,3, 11,6,6,6,5,8,8,8,8,8,8,8,8,8,8,8,
|
46
|
+
|
47
|
+
// The second part is a transition table that maps a combination
|
48
|
+
// of a state of the automaton and a character class to a state.
|
49
|
+
0,12,24,36,60,96,84,12,12,12,48,72, 12,12,12,12,12,12,12,12,12,12,12,12,
|
50
|
+
12, 0,12,12,12,12,12, 0,12, 0,12,12, 12,24,12,12,12,12,12,24,12,24,12,12,
|
51
|
+
12,12,12,12,12,12,12,24,12,12,12,12, 12,24,12,12,12,12,12,12,12,24,12,12,
|
52
|
+
12,12,12,12,12,12,12,36,12,36,12,12, 12,36,12,12,12,12,12,36,12,36,12,12,
|
53
|
+
12,36,12,12,12,12,12,12,12,12,12,12,
|
54
|
+
};
|
55
|
+
|
56
|
+
static unsigned inline decode(unsigned* state, unsigned* codep, unsigned byte) {
|
57
|
+
unsigned type = utf8d[byte];
|
58
|
+
|
59
|
+
*codep = (*state != UTF8_ACCEPT) ?
|
60
|
+
(byte & 0x3fu) | (*codep << 6) :
|
61
|
+
(0xff >> type) & (byte);
|
62
|
+
|
63
|
+
*state = utf8d[256 + *state + type];
|
64
|
+
return *state;
|
65
|
+
}
|
66
|
+
|
67
|
+
static bool IsUTF8(unsigned char* s) {
|
68
|
+
unsigned codepoint, state = 0;
|
69
|
+
|
70
|
+
while (*s)
|
71
|
+
decode(&state, &codepoint, *s++);
|
72
|
+
|
73
|
+
return state == UTF8_ACCEPT;
|
74
|
+
}
|
75
|
+
|
76
|
+
TEST_F(Misc, Hoehrmann_IsUTF8) {
|
77
|
+
for (size_t i = 0; i < kTrialCount; i++) {
|
78
|
+
EXPECT_TRUE(IsUTF8((unsigned char*)json_));
|
79
|
+
}
|
80
|
+
}
|
81
|
+
|
82
|
+
////////////////////////////////////////////////////////////////////////////////
|
83
|
+
// CountDecimalDigit: Count number of decimal places
|
84
|
+
|
85
|
+
inline unsigned CountDecimalDigit_naive(unsigned n) {
|
86
|
+
unsigned count = 1;
|
87
|
+
while (n >= 10) {
|
88
|
+
n /= 10;
|
89
|
+
count++;
|
90
|
+
}
|
91
|
+
return count;
|
92
|
+
}
|
93
|
+
|
94
|
+
inline unsigned CountDecimalDigit_enroll4(unsigned n) {
|
95
|
+
unsigned count = 1;
|
96
|
+
while (n >= 10000) {
|
97
|
+
n /= 10000u;
|
98
|
+
count += 4;
|
99
|
+
}
|
100
|
+
if (n < 10) return count;
|
101
|
+
if (n < 100) return count + 1;
|
102
|
+
if (n < 1000) return count + 2;
|
103
|
+
return count + 3;
|
104
|
+
}
|
105
|
+
|
106
|
+
inline unsigned CountDecimalDigit64_enroll4(uint64_t n) {
|
107
|
+
unsigned count = 1;
|
108
|
+
while (n >= 10000) {
|
109
|
+
n /= 10000u;
|
110
|
+
count += 4;
|
111
|
+
}
|
112
|
+
if (n < 10) return count;
|
113
|
+
if (n < 100) return count + 1;
|
114
|
+
if (n < 1000) return count + 2;
|
115
|
+
return count + 3;
|
116
|
+
}
|
117
|
+
|
118
|
+
inline unsigned CountDecimalDigit_fast(unsigned n) {
|
119
|
+
static const uint32_t powers_of_10[] = {
|
120
|
+
0,
|
121
|
+
10,
|
122
|
+
100,
|
123
|
+
1000,
|
124
|
+
10000,
|
125
|
+
100000,
|
126
|
+
1000000,
|
127
|
+
10000000,
|
128
|
+
100000000,
|
129
|
+
1000000000
|
130
|
+
};
|
131
|
+
|
132
|
+
#if defined(_M_IX86) || defined(_M_X64)
|
133
|
+
unsigned long i = 0;
|
134
|
+
_BitScanReverse(&i, n | 1);
|
135
|
+
uint32_t t = (i + 1) * 1233 >> 12;
|
136
|
+
#elif defined(__GNUC__)
|
137
|
+
uint32_t t = (32 - __builtin_clz(n | 1)) * 1233 >> 12;
|
138
|
+
#else
|
139
|
+
#error
|
140
|
+
#endif
|
141
|
+
return t - (n < powers_of_10[t]) + 1;
|
142
|
+
}
|
143
|
+
|
144
|
+
inline unsigned CountDecimalDigit64_fast(uint64_t n) {
|
145
|
+
static const uint64_t powers_of_10[] = {
|
146
|
+
0,
|
147
|
+
10,
|
148
|
+
100,
|
149
|
+
1000,
|
150
|
+
10000,
|
151
|
+
100000,
|
152
|
+
1000000,
|
153
|
+
10000000,
|
154
|
+
100000000,
|
155
|
+
1000000000,
|
156
|
+
10000000000,
|
157
|
+
100000000000,
|
158
|
+
1000000000000,
|
159
|
+
10000000000000,
|
160
|
+
100000000000000,
|
161
|
+
1000000000000000,
|
162
|
+
10000000000000000,
|
163
|
+
100000000000000000,
|
164
|
+
1000000000000000000,
|
165
|
+
10000000000000000000U
|
166
|
+
};
|
167
|
+
|
168
|
+
#if defined(_M_IX86)
|
169
|
+
uint64_t m = n | 1;
|
170
|
+
unsigned long i = 0;
|
171
|
+
if (_BitScanReverse(&i, m >> 32))
|
172
|
+
i += 32;
|
173
|
+
else
|
174
|
+
_BitScanReverse(&i, m & 0xFFFFFFFF);
|
175
|
+
uint32_t t = (i + 1) * 1233 >> 12;
|
176
|
+
#elif defined(_M_X64)
|
177
|
+
unsigned long i = 0;
|
178
|
+
_BitScanReverse64(&i, n | 1);
|
179
|
+
uint32_t t = (i + 1) * 1233 >> 12;
|
180
|
+
#elif defined(__GNUC__)
|
181
|
+
uint32_t t = (64 - __builtin_clzll(n | 1)) * 1233 >> 12;
|
182
|
+
#else
|
183
|
+
#error
|
184
|
+
#endif
|
185
|
+
|
186
|
+
return t - (n < powers_of_10[t]) + 1;
|
187
|
+
}
|
188
|
+
|
189
|
+
#if 0
|
190
|
+
// Exhaustive, very slow
|
191
|
+
TEST_F(Misc, CountDecimalDigit_Verify) {
|
192
|
+
unsigned i = 0;
|
193
|
+
do {
|
194
|
+
if (i % (65536 * 256) == 0)
|
195
|
+
printf("%u\n", i);
|
196
|
+
ASSERT_EQ(CountDecimalDigit_enroll4(i), CountDecimalDigit_fast(i));
|
197
|
+
i++;
|
198
|
+
} while (i != 0);
|
199
|
+
}
|
200
|
+
|
201
|
+
static const unsigned kDigits10Trial = 1000000000u;
|
202
|
+
TEST_F(Misc, CountDecimalDigit_naive) {
|
203
|
+
unsigned sum = 0;
|
204
|
+
for (unsigned i = 0; i < kDigits10Trial; i++)
|
205
|
+
sum += CountDecimalDigit_naive(i);
|
206
|
+
printf("%u\n", sum);
|
207
|
+
}
|
208
|
+
|
209
|
+
TEST_F(Misc, CountDecimalDigit_enroll4) {
|
210
|
+
unsigned sum = 0;
|
211
|
+
for (unsigned i = 0; i < kDigits10Trial; i++)
|
212
|
+
sum += CountDecimalDigit_enroll4(i);
|
213
|
+
printf("%u\n", sum);
|
214
|
+
}
|
215
|
+
|
216
|
+
TEST_F(Misc, CountDecimalDigit_fast) {
|
217
|
+
unsigned sum = 0;
|
218
|
+
for (unsigned i = 0; i < kDigits10Trial; i++)
|
219
|
+
sum += CountDecimalDigit_fast(i);
|
220
|
+
printf("%u\n", sum);
|
221
|
+
}
|
222
|
+
#endif
|
223
|
+
|
224
|
+
TEST_F(Misc, CountDecimalDigit64_VerifyFast) {
|
225
|
+
uint64_t i = 1, j;
|
226
|
+
do {
|
227
|
+
//printf("%" PRIu64 "\n", i);
|
228
|
+
ASSERT_EQ(CountDecimalDigit64_enroll4(i), CountDecimalDigit64_fast(i));
|
229
|
+
j = i;
|
230
|
+
i *= 3;
|
231
|
+
} while (j < i);
|
232
|
+
}
|
233
|
+
|
234
|
+
////////////////////////////////////////////////////////////////////////////////
|
235
|
+
// integer-to-string conversion
|
236
|
+
|
237
|
+
// https://gist.github.com/anonymous/7179097
|
238
|
+
static const int randval[] ={
|
239
|
+
936116, 369532, 453755, -72860, 209713, 268347, 435278, -360266, -416287, -182064,
|
240
|
+
-644712, 944969, 640463, -366588, 471577, -69401, -744294, -505829, 923883, 831785,
|
241
|
+
-601136, -636767, -437054, 591718, 100758, 231907, -719038, 973540, -605220, 506659,
|
242
|
+
-871653, 462533, 764843, -919138, 404305, -630931, -288711, -751454, -173726, -718208,
|
243
|
+
432689, -281157, 360737, 659827, 19174, -376450, 769984, -858198, 439127, 734703,
|
244
|
+
-683426, 7, 386135, 186997, -643900, -744422, -604708, -629545, 42313, -933592,
|
245
|
+
-635566, 182308, 439024, -367219, -73924, -516649, 421935, -470515, 413507, -78952,
|
246
|
+
-427917, -561158, 737176, 94538, 572322, 405217, 709266, -357278, -908099, -425447,
|
247
|
+
601119, 750712, -862285, -177869, 900102, 384877, 157859, -641680, 503738, -702558,
|
248
|
+
278225, 463290, 268378, -212840, 580090, 347346, -473985, -950968, -114547, -839893,
|
249
|
+
-738032, -789424, 409540, 493495, 432099, 119755, 905004, -174834, 338266, 234298,
|
250
|
+
74641, -965136, -754593, 685273, 466924, 920560, 385062, 796402, -67229, 994864,
|
251
|
+
376974, 299869, -647540, -128724, 469890, -163167, -547803, -743363, 486463, -621028,
|
252
|
+
612288, 27459, -514224, 126342, -66612, 803409, -777155, -336453, -284002, 472451,
|
253
|
+
342390, -163630, 908356, -456147, -825607, 268092, -974715, 287227, 227890, -524101,
|
254
|
+
616370, -782456, 922098, -624001, -813690, 171605, -192962, 796151, 707183, -95696,
|
255
|
+
-23163, -721260, 508892, 430715, 791331, 482048, -996102, 863274, 275406, -8279,
|
256
|
+
-556239, -902076, 268647, -818565, 260069, -798232, -172924, -566311, -806503, -885992,
|
257
|
+
813969, -78468, 956632, 304288, 494867, -508784, 381751, 151264, 762953, 76352,
|
258
|
+
594902, 375424, 271700, -743062, 390176, 924237, 772574, 676610, 435752, -153847,
|
259
|
+
3959, -971937, -294181, -538049, -344620, -170136, 19120, -703157, 868152, -657961,
|
260
|
+
-818631, 219015, -872729, -940001, -956570, 880727, -345910, 942913, -942271, -788115,
|
261
|
+
225294, 701108, -517736, -416071, 281940, 488730, 942698, 711494, 838382, -892302,
|
262
|
+
-533028, 103052, 528823, 901515, 949577, 159364, 718227, -241814, -733661, -462928,
|
263
|
+
-495829, 165170, 513580, -629188, -509571, -459083, 198437, 77198, -644612, 811276,
|
264
|
+
-422298, -860842, -52584, 920369, 686424, -530667, -243476, 49763, 345866, -411960,
|
265
|
+
-114863, 470810, -302860, 683007, -509080, 2, -174981, -772163, -48697, 447770,
|
266
|
+
-268246, 213268, 269215, 78810, -236340, -639140, -864323, 505113, -986569, -325215,
|
267
|
+
541859, 163070, -819998, -645161, -583336, 573414, 696417, -132375, 3, -294501,
|
268
|
+
320435, 682591, 840008, 351740, 426951, 609354, 898154, -943254, 227321, -859793,
|
269
|
+
-727993, 44137, -497965, -782239, 14955, -746080, -243366, 9837, -233083, 606507,
|
270
|
+
-995864, -615287, -994307, 602715, 770771, -315040, 610860, 446102, -307120, 710728,
|
271
|
+
-590392, -230474, -762625, -637525, 134963, -202700, -766902, -985541, 218163, 682009,
|
272
|
+
926051, 525156, -61195, 403211, -810098, 245539, -431733, 179998, -806533, 745943,
|
273
|
+
447597, 131973, -187130, 826019, 286107, -937230, -577419, 20254, 681802, -340500,
|
274
|
+
323080, 266283, -667617, 309656, 416386, 611863, 759991, -534257, 523112, -634892,
|
275
|
+
-169913, -204905, -909867, -882185, -944908, 741811, -717675, 967007, -317396, 407230,
|
276
|
+
-412805, 792905, 994873, 744793, -456797, 713493, 355232, 116900, -945199, 880539,
|
277
|
+
342505, -580824, -262273, 982968, -349497, -735488, 311767, -455191, 570918, 389734,
|
278
|
+
-958386, 10262, -99267, 155481, 304210, 204724, 704367, -144893, -233664, -671441,
|
279
|
+
896849, 408613, 762236, 322697, 981321, 688476, 13663, -970704, -379507, 896412,
|
280
|
+
977084, 348869, 875948, 341348, 318710, 512081, 6163, 669044, 833295, 811883,
|
281
|
+
708756, -802534, -536057, 608413, -389625, -694603, 541106, -110037, 720322, -540581,
|
282
|
+
645420, 32980, 62442, 510157, -981870, -87093, -325960, -500494, -718291, -67889,
|
283
|
+
991501, 374804, 769026, -978869, 294747, 714623, 413327, -199164, 671368, 804789,
|
284
|
+
-362507, 798196, -170790, -568895, -869379, 62020, -316693, -837793, 644994, -39341,
|
285
|
+
-417504, -243068, -957756, 99072, 622234, -739992, 225668, 8863, -505910, 82483,
|
286
|
+
-559244, 241572, 1315, -36175, -54990, 376813, -11, 162647, -688204, -486163,
|
287
|
+
-54934, -197470, 744223, -762707, 732540, 996618, 351561, -445933, -898491, 486531,
|
288
|
+
456151, 15276, 290186, -817110, -52995, 313046, -452533, -96267, 94470, -500176,
|
289
|
+
-818026, -398071, -810548, -143325, -819741, 1338, -897676, -101577, -855445, 37309,
|
290
|
+
285742, 953804, -777927, -926962, -811217, -936744, -952245, -802300, -490188, -964953,
|
291
|
+
-552279, 329142, -570048, -505756, 682898, -381089, -14352, 175138, 152390, -582268,
|
292
|
+
-485137, 717035, 805329, 239572, -730409, 209643, -184403, -385864, 675086, 819648,
|
293
|
+
629058, -527109, -488666, -171981, 532788, 552441, 174666, 984921, 766514, 758787,
|
294
|
+
716309, 338801, -978004, -412163, 876079, -734212, 789557, -160491, -522719, 56644,
|
295
|
+
-991, -286038, -53983, 663740, 809812, 919889, -717502, -137704, 220511, 184396,
|
296
|
+
-825740, -588447, 430870, 124309, 135956, 558662, -307087, -788055, -451328, 812260,
|
297
|
+
931601, 324347, -482989, -117858, -278861, 189068, -172774, 929057, 293787, 198161,
|
298
|
+
-342386, -47173, 906555, -759955, -12779, 777604, -97869, 899320, 927486, -25284,
|
299
|
+
-848550, 259450, -485856, -17820, 88, 171400, 235492, -326783, -340793, 886886,
|
300
|
+
112428, -246280, 5979, 648444, -114982, 991013, -56489, -9497, 419706, 632820,
|
301
|
+
-341664, 393926, -848977, -22538, 257307, 773731, -905319, 491153, 734883, -868212,
|
302
|
+
-951053, 644458, -580758, 764735, 584316, 297077, 28852, -397710, -953669, 201772,
|
303
|
+
879050, -198237, -588468, 448102, -116837, 770007, -231812, 642906, -582166, -885828,
|
304
|
+
9, 305082, -996577, 303559, 75008, -772956, -447960, 599825, -295552, 870739,
|
305
|
+
-386278, -950300, 485359, -457081, 629461, -850276, 550496, -451755, -620841, -11766,
|
306
|
+
-950137, 832337, 28711, -273398, -507197, 91921, -271360, -705991, -753220, -388968,
|
307
|
+
967945, 340434, -320883, -662793, -554617, -574568, 477946, -6148, -129519, 689217,
|
308
|
+
920020, -656315, -974523, -212525, 80921, -612532, 645096, 545655, 655713, -591631,
|
309
|
+
-307385, -816688, -618823, -113713, 526430, 673063, 735916, -809095, -850417, 639004,
|
310
|
+
432281, -388185, 270708, 860146, -39902, -786157, -258180, -246169, -966720, -264957,
|
311
|
+
548072, -306010, -57367, -635665, 933824, 70553, -989936, -488741, 72411, -452509,
|
312
|
+
529831, 956277, 449019, -577850, -360986, -803418, 48833, 296073, 203430, 609591,
|
313
|
+
715483, 470964, 658106, -718254, -96424, 790163, 334739, 181070, -373578, 5,
|
314
|
+
-435088, 329841, 330939, -256602, 394355, 912412, 231910, 927278, -661933, 788539,
|
315
|
+
-769664, -893274, -96856, 298205, 901043, -608122, -527430, 183618, -553963, -35246,
|
316
|
+
-393924, 948832, -483198, 594501, 35460, -407007, 93494, -336881, -634072, 984205,
|
317
|
+
-812161, 944664, -31062, 753872, 823933, -69566, 50445, 290147, 85134, 34706,
|
318
|
+
551902, 405202, -991246, -84642, 154341, 316432, -695101, -651588, -5030, 137564,
|
319
|
+
-294665, 332541, 528307, -90572, -344923, 523766, -758498, -968047, 339028, 494578,
|
320
|
+
593129, -725773, 31834, -718406, -208638, 159665, -2043, 673344, -442767, 75816,
|
321
|
+
755442, 769257, -158730, -410272, 691688, 589550, -878398, -184121, 460679, 346312,
|
322
|
+
294163, -544602, 653308, 254167, -276979, 52073, -892684, 887653, -41222, 983065,
|
323
|
+
-68258, -408799, -99069, -674069, -863635, -32890, 622757, -743862, 40872, -4837,
|
324
|
+
-967228, 522370, -903951, -818669, 524459, 514702, 925801, 20007, -299229, 579348,
|
325
|
+
626021, 430089, 348139, -562692, -607728, -130606, -928451, -424793, -458647, -448892,
|
326
|
+
-312230, 143337, 109746, 880042, -339658, -785614, 938995, 540916, 118429, 661351,
|
327
|
+
-402967, 404729, -40918, -976535, 743230, 713110, 440182, -381314, -499252, 74613,
|
328
|
+
193652, 912717, 491323, 583633, 324691, 459397, 281253, 195540, -2764, -888651,
|
329
|
+
892449, 132663, -478373, -430002, -314551, 527826, 247165, 557966, 554778, 481531,
|
330
|
+
-946634, 431685, -769059, -348371, 174046, 184597, -354867, 584422, 227390, -850397,
|
331
|
+
-542924, -849093, -737769, 325359, 736314, 269101, 767940, 674809, 81413, -447458,
|
332
|
+
445076, 189072, 906218, 502688, -718476, -863827, -731381, 100660, 623249, 710008,
|
333
|
+
572060, 922203, 685740, 55096, 263394, -243695, -353910, -516788, 388471, 455165,
|
334
|
+
844103, -643772, 363976, 268875, -899450, 104470, 104029, -238874, -274659, 732969,
|
335
|
+
-676443, 953291, -916289, -861849, -242344, 958083, -479593, -970395, 799831, 277841,
|
336
|
+
-243236, -283462, -201510, 166263, -259105, -575706, 878926, 891064, 895297, 655262,
|
337
|
+
-34807, -809833, -89281, 342585, 554920, 1, 902141, -333425, 139703, 852318,
|
338
|
+
-618438, 329498, -932596, -692836, -513372, 733656, -523411, 85779, 500478, -682697,
|
339
|
+
-502836, 138776, 156341, -420037, -557964, -556378, 710993, -50383, -877159, 916334,
|
340
|
+
132996, 583516, -603392, -111615, -12288, -780214, 476780, 123327, 137607, 519956,
|
341
|
+
745837, 17358, -158581, -53490
|
342
|
+
};
|
343
|
+
static const size_t randvalCount = sizeof(randval) / sizeof(randval[0]);
|
344
|
+
static const size_t kItoaTrialCount = 10000;
|
345
|
+
|
346
|
+
static const char digits[201] =
|
347
|
+
"0001020304050607080910111213141516171819"
|
348
|
+
"2021222324252627282930313233343536373839"
|
349
|
+
"4041424344454647484950515253545556575859"
|
350
|
+
"6061626364656667686970717273747576777879"
|
351
|
+
"8081828384858687888990919293949596979899";
|
352
|
+
|
353
|
+
// Prevent code being optimized out
|
354
|
+
//#define OUTPUT_LENGTH(length) printf("", length)
|
355
|
+
#define OUTPUT_LENGTH(length) printf("%u\n", (unsigned)length)
|
356
|
+
|
357
|
+
template<typename OutputStream>
|
358
|
+
class Writer1 {
|
359
|
+
public:
|
360
|
+
Writer1() : os_() {}
|
361
|
+
Writer1(OutputStream& os) : os_(&os) {}
|
362
|
+
|
363
|
+
void Reset(OutputStream& os) {
|
364
|
+
os_ = &os;
|
365
|
+
}
|
366
|
+
|
367
|
+
bool WriteInt(int i) {
|
368
|
+
if (i < 0) {
|
369
|
+
os_->Put('-');
|
370
|
+
i = -i;
|
371
|
+
}
|
372
|
+
return WriteUint((unsigned)i);
|
373
|
+
}
|
374
|
+
|
375
|
+
bool WriteUint(unsigned u) {
|
376
|
+
char buffer[10];
|
377
|
+
char *p = buffer;
|
378
|
+
do {
|
379
|
+
*p++ = char(u % 10) + '0';
|
380
|
+
u /= 10;
|
381
|
+
} while (u > 0);
|
382
|
+
|
383
|
+
do {
|
384
|
+
--p;
|
385
|
+
os_->Put(*p);
|
386
|
+
} while (p != buffer);
|
387
|
+
return true;
|
388
|
+
}
|
389
|
+
|
390
|
+
bool WriteInt64(int64_t i64) {
|
391
|
+
if (i64 < 0) {
|
392
|
+
os_->Put('-');
|
393
|
+
i64 = -i64;
|
394
|
+
}
|
395
|
+
WriteUint64((uint64_t)i64);
|
396
|
+
return true;
|
397
|
+
}
|
398
|
+
|
399
|
+
bool WriteUint64(uint64_t u64) {
|
400
|
+
char buffer[20];
|
401
|
+
char *p = buffer;
|
402
|
+
do {
|
403
|
+
*p++ = char(u64 % 10) + '0';
|
404
|
+
u64 /= 10;
|
405
|
+
} while (u64 > 0);
|
406
|
+
|
407
|
+
do {
|
408
|
+
--p;
|
409
|
+
os_->Put(*p);
|
410
|
+
} while (p != buffer);
|
411
|
+
return true;
|
412
|
+
}
|
413
|
+
|
414
|
+
private:
|
415
|
+
OutputStream* os_;
|
416
|
+
};
|
417
|
+
|
418
|
+
template<>
|
419
|
+
bool Writer1<rapidjson::StringBuffer>::WriteUint(unsigned u) {
|
420
|
+
char buffer[10];
|
421
|
+
char* p = buffer;
|
422
|
+
do {
|
423
|
+
*p++ = char(u % 10) + '0';
|
424
|
+
u /= 10;
|
425
|
+
} while (u > 0);
|
426
|
+
|
427
|
+
char* d = os_->Push(p - buffer);
|
428
|
+
do {
|
429
|
+
--p;
|
430
|
+
*d++ = *p;
|
431
|
+
} while (p != buffer);
|
432
|
+
return true;
|
433
|
+
}
|
434
|
+
|
435
|
+
// Using digits LUT to reduce division/modulo
|
436
|
+
template<typename OutputStream>
|
437
|
+
class Writer2 {
|
438
|
+
public:
|
439
|
+
Writer2() : os_() {}
|
440
|
+
Writer2(OutputStream& os) : os_(&os) {}
|
441
|
+
|
442
|
+
void Reset(OutputStream& os) {
|
443
|
+
os_ = &os;
|
444
|
+
}
|
445
|
+
|
446
|
+
bool WriteInt(int i) {
|
447
|
+
if (i < 0) {
|
448
|
+
os_->Put('-');
|
449
|
+
i = -i;
|
450
|
+
}
|
451
|
+
return WriteUint((unsigned)i);
|
452
|
+
}
|
453
|
+
|
454
|
+
bool WriteUint(unsigned u) {
|
455
|
+
char buffer[10];
|
456
|
+
char* p = buffer;
|
457
|
+
while (u >= 100) {
|
458
|
+
const unsigned i = (u % 100) << 1;
|
459
|
+
u /= 100;
|
460
|
+
*p++ = digits[i + 1];
|
461
|
+
*p++ = digits[i];
|
462
|
+
}
|
463
|
+
if (u < 10)
|
464
|
+
*p++ = char(u) + '0';
|
465
|
+
else {
|
466
|
+
const unsigned i = u << 1;
|
467
|
+
*p++ = digits[i + 1];
|
468
|
+
*p++ = digits[i];
|
469
|
+
}
|
470
|
+
|
471
|
+
do {
|
472
|
+
--p;
|
473
|
+
os_->Put(*p);
|
474
|
+
} while (p != buffer);
|
475
|
+
return true;
|
476
|
+
}
|
477
|
+
|
478
|
+
bool WriteInt64(int64_t i64) {
|
479
|
+
if (i64 < 0) {
|
480
|
+
os_->Put('-');
|
481
|
+
i64 = -i64;
|
482
|
+
}
|
483
|
+
WriteUint64((uint64_t)i64);
|
484
|
+
return true;
|
485
|
+
}
|
486
|
+
|
487
|
+
bool WriteUint64(uint64_t u64) {
|
488
|
+
char buffer[20];
|
489
|
+
char* p = buffer;
|
490
|
+
while (u64 >= 100) {
|
491
|
+
const unsigned i = static_cast<unsigned>(u64 % 100) << 1;
|
492
|
+
u64 /= 100;
|
493
|
+
*p++ = digits[i + 1];
|
494
|
+
*p++ = digits[i];
|
495
|
+
}
|
496
|
+
if (u64 < 10)
|
497
|
+
*p++ = char(u64) + '0';
|
498
|
+
else {
|
499
|
+
const unsigned i = static_cast<unsigned>(u64) << 1;
|
500
|
+
*p++ = digits[i + 1];
|
501
|
+
*p++ = digits[i];
|
502
|
+
}
|
503
|
+
|
504
|
+
do {
|
505
|
+
--p;
|
506
|
+
os_->Put(*p);
|
507
|
+
} while (p != buffer);
|
508
|
+
return true;
|
509
|
+
}
|
510
|
+
|
511
|
+
private:
|
512
|
+
OutputStream* os_;
|
513
|
+
};
|
514
|
+
|
515
|
+
// First pass to count digits
|
516
|
+
template<typename OutputStream>
|
517
|
+
class Writer3 {
|
518
|
+
public:
|
519
|
+
Writer3() : os_() {}
|
520
|
+
Writer3(OutputStream& os) : os_(&os) {}
|
521
|
+
|
522
|
+
void Reset(OutputStream& os) {
|
523
|
+
os_ = &os;
|
524
|
+
}
|
525
|
+
|
526
|
+
bool WriteInt(int i) {
|
527
|
+
if (i < 0) {
|
528
|
+
os_->Put('-');
|
529
|
+
i = -i;
|
530
|
+
}
|
531
|
+
return WriteUint((unsigned)i);
|
532
|
+
}
|
533
|
+
|
534
|
+
bool WriteUint(unsigned u) {
|
535
|
+
char buffer[10];
|
536
|
+
char *p = buffer;
|
537
|
+
do {
|
538
|
+
*p++ = char(u % 10) + '0';
|
539
|
+
u /= 10;
|
540
|
+
} while (u > 0);
|
541
|
+
|
542
|
+
do {
|
543
|
+
--p;
|
544
|
+
os_->Put(*p);
|
545
|
+
} while (p != buffer);
|
546
|
+
return true;
|
547
|
+
}
|
548
|
+
|
549
|
+
bool WriteInt64(int64_t i64) {
|
550
|
+
if (i64 < 0) {
|
551
|
+
os_->Put('-');
|
552
|
+
i64 = -i64;
|
553
|
+
}
|
554
|
+
WriteUint64((uint64_t)i64);
|
555
|
+
return true;
|
556
|
+
}
|
557
|
+
|
558
|
+
bool WriteUint64(uint64_t u64) {
|
559
|
+
char buffer[20];
|
560
|
+
char *p = buffer;
|
561
|
+
do {
|
562
|
+
*p++ = char(u64 % 10) + '0';
|
563
|
+
u64 /= 10;
|
564
|
+
} while (u64 > 0);
|
565
|
+
|
566
|
+
do {
|
567
|
+
--p;
|
568
|
+
os_->Put(*p);
|
569
|
+
} while (p != buffer);
|
570
|
+
return true;
|
571
|
+
}
|
572
|
+
|
573
|
+
private:
|
574
|
+
void WriteUintReverse(char* d, unsigned u) {
|
575
|
+
do {
|
576
|
+
*--d = char(u % 10) + '0';
|
577
|
+
u /= 10;
|
578
|
+
} while (u > 0);
|
579
|
+
}
|
580
|
+
|
581
|
+
void WriteUint64Reverse(char* d, uint64_t u) {
|
582
|
+
do {
|
583
|
+
*--d = char(u % 10) + '0';
|
584
|
+
u /= 10;
|
585
|
+
} while (u > 0);
|
586
|
+
}
|
587
|
+
|
588
|
+
OutputStream* os_;
|
589
|
+
};
|
590
|
+
|
591
|
+
template<>
|
592
|
+
inline bool Writer3<rapidjson::StringBuffer>::WriteUint(unsigned u) {
|
593
|
+
unsigned digit = CountDecimalDigit_fast(u);
|
594
|
+
WriteUintReverse(os_->Push(digit) + digit, u);
|
595
|
+
return true;
|
596
|
+
}
|
597
|
+
|
598
|
+
template<>
|
599
|
+
inline bool Writer3<rapidjson::InsituStringStream>::WriteUint(unsigned u) {
|
600
|
+
unsigned digit = CountDecimalDigit_fast(u);
|
601
|
+
WriteUintReverse(os_->Push(digit) + digit, u);
|
602
|
+
return true;
|
603
|
+
}
|
604
|
+
|
605
|
+
template<>
|
606
|
+
inline bool Writer3<rapidjson::StringBuffer>::WriteUint64(uint64_t u) {
|
607
|
+
unsigned digit = CountDecimalDigit64_fast(u);
|
608
|
+
WriteUint64Reverse(os_->Push(digit) + digit, u);
|
609
|
+
return true;
|
610
|
+
}
|
611
|
+
|
612
|
+
template<>
|
613
|
+
inline bool Writer3<rapidjson::InsituStringStream>::WriteUint64(uint64_t u) {
|
614
|
+
unsigned digit = CountDecimalDigit64_fast(u);
|
615
|
+
WriteUint64Reverse(os_->Push(digit) + digit, u);
|
616
|
+
return true;
|
617
|
+
}
|
618
|
+
|
619
|
+
// Using digits LUT to reduce division/modulo, two passes
|
620
|
+
template<typename OutputStream>
|
621
|
+
class Writer4 {
|
622
|
+
public:
|
623
|
+
Writer4() : os_() {}
|
624
|
+
Writer4(OutputStream& os) : os_(&os) {}
|
625
|
+
|
626
|
+
void Reset(OutputStream& os) {
|
627
|
+
os_ = &os;
|
628
|
+
}
|
629
|
+
|
630
|
+
bool WriteInt(int i) {
|
631
|
+
if (i < 0) {
|
632
|
+
os_->Put('-');
|
633
|
+
i = -i;
|
634
|
+
}
|
635
|
+
return WriteUint((unsigned)i);
|
636
|
+
}
|
637
|
+
|
638
|
+
bool WriteUint(unsigned u) {
|
639
|
+
char buffer[10];
|
640
|
+
char* p = buffer;
|
641
|
+
while (u >= 100) {
|
642
|
+
const unsigned i = (u % 100) << 1;
|
643
|
+
u /= 100;
|
644
|
+
*p++ = digits[i + 1];
|
645
|
+
*p++ = digits[i];
|
646
|
+
}
|
647
|
+
if (u < 10)
|
648
|
+
*p++ = char(u) + '0';
|
649
|
+
else {
|
650
|
+
const unsigned i = u << 1;
|
651
|
+
*p++ = digits[i + 1];
|
652
|
+
*p++ = digits[i];
|
653
|
+
}
|
654
|
+
|
655
|
+
do {
|
656
|
+
--p;
|
657
|
+
os_->Put(*p);
|
658
|
+
} while (p != buffer);
|
659
|
+
return true;
|
660
|
+
}
|
661
|
+
|
662
|
+
bool WriteInt64(int64_t i64) {
|
663
|
+
if (i64 < 0) {
|
664
|
+
os_->Put('-');
|
665
|
+
i64 = -i64;
|
666
|
+
}
|
667
|
+
WriteUint64((uint64_t)i64);
|
668
|
+
return true;
|
669
|
+
}
|
670
|
+
|
671
|
+
bool WriteUint64(uint64_t u64) {
|
672
|
+
char buffer[20];
|
673
|
+
char* p = buffer;
|
674
|
+
while (u64 >= 100) {
|
675
|
+
const unsigned i = static_cast<unsigned>(u64 % 100) << 1;
|
676
|
+
u64 /= 100;
|
677
|
+
*p++ = digits[i + 1];
|
678
|
+
*p++ = digits[i];
|
679
|
+
}
|
680
|
+
if (u64 < 10)
|
681
|
+
*p++ = char(u64) + '0';
|
682
|
+
else {
|
683
|
+
const unsigned i = static_cast<unsigned>(u64) << 1;
|
684
|
+
*p++ = digits[i + 1];
|
685
|
+
*p++ = digits[i];
|
686
|
+
}
|
687
|
+
|
688
|
+
do {
|
689
|
+
--p;
|
690
|
+
os_->Put(*p);
|
691
|
+
} while (p != buffer);
|
692
|
+
return true;
|
693
|
+
}
|
694
|
+
|
695
|
+
private:
|
696
|
+
void WriteUintReverse(char* d, unsigned u) {
|
697
|
+
while (u >= 100) {
|
698
|
+
const unsigned i = (u % 100) << 1;
|
699
|
+
u /= 100;
|
700
|
+
*--d = digits[i + 1];
|
701
|
+
*--d = digits[i];
|
702
|
+
}
|
703
|
+
if (u < 10) {
|
704
|
+
*--d = char(u) + '0';
|
705
|
+
}
|
706
|
+
else {
|
707
|
+
const unsigned i = u << 1;
|
708
|
+
*--d = digits[i + 1];
|
709
|
+
*--d = digits[i];
|
710
|
+
}
|
711
|
+
}
|
712
|
+
|
713
|
+
void WriteUint64Reverse(char* d, uint64_t u) {
|
714
|
+
while (u >= 100) {
|
715
|
+
const unsigned i = (u % 100) << 1;
|
716
|
+
u /= 100;
|
717
|
+
*--d = digits[i + 1];
|
718
|
+
*--d = digits[i];
|
719
|
+
}
|
720
|
+
if (u < 10) {
|
721
|
+
*--d = char(u) + '0';
|
722
|
+
}
|
723
|
+
else {
|
724
|
+
const unsigned i = u << 1;
|
725
|
+
*--d = digits[i + 1];
|
726
|
+
*--d = digits[i];
|
727
|
+
}
|
728
|
+
}
|
729
|
+
|
730
|
+
OutputStream* os_;
|
731
|
+
};
|
732
|
+
|
733
|
+
template<>
|
734
|
+
inline bool Writer4<rapidjson::StringBuffer>::WriteUint(unsigned u) {
|
735
|
+
unsigned digit = CountDecimalDigit_fast(u);
|
736
|
+
WriteUintReverse(os_->Push(digit) + digit, u);
|
737
|
+
return true;
|
738
|
+
}
|
739
|
+
|
740
|
+
template<>
|
741
|
+
inline bool Writer4<rapidjson::InsituStringStream>::WriteUint(unsigned u) {
|
742
|
+
unsigned digit = CountDecimalDigit_fast(u);
|
743
|
+
WriteUintReverse(os_->Push(digit) + digit, u);
|
744
|
+
return true;
|
745
|
+
}
|
746
|
+
|
747
|
+
template<>
|
748
|
+
inline bool Writer4<rapidjson::StringBuffer>::WriteUint64(uint64_t u) {
|
749
|
+
unsigned digit = CountDecimalDigit64_fast(u);
|
750
|
+
WriteUint64Reverse(os_->Push(digit) + digit, u);
|
751
|
+
return true;
|
752
|
+
}
|
753
|
+
|
754
|
+
template<>
|
755
|
+
inline bool Writer4<rapidjson::InsituStringStream>::WriteUint64(uint64_t u) {
|
756
|
+
unsigned digit = CountDecimalDigit64_fast(u);
|
757
|
+
WriteUint64Reverse(os_->Push(digit) + digit, u);
|
758
|
+
return true;
|
759
|
+
}
|
760
|
+
|
761
|
+
template <typename Writer>
|
762
|
+
void itoa_Writer_StringBufferVerify() {
|
763
|
+
rapidjson::StringBuffer sb;
|
764
|
+
Writer writer(sb);
|
765
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
766
|
+
char buffer[32];
|
767
|
+
sprintf(buffer, "%d", randval[j]);
|
768
|
+
writer.WriteInt(randval[j]);
|
769
|
+
ASSERT_STREQ(buffer, sb.GetString());
|
770
|
+
sb.Clear();
|
771
|
+
}
|
772
|
+
}
|
773
|
+
|
774
|
+
template <typename Writer>
|
775
|
+
void itoa_Writer_InsituStringStreamVerify() {
|
776
|
+
Writer writer;
|
777
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
778
|
+
char buffer[32];
|
779
|
+
sprintf(buffer, "%d", randval[j]);
|
780
|
+
char buffer2[32];
|
781
|
+
rapidjson::InsituStringStream ss(buffer2);
|
782
|
+
writer.Reset(ss);
|
783
|
+
char* begin = ss.PutBegin();
|
784
|
+
writer.WriteInt(randval[j]);
|
785
|
+
ss.Put('\0');
|
786
|
+
ss.PutEnd(begin);
|
787
|
+
ASSERT_STREQ(buffer, buffer2);
|
788
|
+
}
|
789
|
+
}
|
790
|
+
|
791
|
+
template <typename Writer>
|
792
|
+
void itoa_Writer_StringBuffer() {
|
793
|
+
size_t length = 0;
|
794
|
+
|
795
|
+
rapidjson::StringBuffer sb;
|
796
|
+
Writer writer(sb);
|
797
|
+
|
798
|
+
for (size_t i = 0; i < kItoaTrialCount; i++) {
|
799
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
800
|
+
writer.WriteInt(randval[j]);
|
801
|
+
length += sb.GetSize();
|
802
|
+
sb.Clear();
|
803
|
+
}
|
804
|
+
}
|
805
|
+
OUTPUT_LENGTH(length);
|
806
|
+
}
|
807
|
+
|
808
|
+
template <typename Writer>
|
809
|
+
void itoa_Writer_InsituStringStream() {
|
810
|
+
size_t length = 0;
|
811
|
+
|
812
|
+
char buffer[32];
|
813
|
+
Writer writer;
|
814
|
+
for (size_t i = 0; i < kItoaTrialCount; i++) {
|
815
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
816
|
+
rapidjson::InsituStringStream ss(buffer);
|
817
|
+
writer.Reset(ss);
|
818
|
+
char* begin = ss.PutBegin();
|
819
|
+
writer.WriteInt(randval[j]);
|
820
|
+
length += ss.PutEnd(begin);
|
821
|
+
}
|
822
|
+
}
|
823
|
+
OUTPUT_LENGTH(length);
|
824
|
+
};
|
825
|
+
|
826
|
+
template <typename Writer>
|
827
|
+
void itoa64_Writer_StringBufferVerify() {
|
828
|
+
rapidjson::StringBuffer sb;
|
829
|
+
Writer writer(sb);
|
830
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
831
|
+
char buffer[32];
|
832
|
+
int64_t x = randval[j] * randval[j];
|
833
|
+
sprintf(buffer, "%" PRIi64, x);
|
834
|
+
writer.WriteInt64(x);
|
835
|
+
ASSERT_STREQ(buffer, sb.GetString());
|
836
|
+
sb.Clear();
|
837
|
+
}
|
838
|
+
}
|
839
|
+
|
840
|
+
template <typename Writer>
|
841
|
+
void itoa64_Writer_InsituStringStreamVerify() {
|
842
|
+
Writer writer;
|
843
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
844
|
+
char buffer[32];
|
845
|
+
int64_t x = randval[j] * randval[j];
|
846
|
+
sprintf(buffer, "%" PRIi64, x);
|
847
|
+
char buffer2[32];
|
848
|
+
rapidjson::InsituStringStream ss(buffer2);
|
849
|
+
writer.Reset(ss);
|
850
|
+
char* begin = ss.PutBegin();
|
851
|
+
writer.WriteInt64(x);
|
852
|
+
ss.Put('\0');
|
853
|
+
ss.PutEnd(begin);
|
854
|
+
ASSERT_STREQ(buffer, buffer2);
|
855
|
+
}
|
856
|
+
}
|
857
|
+
|
858
|
+
template <typename Writer>
|
859
|
+
void itoa64_Writer_StringBuffer() {
|
860
|
+
size_t length = 0;
|
861
|
+
|
862
|
+
rapidjson::StringBuffer sb;
|
863
|
+
Writer writer(sb);
|
864
|
+
|
865
|
+
for (size_t i = 0; i < kItoaTrialCount; i++) {
|
866
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
867
|
+
writer.WriteInt64(randval[j] * randval[j]);
|
868
|
+
length += sb.GetSize();
|
869
|
+
sb.Clear();
|
870
|
+
}
|
871
|
+
}
|
872
|
+
OUTPUT_LENGTH(length);
|
873
|
+
}
|
874
|
+
|
875
|
+
template <typename Writer>
|
876
|
+
void itoa64_Writer_InsituStringStream() {
|
877
|
+
size_t length = 0;
|
878
|
+
|
879
|
+
char buffer[32];
|
880
|
+
Writer writer;
|
881
|
+
for (size_t i = 0; i < kItoaTrialCount; i++) {
|
882
|
+
for (size_t j = 0; j < randvalCount; j++) {
|
883
|
+
rapidjson::InsituStringStream ss(buffer);
|
884
|
+
writer.Reset(ss);
|
885
|
+
char* begin = ss.PutBegin();
|
886
|
+
writer.WriteInt64(randval[j] * randval[j]);
|
887
|
+
length += ss.PutEnd(begin);
|
888
|
+
}
|
889
|
+
}
|
890
|
+
OUTPUT_LENGTH(length);
|
891
|
+
};
|
892
|
+
|
893
|
+
// Full specialization for InsituStringStream to prevent memory copying
|
894
|
+
// (normally we will not use InsituStringStream for writing, just for testing)
|
895
|
+
|
896
|
+
namespace rapidjson {
|
897
|
+
|
898
|
+
template<>
|
899
|
+
bool rapidjson::Writer<InsituStringStream>::WriteInt(int i) {
|
900
|
+
char *buffer = os_->Push(11);
|
901
|
+
const char* end = internal::i32toa(i, buffer);
|
902
|
+
os_->Pop(11 - (end - buffer));
|
903
|
+
return true;
|
904
|
+
}
|
905
|
+
|
906
|
+
template<>
|
907
|
+
bool Writer<InsituStringStream>::WriteUint(unsigned u) {
|
908
|
+
char *buffer = os_->Push(10);
|
909
|
+
const char* end = internal::u32toa(u, buffer);
|
910
|
+
os_->Pop(10 - (end - buffer));
|
911
|
+
return true;
|
912
|
+
}
|
913
|
+
|
914
|
+
template<>
|
915
|
+
bool Writer<InsituStringStream>::WriteInt64(int64_t i64) {
|
916
|
+
char *buffer = os_->Push(21);
|
917
|
+
const char* end = internal::i64toa(i64, buffer);
|
918
|
+
os_->Pop(21 - (end - buffer));
|
919
|
+
return true;
|
920
|
+
}
|
921
|
+
|
922
|
+
template<>
|
923
|
+
bool Writer<InsituStringStream>::WriteUint64(uint64_t u) {
|
924
|
+
char *buffer = os_->Push(20);
|
925
|
+
const char* end = internal::u64toa(u, buffer);
|
926
|
+
os_->Pop(20 - (end - buffer));
|
927
|
+
return true;
|
928
|
+
}
|
929
|
+
|
930
|
+
} // namespace rapidjson
|
931
|
+
|
932
|
+
TEST_F(Misc, itoa_Writer_StringBufferVerify) { itoa_Writer_StringBufferVerify<rapidjson::Writer<rapidjson::StringBuffer> >(); }
|
933
|
+
TEST_F(Misc, itoa_Writer1_StringBufferVerify) { itoa_Writer_StringBufferVerify<Writer1<rapidjson::StringBuffer> >(); }
|
934
|
+
TEST_F(Misc, itoa_Writer2_StringBufferVerify) { itoa_Writer_StringBufferVerify<Writer2<rapidjson::StringBuffer> >(); }
|
935
|
+
TEST_F(Misc, itoa_Writer3_StringBufferVerify) { itoa_Writer_StringBufferVerify<Writer3<rapidjson::StringBuffer> >(); }
|
936
|
+
TEST_F(Misc, itoa_Writer4_StringBufferVerify) { itoa_Writer_StringBufferVerify<Writer4<rapidjson::StringBuffer> >(); }
|
937
|
+
TEST_F(Misc, itoa_Writer_InsituStringStreamVerify) { itoa_Writer_InsituStringStreamVerify<rapidjson::Writer<rapidjson::InsituStringStream> >(); }
|
938
|
+
TEST_F(Misc, itoa_Writer1_InsituStringStreamVerify) { itoa_Writer_InsituStringStreamVerify<Writer1<rapidjson::InsituStringStream> >(); }
|
939
|
+
TEST_F(Misc, itoa_Writer2_InsituStringStreamVerify) { itoa_Writer_InsituStringStreamVerify<Writer2<rapidjson::InsituStringStream> >(); }
|
940
|
+
TEST_F(Misc, itoa_Writer3_InsituStringStreamVerify) { itoa_Writer_InsituStringStreamVerify<Writer3<rapidjson::InsituStringStream> >(); }
|
941
|
+
TEST_F(Misc, itoa_Writer4_InsituStringStreamVerify) { itoa_Writer_InsituStringStreamVerify<Writer4<rapidjson::InsituStringStream> >(); }
|
942
|
+
TEST_F(Misc, itoa_Writer_StringBuffer) { itoa_Writer_StringBuffer<rapidjson::Writer<rapidjson::StringBuffer> >(); }
|
943
|
+
TEST_F(Misc, itoa_Writer1_StringBuffer) { itoa_Writer_StringBuffer<Writer1<rapidjson::StringBuffer> >(); }
|
944
|
+
TEST_F(Misc, itoa_Writer2_StringBuffer) { itoa_Writer_StringBuffer<Writer2<rapidjson::StringBuffer> >(); }
|
945
|
+
TEST_F(Misc, itoa_Writer3_StringBuffer) { itoa_Writer_StringBuffer<Writer3<rapidjson::StringBuffer> >(); }
|
946
|
+
TEST_F(Misc, itoa_Writer4_StringBuffer) { itoa_Writer_StringBuffer<Writer4<rapidjson::StringBuffer> >(); }
|
947
|
+
TEST_F(Misc, itoa_Writer_InsituStringStream) { itoa_Writer_InsituStringStream<rapidjson::Writer<rapidjson::InsituStringStream> >(); }
|
948
|
+
TEST_F(Misc, itoa_Writer1_InsituStringStream) { itoa_Writer_InsituStringStream<Writer1<rapidjson::InsituStringStream> >(); }
|
949
|
+
TEST_F(Misc, itoa_Writer2_InsituStringStream) { itoa_Writer_InsituStringStream<Writer2<rapidjson::InsituStringStream> >(); }
|
950
|
+
TEST_F(Misc, itoa_Writer3_InsituStringStream) { itoa_Writer_InsituStringStream<Writer3<rapidjson::InsituStringStream> >(); }
|
951
|
+
TEST_F(Misc, itoa_Writer4_InsituStringStream) { itoa_Writer_InsituStringStream<Writer4<rapidjson::InsituStringStream> >(); }
|
952
|
+
|
953
|
+
TEST_F(Misc, itoa64_Writer_StringBufferVerify) { itoa64_Writer_StringBufferVerify<rapidjson::Writer<rapidjson::StringBuffer> >(); }
|
954
|
+
TEST_F(Misc, itoa64_Writer1_StringBufferVerify) { itoa64_Writer_StringBufferVerify<Writer1<rapidjson::StringBuffer> >(); }
|
955
|
+
TEST_F(Misc, itoa64_Writer2_StringBufferVerify) { itoa64_Writer_StringBufferVerify<Writer2<rapidjson::StringBuffer> >(); }
|
956
|
+
TEST_F(Misc, itoa64_Writer3_StringBufferVerify) { itoa64_Writer_StringBufferVerify<Writer3<rapidjson::StringBuffer> >(); }
|
957
|
+
TEST_F(Misc, itoa64_Writer4_StringBufferVerify) { itoa64_Writer_StringBufferVerify<Writer4<rapidjson::StringBuffer> >(); }
|
958
|
+
TEST_F(Misc, itoa64_Writer_InsituStringStreamVerify) { itoa64_Writer_InsituStringStreamVerify<rapidjson::Writer<rapidjson::InsituStringStream> >(); }
|
959
|
+
TEST_F(Misc, itoa64_Writer1_InsituStringStreamVerify) { itoa64_Writer_InsituStringStreamVerify<Writer1<rapidjson::InsituStringStream> >(); }
|
960
|
+
TEST_F(Misc, itoa64_Writer2_InsituStringStreamVerify) { itoa64_Writer_InsituStringStreamVerify<Writer2<rapidjson::InsituStringStream> >(); }
|
961
|
+
TEST_F(Misc, itoa64_Writer3_InsituStringStreamVerify) { itoa64_Writer_InsituStringStreamVerify<Writer3<rapidjson::InsituStringStream> >(); }
|
962
|
+
TEST_F(Misc, itoa64_Writer4_InsituStringStreamVerify) { itoa64_Writer_InsituStringStreamVerify<Writer4<rapidjson::InsituStringStream> >(); }
|
963
|
+
TEST_F(Misc, itoa64_Writer_StringBuffer) { itoa64_Writer_StringBuffer<rapidjson::Writer<rapidjson::StringBuffer> >(); }
|
964
|
+
TEST_F(Misc, itoa64_Writer1_StringBuffer) { itoa64_Writer_StringBuffer<Writer1<rapidjson::StringBuffer> >(); }
|
965
|
+
TEST_F(Misc, itoa64_Writer2_StringBuffer) { itoa64_Writer_StringBuffer<Writer2<rapidjson::StringBuffer> >(); }
|
966
|
+
TEST_F(Misc, itoa64_Writer3_StringBuffer) { itoa64_Writer_StringBuffer<Writer3<rapidjson::StringBuffer> >(); }
|
967
|
+
TEST_F(Misc, itoa64_Writer4_StringBuffer) { itoa64_Writer_StringBuffer<Writer4<rapidjson::StringBuffer> >(); }
|
968
|
+
TEST_F(Misc, itoa64_Writer_InsituStringStream) { itoa64_Writer_InsituStringStream<rapidjson::Writer<rapidjson::InsituStringStream> >(); }
|
969
|
+
TEST_F(Misc, itoa64_Writer1_InsituStringStream) { itoa64_Writer_InsituStringStream<Writer1<rapidjson::InsituStringStream> >(); }
|
970
|
+
TEST_F(Misc, itoa64_Writer2_InsituStringStream) { itoa64_Writer_InsituStringStream<Writer2<rapidjson::InsituStringStream> >(); }
|
971
|
+
TEST_F(Misc, itoa64_Writer3_InsituStringStream) { itoa64_Writer_InsituStringStream<Writer3<rapidjson::InsituStringStream> >(); }
|
972
|
+
TEST_F(Misc, itoa64_Writer4_InsituStringStream) { itoa64_Writer_InsituStringStream<Writer4<rapidjson::InsituStringStream> >(); }
|
973
|
+
|
974
|
+
#endif // TEST_MISC
|