rj_schema 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (613) hide show
  1. checksums.yaml +4 -4
  2. metadata +3 -615
  3. data/ext/rj_schema/rapidjson/CHANGELOG.md +0 -158
  4. data/ext/rj_schema/rapidjson/CMakeLists.txt +0 -221
  5. data/ext/rj_schema/rapidjson/CMakeModules/FindGTestSrc.cmake +0 -30
  6. data/ext/rj_schema/rapidjson/RapidJSON.pc.in +0 -7
  7. data/ext/rj_schema/rapidjson/RapidJSONConfig.cmake.in +0 -15
  8. data/ext/rj_schema/rapidjson/RapidJSONConfigVersion.cmake.in +0 -10
  9. data/ext/rj_schema/rapidjson/appveyor.yml +0 -41
  10. data/ext/rj_schema/rapidjson/bin/data/glossary.json +0 -22
  11. data/ext/rj_schema/rapidjson/bin/data/menu.json +0 -27
  12. data/ext/rj_schema/rapidjson/bin/data/readme.txt +0 -1
  13. data/ext/rj_schema/rapidjson/bin/data/sample.json +0 -3315
  14. data/ext/rj_schema/rapidjson/bin/data/webapp.json +0 -88
  15. data/ext/rj_schema/rapidjson/bin/data/widget.json +0 -26
  16. data/ext/rj_schema/rapidjson/bin/draft-04/schema +0 -150
  17. data/ext/rj_schema/rapidjson/bin/encodings/utf16be.json +0 -0
  18. data/ext/rj_schema/rapidjson/bin/encodings/utf16bebom.json +0 -0
  19. data/ext/rj_schema/rapidjson/bin/encodings/utf16le.json +0 -0
  20. data/ext/rj_schema/rapidjson/bin/encodings/utf16lebom.json +0 -0
  21. data/ext/rj_schema/rapidjson/bin/encodings/utf32be.json +0 -0
  22. data/ext/rj_schema/rapidjson/bin/encodings/utf32bebom.json +0 -0
  23. data/ext/rj_schema/rapidjson/bin/encodings/utf32le.json +0 -0
  24. data/ext/rj_schema/rapidjson/bin/encodings/utf32lebom.json +0 -0
  25. data/ext/rj_schema/rapidjson/bin/encodings/utf8.json +0 -7
  26. data/ext/rj_schema/rapidjson/bin/encodings/utf8bom.json +0 -7
  27. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail1.json +0 -1
  28. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail10.json +0 -1
  29. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail11.json +0 -1
  30. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail12.json +0 -1
  31. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail13.json +0 -1
  32. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail14.json +0 -1
  33. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail15.json +0 -1
  34. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail16.json +0 -1
  35. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail17.json +0 -1
  36. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail18.json +0 -1
  37. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail19.json +0 -1
  38. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail2.json +0 -1
  39. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail20.json +0 -1
  40. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail21.json +0 -1
  41. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail22.json +0 -1
  42. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail23.json +0 -1
  43. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail24.json +0 -1
  44. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail25.json +0 -1
  45. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail26.json +0 -1
  46. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail27.json +0 -2
  47. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail28.json +0 -2
  48. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail29.json +0 -1
  49. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail3.json +0 -1
  50. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail30.json +0 -1
  51. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail31.json +0 -1
  52. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail32.json +0 -1
  53. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail33.json +0 -1
  54. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail4.json +0 -1
  55. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail5.json +0 -1
  56. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail6.json +0 -1
  57. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail7.json +0 -1
  58. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail8.json +0 -1
  59. data/ext/rj_schema/rapidjson/bin/jsonchecker/fail9.json +0 -1
  60. data/ext/rj_schema/rapidjson/bin/jsonchecker/pass1.json +0 -58
  61. data/ext/rj_schema/rapidjson/bin/jsonchecker/pass2.json +0 -1
  62. data/ext/rj_schema/rapidjson/bin/jsonchecker/pass3.json +0 -6
  63. data/ext/rj_schema/rapidjson/bin/jsonchecker/readme.txt +0 -3
  64. data/ext/rj_schema/rapidjson/bin/jsonschema/LICENSE +0 -19
  65. data/ext/rj_schema/rapidjson/bin/jsonschema/README.md +0 -148
  66. data/ext/rj_schema/rapidjson/bin/jsonschema/bin/jsonschema_suite +0 -283
  67. data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/folder/folderInteger.json +0 -3
  68. data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/integer.json +0 -3
  69. data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/subSchemas.json +0 -8
  70. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/additionalItems.json +0 -82
  71. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/additionalProperties.json +0 -88
  72. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/default.json +0 -49
  73. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/dependencies.json +0 -108
  74. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/disallow.json +0 -80
  75. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/divisibleBy.json +0 -60
  76. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/enum.json +0 -71
  77. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/extends.json +0 -94
  78. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/items.json +0 -46
  79. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maxItems.json +0 -28
  80. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maxLength.json +0 -33
  81. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maximum.json +0 -42
  82. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minItems.json +0 -28
  83. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minLength.json +0 -33
  84. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minimum.json +0 -42
  85. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/bignum.json +0 -107
  86. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/format.json +0 -222
  87. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/jsregex.json +0 -18
  88. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/zeroTerminatedFloats.json +0 -15
  89. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/pattern.json +0 -34
  90. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/patternProperties.json +0 -110
  91. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/properties.json +0 -92
  92. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/ref.json +0 -159
  93. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/refRemote.json +0 -74
  94. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/required.json +0 -53
  95. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/type.json +0 -474
  96. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/uniqueItems.json +0 -79
  97. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/additionalItems.json +0 -82
  98. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/additionalProperties.json +0 -88
  99. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/allOf.json +0 -112
  100. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/anyOf.json +0 -68
  101. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/default.json +0 -49
  102. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/definitions.json +0 -32
  103. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/dependencies.json +0 -113
  104. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/enum.json +0 -72
  105. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/items.json +0 -46
  106. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxItems.json +0 -28
  107. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxLength.json +0 -33
  108. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxProperties.json +0 -28
  109. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maximum.json +0 -42
  110. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minItems.json +0 -28
  111. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minLength.json +0 -33
  112. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minProperties.json +0 -28
  113. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minimum.json +0 -42
  114. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/multipleOf.json +0 -60
  115. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/not.json +0 -96
  116. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/oneOf.json +0 -68
  117. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/bignum.json +0 -107
  118. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/format.json +0 -148
  119. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/zeroTerminatedFloats.json +0 -15
  120. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/pattern.json +0 -34
  121. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/patternProperties.json +0 -110
  122. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/properties.json +0 -92
  123. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/ref.json +0 -159
  124. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/refRemote.json +0 -74
  125. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/required.json +0 -39
  126. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/type.json +0 -330
  127. data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/uniqueItems.json +0 -79
  128. data/ext/rj_schema/rapidjson/bin/jsonschema/tox.ini +0 -8
  129. data/ext/rj_schema/rapidjson/bin/types/booleans.json +0 -102
  130. data/ext/rj_schema/rapidjson/bin/types/floats.json +0 -102
  131. data/ext/rj_schema/rapidjson/bin/types/guids.json +0 -102
  132. data/ext/rj_schema/rapidjson/bin/types/integers.json +0 -102
  133. data/ext/rj_schema/rapidjson/bin/types/mixed.json +0 -592
  134. data/ext/rj_schema/rapidjson/bin/types/nulls.json +0 -102
  135. data/ext/rj_schema/rapidjson/bin/types/paragraphs.json +0 -102
  136. data/ext/rj_schema/rapidjson/bin/types/readme.txt +0 -1
  137. data/ext/rj_schema/rapidjson/contrib/natvis/LICENSE +0 -45
  138. data/ext/rj_schema/rapidjson/contrib/natvis/README.md +0 -7
  139. data/ext/rj_schema/rapidjson/contrib/natvis/rapidjson.natvis +0 -38
  140. data/ext/rj_schema/rapidjson/doc/CMakeLists.txt +0 -27
  141. data/ext/rj_schema/rapidjson/doc/Doxyfile.in +0 -2369
  142. data/ext/rj_schema/rapidjson/doc/Doxyfile.zh-cn.in +0 -2369
  143. data/ext/rj_schema/rapidjson/doc/diagram/architecture.dot +0 -50
  144. data/ext/rj_schema/rapidjson/doc/diagram/architecture.png +0 -0
  145. data/ext/rj_schema/rapidjson/doc/diagram/insituparsing.dot +0 -65
  146. data/ext/rj_schema/rapidjson/doc/diagram/insituparsing.png +0 -0
  147. data/ext/rj_schema/rapidjson/doc/diagram/iterative-parser-states-diagram.dot +0 -62
  148. data/ext/rj_schema/rapidjson/doc/diagram/iterative-parser-states-diagram.png +0 -0
  149. data/ext/rj_schema/rapidjson/doc/diagram/makefile +0 -8
  150. data/ext/rj_schema/rapidjson/doc/diagram/move1.dot +0 -47
  151. data/ext/rj_schema/rapidjson/doc/diagram/move1.png +0 -0
  152. data/ext/rj_schema/rapidjson/doc/diagram/move2.dot +0 -62
  153. data/ext/rj_schema/rapidjson/doc/diagram/move2.png +0 -0
  154. data/ext/rj_schema/rapidjson/doc/diagram/move3.dot +0 -60
  155. data/ext/rj_schema/rapidjson/doc/diagram/move3.png +0 -0
  156. data/ext/rj_schema/rapidjson/doc/diagram/normalparsing.dot +0 -56
  157. data/ext/rj_schema/rapidjson/doc/diagram/normalparsing.png +0 -0
  158. data/ext/rj_schema/rapidjson/doc/diagram/simpledom.dot +0 -54
  159. data/ext/rj_schema/rapidjson/doc/diagram/simpledom.png +0 -0
  160. data/ext/rj_schema/rapidjson/doc/diagram/tutorial.dot +0 -58
  161. data/ext/rj_schema/rapidjson/doc/diagram/tutorial.png +0 -0
  162. data/ext/rj_schema/rapidjson/doc/diagram/utilityclass.dot +0 -73
  163. data/ext/rj_schema/rapidjson/doc/diagram/utilityclass.png +0 -0
  164. data/ext/rj_schema/rapidjson/doc/dom.md +0 -280
  165. data/ext/rj_schema/rapidjson/doc/dom.zh-cn.md +0 -284
  166. data/ext/rj_schema/rapidjson/doc/encoding.md +0 -146
  167. data/ext/rj_schema/rapidjson/doc/encoding.zh-cn.md +0 -152
  168. data/ext/rj_schema/rapidjson/doc/faq.md +0 -289
  169. data/ext/rj_schema/rapidjson/doc/faq.zh-cn.md +0 -290
  170. data/ext/rj_schema/rapidjson/doc/features.md +0 -104
  171. data/ext/rj_schema/rapidjson/doc/features.zh-cn.md +0 -103
  172. data/ext/rj_schema/rapidjson/doc/internals.md +0 -368
  173. data/ext/rj_schema/rapidjson/doc/internals.zh-cn.md +0 -363
  174. data/ext/rj_schema/rapidjson/doc/logo/rapidjson.png +0 -0
  175. data/ext/rj_schema/rapidjson/doc/logo/rapidjson.svg +0 -119
  176. data/ext/rj_schema/rapidjson/doc/misc/DoxygenLayout.xml +0 -194
  177. data/ext/rj_schema/rapidjson/doc/misc/doxygenextra.css +0 -274
  178. data/ext/rj_schema/rapidjson/doc/misc/footer.html +0 -11
  179. data/ext/rj_schema/rapidjson/doc/misc/header.html +0 -24
  180. data/ext/rj_schema/rapidjson/doc/npm.md +0 -31
  181. data/ext/rj_schema/rapidjson/doc/performance.md +0 -26
  182. data/ext/rj_schema/rapidjson/doc/performance.zh-cn.md +0 -26
  183. data/ext/rj_schema/rapidjson/doc/pointer.md +0 -234
  184. data/ext/rj_schema/rapidjson/doc/pointer.zh-cn.md +0 -234
  185. data/ext/rj_schema/rapidjson/doc/sax.md +0 -509
  186. data/ext/rj_schema/rapidjson/doc/sax.zh-cn.md +0 -487
  187. data/ext/rj_schema/rapidjson/doc/schema.md +0 -505
  188. data/ext/rj_schema/rapidjson/doc/schema.zh-cn.md +0 -237
  189. data/ext/rj_schema/rapidjson/doc/stream.md +0 -429
  190. data/ext/rj_schema/rapidjson/doc/stream.zh-cn.md +0 -429
  191. data/ext/rj_schema/rapidjson/doc/tutorial.md +0 -536
  192. data/ext/rj_schema/rapidjson/doc/tutorial.zh-cn.md +0 -534
  193. data/ext/rj_schema/rapidjson/docker/debian/Dockerfile +0 -8
  194. data/ext/rj_schema/rapidjson/example/CMakeLists.txt +0 -45
  195. data/ext/rj_schema/rapidjson/example/archiver/archiver.cpp +0 -292
  196. data/ext/rj_schema/rapidjson/example/archiver/archiver.h +0 -145
  197. data/ext/rj_schema/rapidjson/example/archiver/archivertest.cpp +0 -287
  198. data/ext/rj_schema/rapidjson/example/capitalize/capitalize.cpp +0 -67
  199. data/ext/rj_schema/rapidjson/example/condense/condense.cpp +0 -32
  200. data/ext/rj_schema/rapidjson/example/filterkey/filterkey.cpp +0 -135
  201. data/ext/rj_schema/rapidjson/example/filterkeydom/filterkeydom.cpp +0 -170
  202. data/ext/rj_schema/rapidjson/example/jsonx/jsonx.cpp +0 -207
  203. data/ext/rj_schema/rapidjson/example/lookaheadparser/lookaheadparser.cpp +0 -350
  204. data/ext/rj_schema/rapidjson/example/messagereader/messagereader.cpp +0 -105
  205. data/ext/rj_schema/rapidjson/example/parsebyparts/parsebyparts.cpp +0 -176
  206. data/ext/rj_schema/rapidjson/example/pretty/pretty.cpp +0 -30
  207. data/ext/rj_schema/rapidjson/example/prettyauto/prettyauto.cpp +0 -56
  208. data/ext/rj_schema/rapidjson/example/schemavalidator/schemavalidator.cpp +0 -78
  209. data/ext/rj_schema/rapidjson/example/serialize/serialize.cpp +0 -173
  210. data/ext/rj_schema/rapidjson/example/simpledom/simpledom.cpp +0 -29
  211. data/ext/rj_schema/rapidjson/example/simplepullreader/simplepullreader.cpp +0 -53
  212. data/ext/rj_schema/rapidjson/example/simplereader/simplereader.cpp +0 -42
  213. data/ext/rj_schema/rapidjson/example/simplewriter/simplewriter.cpp +0 -36
  214. data/ext/rj_schema/rapidjson/example/tutorial/tutorial.cpp +0 -151
  215. data/ext/rj_schema/rapidjson/include/rapidjson/allocators.h +0 -284
  216. data/ext/rj_schema/rapidjson/include/rapidjson/cursorstreamwrapper.h +0 -78
  217. data/ext/rj_schema/rapidjson/include/rapidjson/document.h +0 -2648
  218. data/ext/rj_schema/rapidjson/include/rapidjson/encodedstream.h +0 -299
  219. data/ext/rj_schema/rapidjson/include/rapidjson/encodings.h +0 -716
  220. data/ext/rj_schema/rapidjson/include/rapidjson/error/en.h +0 -74
  221. data/ext/rj_schema/rapidjson/include/rapidjson/error/error.h +0 -161
  222. data/ext/rj_schema/rapidjson/include/rapidjson/filereadstream.h +0 -99
  223. data/ext/rj_schema/rapidjson/include/rapidjson/filewritestream.h +0 -104
  224. data/ext/rj_schema/rapidjson/include/rapidjson/fwd.h +0 -151
  225. data/ext/rj_schema/rapidjson/include/rapidjson/internal/biginteger.h +0 -290
  226. data/ext/rj_schema/rapidjson/include/rapidjson/internal/diyfp.h +0 -271
  227. data/ext/rj_schema/rapidjson/include/rapidjson/internal/dtoa.h +0 -245
  228. data/ext/rj_schema/rapidjson/include/rapidjson/internal/ieee754.h +0 -78
  229. data/ext/rj_schema/rapidjson/include/rapidjson/internal/itoa.h +0 -308
  230. data/ext/rj_schema/rapidjson/include/rapidjson/internal/meta.h +0 -186
  231. data/ext/rj_schema/rapidjson/include/rapidjson/internal/pow10.h +0 -55
  232. data/ext/rj_schema/rapidjson/include/rapidjson/internal/regex.h +0 -732
  233. data/ext/rj_schema/rapidjson/include/rapidjson/internal/stack.h +0 -231
  234. data/ext/rj_schema/rapidjson/include/rapidjson/internal/strfunc.h +0 -69
  235. data/ext/rj_schema/rapidjson/include/rapidjson/internal/strtod.h +0 -290
  236. data/ext/rj_schema/rapidjson/include/rapidjson/internal/swap.h +0 -46
  237. data/ext/rj_schema/rapidjson/include/rapidjson/istreamwrapper.h +0 -113
  238. data/ext/rj_schema/rapidjson/include/rapidjson/memorybuffer.h +0 -70
  239. data/ext/rj_schema/rapidjson/include/rapidjson/memorystream.h +0 -71
  240. data/ext/rj_schema/rapidjson/include/rapidjson/msinttypes/inttypes.h +0 -316
  241. data/ext/rj_schema/rapidjson/include/rapidjson/msinttypes/stdint.h +0 -300
  242. data/ext/rj_schema/rapidjson/include/rapidjson/ostreamwrapper.h +0 -81
  243. data/ext/rj_schema/rapidjson/include/rapidjson/pointer.h +0 -1357
  244. data/ext/rj_schema/rapidjson/include/rapidjson/prettywriter.h +0 -277
  245. data/ext/rj_schema/rapidjson/include/rapidjson/rapidjson.h +0 -630
  246. data/ext/rj_schema/rapidjson/include/rapidjson/reader.h +0 -2230
  247. data/ext/rj_schema/rapidjson/include/rapidjson/schema.h +0 -2494
  248. data/ext/rj_schema/rapidjson/include/rapidjson/stream.h +0 -223
  249. data/ext/rj_schema/rapidjson/include/rapidjson/stringbuffer.h +0 -121
  250. data/ext/rj_schema/rapidjson/include/rapidjson/writer.h +0 -710
  251. data/ext/rj_schema/rapidjson/include_dirs.js +0 -2
  252. data/ext/rj_schema/rapidjson/library.json +0 -15
  253. data/ext/rj_schema/rapidjson/license.txt +0 -57
  254. data/ext/rj_schema/rapidjson/package.json +0 -24
  255. data/ext/rj_schema/rapidjson/rapidjson.autopkg +0 -77
  256. data/ext/rj_schema/rapidjson/readme.md +0 -160
  257. data/ext/rj_schema/rapidjson/readme.zh-cn.md +0 -152
  258. data/ext/rj_schema/rapidjson/test/CMakeLists.txt +0 -20
  259. data/ext/rj_schema/rapidjson/test/perftest/CMakeLists.txt +0 -28
  260. data/ext/rj_schema/rapidjson/test/perftest/misctest.cpp +0 -974
  261. data/ext/rj_schema/rapidjson/test/perftest/perftest.cpp +0 -24
  262. data/ext/rj_schema/rapidjson/test/perftest/perftest.h +0 -185
  263. data/ext/rj_schema/rapidjson/test/perftest/platformtest.cpp +0 -166
  264. data/ext/rj_schema/rapidjson/test/perftest/rapidjsontest.cpp +0 -472
  265. data/ext/rj_schema/rapidjson/test/perftest/schematest.cpp +0 -223
  266. data/ext/rj_schema/rapidjson/test/unittest/CMakeLists.txt +0 -92
  267. data/ext/rj_schema/rapidjson/test/unittest/allocatorstest.cpp +0 -100
  268. data/ext/rj_schema/rapidjson/test/unittest/bigintegertest.cpp +0 -138
  269. data/ext/rj_schema/rapidjson/test/unittest/cursorstreamwrappertest.cpp +0 -115
  270. data/ext/rj_schema/rapidjson/test/unittest/documenttest.cpp +0 -672
  271. data/ext/rj_schema/rapidjson/test/unittest/dtoatest.cpp +0 -98
  272. data/ext/rj_schema/rapidjson/test/unittest/encodedstreamtest.cpp +0 -313
  273. data/ext/rj_schema/rapidjson/test/unittest/encodingstest.cpp +0 -451
  274. data/ext/rj_schema/rapidjson/test/unittest/filestreamtest.cpp +0 -112
  275. data/ext/rj_schema/rapidjson/test/unittest/fwdtest.cpp +0 -230
  276. data/ext/rj_schema/rapidjson/test/unittest/istreamwrappertest.cpp +0 -181
  277. data/ext/rj_schema/rapidjson/test/unittest/itoatest.cpp +0 -160
  278. data/ext/rj_schema/rapidjson/test/unittest/jsoncheckertest.cpp +0 -143
  279. data/ext/rj_schema/rapidjson/test/unittest/namespacetest.cpp +0 -70
  280. data/ext/rj_schema/rapidjson/test/unittest/ostreamwrappertest.cpp +0 -92
  281. data/ext/rj_schema/rapidjson/test/unittest/pointertest.cpp +0 -1529
  282. data/ext/rj_schema/rapidjson/test/unittest/prettywritertest.cpp +0 -373
  283. data/ext/rj_schema/rapidjson/test/unittest/readertest.cpp +0 -2190
  284. data/ext/rj_schema/rapidjson/test/unittest/regextest.cpp +0 -638
  285. data/ext/rj_schema/rapidjson/test/unittest/schematest.cpp +0 -2072
  286. data/ext/rj_schema/rapidjson/test/unittest/simdtest.cpp +0 -219
  287. data/ext/rj_schema/rapidjson/test/unittest/strfunctest.cpp +0 -30
  288. data/ext/rj_schema/rapidjson/test/unittest/stringbuffertest.cpp +0 -192
  289. data/ext/rj_schema/rapidjson/test/unittest/strtodtest.cpp +0 -132
  290. data/ext/rj_schema/rapidjson/test/unittest/unittest.cpp +0 -51
  291. data/ext/rj_schema/rapidjson/test/unittest/unittest.h +0 -140
  292. data/ext/rj_schema/rapidjson/test/unittest/valuetest.cpp +0 -1851
  293. data/ext/rj_schema/rapidjson/test/unittest/writertest.cpp +0 -598
  294. data/ext/rj_schema/rapidjson/test/valgrind.supp +0 -17
  295. data/ext/rj_schema/rapidjson/thirdparty/gtest/CMakeLists.txt +0 -16
  296. data/ext/rj_schema/rapidjson/thirdparty/gtest/README.md +0 -141
  297. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CHANGES +0 -126
  298. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CMakeLists.txt +0 -202
  299. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CONTRIBUTORS +0 -40
  300. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/LICENSE +0 -28
  301. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/Makefile.am +0 -224
  302. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/README.md +0 -333
  303. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/configure.ac +0 -146
  304. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/CheatSheet.md +0 -562
  305. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/CookBook.md +0 -3675
  306. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/DesignDoc.md +0 -280
  307. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/DevGuide.md +0 -132
  308. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/Documentation.md +0 -12
  309. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/ForDummies.md +0 -439
  310. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/FrequentlyAskedQuestions.md +0 -628
  311. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/KnownIssues.md +0 -19
  312. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/CheatSheet.md +0 -525
  313. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/CookBook.md +0 -3250
  314. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/Documentation.md +0 -11
  315. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/ForDummies.md +0 -439
  316. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/FrequentlyAskedQuestions.md +0 -624
  317. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/CheatSheet.md +0 -534
  318. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/CookBook.md +0 -3342
  319. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/Documentation.md +0 -12
  320. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/ForDummies.md +0 -439
  321. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/FrequentlyAskedQuestions.md +0 -628
  322. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/CheatSheet.md +0 -556
  323. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/CookBook.md +0 -3432
  324. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/Documentation.md +0 -12
  325. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/ForDummies.md +0 -439
  326. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/FrequentlyAskedQuestions.md +0 -628
  327. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-actions.h +0 -1205
  328. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-cardinalities.h +0 -147
  329. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h +0 -2377
  330. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h.pump +0 -794
  331. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h +0 -1095
  332. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h.pump +0 -291
  333. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h +0 -2179
  334. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h.pump +0 -672
  335. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h +0 -397
  336. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h.pump +0 -161
  337. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-matchers.h +0 -4399
  338. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-actions.h +0 -246
  339. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-matchers.h +0 -58
  340. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-spec-builders.h +0 -1847
  341. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock.h +0 -94
  342. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h +0 -8
  343. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump +0 -10
  344. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-matchers.h +0 -39
  345. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-port.h +0 -46
  346. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h +0 -279
  347. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h.pump +0 -136
  348. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-internal-utils.h +0 -511
  349. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-port.h +0 -91
  350. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/make/Makefile +0 -101
  351. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.sln +0 -32
  352. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.vcproj +0 -191
  353. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_config.vsprops +0 -15
  354. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_main.vcproj +0 -187
  355. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_test.vcproj +0 -201
  356. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.sln +0 -32
  357. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.vcxproj +0 -82
  358. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_config.props +0 -19
  359. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_main.vcxproj +0 -88
  360. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_test.vcxproj +0 -101
  361. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.sln +0 -32
  362. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.vcxproj +0 -84
  363. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_config.props +0 -19
  364. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_main.vcxproj +0 -90
  365. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_test.vcxproj +0 -103
  366. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/fuse_gmock_files.py +0 -240
  367. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/LICENSE +0 -203
  368. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README +0 -35
  369. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README.cppclean +0 -115
  370. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/__init__.py +0 -0
  371. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/ast.py +0 -1733
  372. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class.py +0 -227
  373. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class_test.py +0 -448
  374. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/keywords.py +0 -59
  375. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/tokenize.py +0 -287
  376. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/utils.py +0 -41
  377. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/gmock_gen.py +0 -31
  378. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/gmock-config.in +0 -303
  379. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/gmock_doctor.py +0 -640
  380. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/upload.py +0 -1387
  381. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/upload_gmock.py +0 -78
  382. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-all.cc +0 -47
  383. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-cardinalities.cc +0 -156
  384. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-internal-utils.cc +0 -174
  385. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-matchers.cc +0 -498
  386. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-spec-builders.cc +0 -823
  387. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock.cc +0 -183
  388. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock_main.cc +0 -54
  389. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-actions_test.cc +0 -1411
  390. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-cardinalities_test.cc +0 -428
  391. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-actions_test.cc +0 -1228
  392. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-function-mockers_test.cc +0 -622
  393. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-internal-utils_test.cc +0 -127
  394. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-matchers_test.cc +0 -1286
  395. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-internal-utils_test.cc +0 -699
  396. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-matchers_test.cc +0 -5648
  397. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-more-actions_test.cc +0 -708
  398. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-nice-strict_test.cc +0 -424
  399. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-port_test.cc +0 -43
  400. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-spec-builders_test.cc +0 -2644
  401. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_all_test.cc +0 -51
  402. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_ex_test.cc +0 -81
  403. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test.py +0 -108
  404. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test_.cc +0 -100
  405. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link2_test.cc +0 -40
  406. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.cc +0 -40
  407. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.h +0 -669
  408. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test.py +0 -180
  409. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_.cc +0 -291
  410. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_golden.txt +0 -310
  411. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_stress_test.cc +0 -322
  412. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_test.cc +0 -220
  413. data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_test_utils.py +0 -112
  414. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CHANGES +0 -157
  415. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CMakeLists.txt +0 -286
  416. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CONTRIBUTORS +0 -37
  417. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/LICENSE +0 -28
  418. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/Makefile.am +0 -310
  419. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/README.md +0 -280
  420. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/cmake/internal_utils.cmake +0 -242
  421. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest.cbproj +0 -138
  422. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest.groupproj +0 -54
  423. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_all.cc +0 -38
  424. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_link.cc +0 -40
  425. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_main.cbproj +0 -82
  426. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_unittest.cbproj +0 -88
  427. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/configure.ac +0 -68
  428. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/AdvancedGuide.md +0 -2182
  429. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/DevGuide.md +0 -126
  430. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Documentation.md +0 -14
  431. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/FAQ.md +0 -1087
  432. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Primer.md +0 -502
  433. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/PumpManual.md +0 -177
  434. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Samples.md +0 -14
  435. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_AdvancedGuide.md +0 -2096
  436. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_Documentation.md +0 -12
  437. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_FAQ.md +0 -886
  438. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_Primer.md +0 -497
  439. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_PumpManual.md +0 -177
  440. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_XcodeGuide.md +0 -93
  441. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_AdvancedGuide.md +0 -2178
  442. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_Documentation.md +0 -14
  443. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_FAQ.md +0 -1038
  444. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_Primer.md +0 -501
  445. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_PumpManual.md +0 -177
  446. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_Samples.md +0 -14
  447. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_XcodeGuide.md +0 -93
  448. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_AdvancedGuide.md +0 -2181
  449. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_Documentation.md +0 -14
  450. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_FAQ.md +0 -1082
  451. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_Primer.md +0 -501
  452. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_PumpManual.md +0 -177
  453. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_Samples.md +0 -14
  454. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_XcodeGuide.md +0 -93
  455. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/XcodeGuide.md +0 -93
  456. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-death-test.h +0 -294
  457. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-message.h +0 -250
  458. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h +0 -1444
  459. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h.pump +0 -510
  460. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-printers.h +0 -993
  461. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-spi.h +0 -232
  462. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-test-part.h +0 -179
  463. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-typed-test.h +0 -263
  464. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest.h +0 -2236
  465. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_pred_impl.h +0 -358
  466. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_prod.h +0 -58
  467. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-port.h +0 -69
  468. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-printers.h +0 -42
  469. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest.h +0 -41
  470. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-death-test-internal.h +0 -319
  471. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-filepath.h +0 -206
  472. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-internal.h +0 -1238
  473. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-linked_ptr.h +0 -243
  474. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h +0 -5146
  475. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +0 -286
  476. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util.h +0 -731
  477. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port-arch.h +0 -93
  478. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port.h +0 -2554
  479. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-string.h +0 -167
  480. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h +0 -1020
  481. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h.pump +0 -347
  482. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h +0 -3331
  483. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h.pump +0 -297
  484. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/m4/acx_pthread.m4 +0 -363
  485. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/m4/gtest.m4 +0 -74
  486. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/make/Makefile +0 -82
  487. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest-md.sln +0 -45
  488. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest-md.vcproj +0 -126
  489. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest.sln +0 -45
  490. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest.vcproj +0 -126
  491. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_main-md.vcproj +0 -129
  492. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_main.vcproj +0 -129
  493. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_prod_test-md.vcproj +0 -164
  494. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_prod_test.vcproj +0 -164
  495. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_unittest-md.vcproj +0 -147
  496. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_unittest.vcproj +0 -147
  497. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/prime_tables.h +0 -123
  498. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1.cc +0 -68
  499. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1.h +0 -43
  500. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample10_unittest.cc +0 -144
  501. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1_unittest.cc +0 -153
  502. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2.cc +0 -56
  503. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2.h +0 -85
  504. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2_unittest.cc +0 -109
  505. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample3-inl.h +0 -172
  506. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample3_unittest.cc +0 -151
  507. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4.cc +0 -46
  508. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4.h +0 -53
  509. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4_unittest.cc +0 -45
  510. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample5_unittest.cc +0 -199
  511. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample6_unittest.cc +0 -224
  512. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample7_unittest.cc +0 -130
  513. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample8_unittest.cc +0 -173
  514. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample9_unittest.cc +0 -160
  515. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/common.py +0 -83
  516. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/fuse_gtest_files.py +0 -253
  517. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/gen_gtest_pred_impl.py +0 -730
  518. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/gtest-config.in +0 -274
  519. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/pump.py +0 -855
  520. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/release_docs.py +0 -158
  521. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/test/Makefile +0 -59
  522. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/upload.py +0 -1387
  523. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/upload_gtest.py +0 -78
  524. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-all.cc +0 -48
  525. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-death-test.cc +0 -1342
  526. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-filepath.cc +0 -387
  527. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-internal-inl.h +0 -1183
  528. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-port.cc +0 -1259
  529. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-printers.cc +0 -373
  530. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-test-part.cc +0 -110
  531. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-typed-test.cc +0 -118
  532. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest.cc +0 -5388
  533. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest_main.cc +0 -38
  534. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_ex_test.cc +0 -93
  535. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_test.cc +0 -1427
  536. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-filepath_test.cc +0 -662
  537. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-linked_ptr_test.cc +0 -154
  538. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-listener_test.cc +0 -311
  539. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-message_test.cc +0 -159
  540. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-options_test.cc +0 -215
  541. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test2_test.cc +0 -65
  542. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.cc +0 -1055
  543. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.h +0 -57
  544. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-port_test.cc +0 -1304
  545. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-printers_test.cc +0 -1635
  546. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-test-part_test.cc +0 -208
  547. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-tuple_test.cc +0 -320
  548. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test2_test.cc +0 -45
  549. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.cc +0 -380
  550. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.h +0 -66
  551. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-unittest-api_test.cc +0 -341
  552. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_all_test.cc +0 -47
  553. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest.py +0 -212
  554. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest_.cc +0 -88
  555. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test.py +0 -237
  556. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test_.cc +0 -311
  557. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test.py +0 -130
  558. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test_.cc +0 -71
  559. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test.py +0 -117
  560. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test_.cc +0 -126
  561. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_environment_test.cc +0 -192
  562. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest.py +0 -636
  563. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest_.cc +0 -140
  564. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test.py +0 -172
  565. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test_.cc +0 -46
  566. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest.py +0 -207
  567. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest_.cc +0 -157
  568. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_main_unittest.cc +0 -45
  569. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_no_test_unittest.cc +0 -56
  570. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test.py +0 -340
  571. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_.cc +0 -1062
  572. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_golden_lin.txt +0 -743
  573. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_pred_impl_unittest.cc +0 -2427
  574. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_premature_exit_test.cc +0 -127
  575. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_prod_test.cc +0 -57
  576. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_repeat_test.cc +0 -253
  577. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test.py +0 -325
  578. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test_.cc +0 -103
  579. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_sole_header_test.cc +0 -57
  580. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_stress_test.cc +0 -256
  581. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_test_utils.py +0 -320
  582. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_ex_test.cc +0 -92
  583. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test.py +0 -171
  584. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test_.cc +0 -72
  585. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test.py +0 -70
  586. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test_.cc +0 -43
  587. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_unittest.cc +0 -7706
  588. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile1_test_.cc +0 -49
  589. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile2_test_.cc +0 -49
  590. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfiles_test.py +0 -132
  591. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest.py +0 -308
  592. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest_.cc +0 -181
  593. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_test_utils.py +0 -194
  594. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/production.cc +0 -36
  595. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/production.h +0 -55
  596. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/DebugProject.xcconfig +0 -30
  597. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/FrameworkTarget.xcconfig +0 -17
  598. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/General.xcconfig +0 -41
  599. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/ReleaseProject.xcconfig +0 -32
  600. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/StaticLibraryTarget.xcconfig +0 -18
  601. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/TestTarget.xcconfig +0 -8
  602. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Resources/Info.plist +0 -30
  603. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/Info.plist +0 -28
  604. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj +0 -457
  605. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/runtests.sh +0 -62
  606. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.cc +0 -63
  607. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.h +0 -59
  608. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget_test.cc +0 -68
  609. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/runtests.sh +0 -65
  610. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/versiongenerate.py +0 -100
  611. data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/gtest.xcodeproj/project.pbxproj +0 -1135
  612. data/ext/rj_schema/rapidjson/thirdparty/gtest/travis.sh +0 -15
  613. data/ext/rj_schema/rapidjson/travis-doxygen.sh +0 -121
@@ -1,98 +0,0 @@
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 "unittest.h"
16
- #include "rapidjson/internal/dtoa.h"
17
-
18
- #ifdef __GNUC__
19
- RAPIDJSON_DIAG_PUSH
20
- RAPIDJSON_DIAG_OFF(type-limits)
21
- #endif
22
-
23
- using namespace rapidjson::internal;
24
-
25
- TEST(dtoa, normal) {
26
- char buffer[30];
27
-
28
- #define TEST_DTOA(d, a)\
29
- *dtoa(d, buffer) = '\0';\
30
- EXPECT_STREQ(a, buffer)
31
-
32
- TEST_DTOA(0.0, "0.0");
33
- TEST_DTOA(-0.0, "-0.0");
34
- TEST_DTOA(1.0, "1.0");
35
- TEST_DTOA(-1.0, "-1.0");
36
- TEST_DTOA(1.2345, "1.2345");
37
- TEST_DTOA(1.2345678, "1.2345678");
38
- TEST_DTOA(0.123456789012, "0.123456789012");
39
- TEST_DTOA(1234567.8, "1234567.8");
40
- TEST_DTOA(-79.39773355813419, "-79.39773355813419");
41
- TEST_DTOA(0.000001, "0.000001");
42
- TEST_DTOA(0.0000001, "1e-7");
43
- TEST_DTOA(1e30, "1e30");
44
- TEST_DTOA(1.234567890123456e30, "1.234567890123456e30");
45
- TEST_DTOA(5e-324, "5e-324"); // Min subnormal positive double
46
- TEST_DTOA(2.225073858507201e-308, "2.225073858507201e-308"); // Max subnormal positive double
47
- TEST_DTOA(2.2250738585072014e-308, "2.2250738585072014e-308"); // Min normal positive double
48
- TEST_DTOA(1.7976931348623157e308, "1.7976931348623157e308"); // Max double
49
-
50
- #undef TEST_DTOA
51
- }
52
-
53
- TEST(dtoa, maxDecimalPlaces) {
54
- char buffer[30];
55
-
56
- #define TEST_DTOA(m, d, a)\
57
- *dtoa(d, buffer, m) = '\0';\
58
- EXPECT_STREQ(a, buffer)
59
-
60
- TEST_DTOA(3, 0.0, "0.0");
61
- TEST_DTOA(1, 0.0, "0.0");
62
- TEST_DTOA(3, -0.0, "-0.0");
63
- TEST_DTOA(3, 1.0, "1.0");
64
- TEST_DTOA(3, -1.0, "-1.0");
65
- TEST_DTOA(3, 1.2345, "1.234");
66
- TEST_DTOA(2, 1.2345, "1.23");
67
- TEST_DTOA(1, 1.2345, "1.2");
68
- TEST_DTOA(3, 1.2345678, "1.234");
69
- TEST_DTOA(3, 1.0001, "1.0");
70
- TEST_DTOA(2, 1.0001, "1.0");
71
- TEST_DTOA(1, 1.0001, "1.0");
72
- TEST_DTOA(3, 0.123456789012, "0.123");
73
- TEST_DTOA(2, 0.123456789012, "0.12");
74
- TEST_DTOA(1, 0.123456789012, "0.1");
75
- TEST_DTOA(4, 0.0001, "0.0001");
76
- TEST_DTOA(3, 0.0001, "0.0");
77
- TEST_DTOA(2, 0.0001, "0.0");
78
- TEST_DTOA(1, 0.0001, "0.0");
79
- TEST_DTOA(3, 1234567.8, "1234567.8");
80
- TEST_DTOA(3, 1e30, "1e30");
81
- TEST_DTOA(3, 5e-324, "0.0"); // Min subnormal positive double
82
- TEST_DTOA(3, 2.225073858507201e-308, "0.0"); // Max subnormal positive double
83
- TEST_DTOA(3, 2.2250738585072014e-308, "0.0"); // Min normal positive double
84
- TEST_DTOA(3, 1.7976931348623157e308, "1.7976931348623157e308"); // Max double
85
- TEST_DTOA(5, -0.14000000000000001, "-0.14");
86
- TEST_DTOA(4, -0.14000000000000001, "-0.14");
87
- TEST_DTOA(3, -0.14000000000000001, "-0.14");
88
- TEST_DTOA(3, -0.10000000000000001, "-0.1");
89
- TEST_DTOA(2, -0.10000000000000001, "-0.1");
90
- TEST_DTOA(1, -0.10000000000000001, "-0.1");
91
-
92
- #undef TEST_DTOA
93
- }
94
-
95
-
96
- #ifdef __GNUC__
97
- RAPIDJSON_DIAG_POP
98
- #endif
@@ -1,313 +0,0 @@
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 "unittest.h"
16
- #include "rapidjson/filereadstream.h"
17
- #include "rapidjson/filewritestream.h"
18
- #include "rapidjson/encodedstream.h"
19
- #include "rapidjson/stringbuffer.h"
20
- #include "rapidjson/memorystream.h"
21
- #include "rapidjson/memorybuffer.h"
22
-
23
- using namespace rapidjson;
24
-
25
- class EncodedStreamTest : public ::testing::Test {
26
- public:
27
- EncodedStreamTest() : json_(), length_() {}
28
- virtual ~EncodedStreamTest();
29
-
30
- virtual void SetUp() {
31
- json_ = ReadFile("utf8.json", true, &length_);
32
- }
33
-
34
- virtual void TearDown() {
35
- free(json_);
36
- json_ = 0;
37
- }
38
-
39
- private:
40
- EncodedStreamTest(const EncodedStreamTest&);
41
- EncodedStreamTest& operator=(const EncodedStreamTest&);
42
-
43
- protected:
44
- static FILE* Open(const char* filename) {
45
- const char *paths[] = {
46
- "encodings",
47
- "bin/encodings",
48
- "../bin/encodings",
49
- "../../bin/encodings",
50
- "../../../bin/encodings"
51
- };
52
- char buffer[1024];
53
- for (size_t i = 0; i < sizeof(paths) / sizeof(paths[0]); i++) {
54
- sprintf(buffer, "%s/%s", paths[i], filename);
55
- FILE *fp = fopen(buffer, "rb");
56
- if (fp)
57
- return fp;
58
- }
59
- return 0;
60
- }
61
-
62
- static char *ReadFile(const char* filename, bool appendPath, size_t* outLength) {
63
- FILE *fp = appendPath ? Open(filename) : fopen(filename, "rb");
64
-
65
- if (!fp) {
66
- *outLength = 0;
67
- return 0;
68
- }
69
-
70
- fseek(fp, 0, SEEK_END);
71
- *outLength = static_cast<size_t>(ftell(fp));
72
- fseek(fp, 0, SEEK_SET);
73
- char* buffer = static_cast<char*>(malloc(*outLength + 1));
74
- size_t readLength = fread(buffer, 1, *outLength, fp);
75
- buffer[readLength] = '\0';
76
- fclose(fp);
77
- return buffer;
78
- }
79
-
80
- template <typename FileEncoding, typename MemoryEncoding>
81
- void TestEncodedInputStream(const char* filename) {
82
- // Test FileReadStream
83
- {
84
- char buffer[16];
85
- FILE *fp = Open(filename);
86
- ASSERT_TRUE(fp != 0);
87
- FileReadStream fs(fp, buffer, sizeof(buffer));
88
- EncodedInputStream<FileEncoding, FileReadStream> eis(fs);
89
- StringStream s(json_);
90
-
91
- while (eis.Peek() != '\0') {
92
- unsigned expected, actual;
93
- EXPECT_TRUE(UTF8<>::Decode(s, &expected));
94
- EXPECT_TRUE(MemoryEncoding::Decode(eis, &actual));
95
- EXPECT_EQ(expected, actual);
96
- }
97
- EXPECT_EQ('\0', s.Peek());
98
- fclose(fp);
99
- }
100
-
101
- // Test MemoryStream
102
- {
103
- size_t size;
104
- char* data = ReadFile(filename, true, &size);
105
- MemoryStream ms(data, size);
106
- EncodedInputStream<FileEncoding, MemoryStream> eis(ms);
107
- StringStream s(json_);
108
-
109
- while (eis.Peek() != '\0') {
110
- unsigned expected, actual;
111
- EXPECT_TRUE(UTF8<>::Decode(s, &expected));
112
- EXPECT_TRUE(MemoryEncoding::Decode(eis, &actual));
113
- EXPECT_EQ(expected, actual);
114
- }
115
- EXPECT_EQ('\0', s.Peek());
116
- free(data);
117
- EXPECT_EQ(size, eis.Tell());
118
- }
119
- }
120
-
121
- void TestAutoUTFInputStream(const char *filename, bool expectHasBOM) {
122
- // Test FileReadStream
123
- {
124
- char buffer[16];
125
- FILE *fp = Open(filename);
126
- ASSERT_TRUE(fp != 0);
127
- FileReadStream fs(fp, buffer, sizeof(buffer));
128
- AutoUTFInputStream<unsigned, FileReadStream> eis(fs);
129
- EXPECT_EQ(expectHasBOM, eis.HasBOM());
130
- StringStream s(json_);
131
- while (eis.Peek() != '\0') {
132
- unsigned expected, actual;
133
- EXPECT_TRUE(UTF8<>::Decode(s, &expected));
134
- EXPECT_TRUE(AutoUTF<unsigned>::Decode(eis, &actual));
135
- EXPECT_EQ(expected, actual);
136
- }
137
- EXPECT_EQ('\0', s.Peek());
138
- fclose(fp);
139
- }
140
-
141
- // Test MemoryStream
142
- {
143
- size_t size;
144
- char* data = ReadFile(filename, true, &size);
145
- MemoryStream ms(data, size);
146
- AutoUTFInputStream<unsigned, MemoryStream> eis(ms);
147
- EXPECT_EQ(expectHasBOM, eis.HasBOM());
148
- StringStream s(json_);
149
-
150
- while (eis.Peek() != '\0') {
151
- unsigned expected, actual;
152
- EXPECT_TRUE(UTF8<>::Decode(s, &expected));
153
- EXPECT_TRUE(AutoUTF<unsigned>::Decode(eis, &actual));
154
- EXPECT_EQ(expected, actual);
155
- }
156
- EXPECT_EQ('\0', s.Peek());
157
- free(data);
158
- EXPECT_EQ(size, eis.Tell());
159
- }
160
- }
161
-
162
- template <typename FileEncoding, typename MemoryEncoding>
163
- void TestEncodedOutputStream(const char* expectedFilename, bool putBOM) {
164
- // Test FileWriteStream
165
- {
166
- char filename[L_tmpnam];
167
- FILE* fp = TempFile(filename);
168
- char buffer[16];
169
- FileWriteStream os(fp, buffer, sizeof(buffer));
170
- EncodedOutputStream<FileEncoding, FileWriteStream> eos(os, putBOM);
171
- StringStream s(json_);
172
- while (s.Peek() != '\0') {
173
- bool success = Transcoder<UTF8<>, MemoryEncoding>::Transcode(s, eos);
174
- EXPECT_TRUE(success);
175
- }
176
- eos.Flush();
177
- fclose(fp);
178
- EXPECT_TRUE(CompareFile(filename, expectedFilename));
179
- remove(filename);
180
- }
181
-
182
- // Test MemoryBuffer
183
- {
184
- MemoryBuffer mb;
185
- EncodedOutputStream<FileEncoding, MemoryBuffer> eos(mb, putBOM);
186
- StringStream s(json_);
187
- while (s.Peek() != '\0') {
188
- bool success = Transcoder<UTF8<>, MemoryEncoding>::Transcode(s, eos);
189
- EXPECT_TRUE(success);
190
- }
191
- eos.Flush();
192
- EXPECT_TRUE(CompareBufferFile(mb.GetBuffer(), mb.GetSize(), expectedFilename));
193
- }
194
- }
195
-
196
- void TestAutoUTFOutputStream(UTFType type, bool putBOM, const char *expectedFilename) {
197
- // Test FileWriteStream
198
- {
199
- char filename[L_tmpnam];
200
- FILE* fp = TempFile(filename);
201
-
202
- char buffer[16];
203
- FileWriteStream os(fp, buffer, sizeof(buffer));
204
- AutoUTFOutputStream<unsigned, FileWriteStream> eos(os, type, putBOM);
205
- StringStream s(json_);
206
- while (s.Peek() != '\0') {
207
- bool success = Transcoder<UTF8<>, AutoUTF<unsigned> >::Transcode(s, eos);
208
- EXPECT_TRUE(success);
209
- }
210
- eos.Flush();
211
- fclose(fp);
212
- EXPECT_TRUE(CompareFile(filename, expectedFilename));
213
- remove(filename);
214
- }
215
-
216
- // Test MemoryBuffer
217
- {
218
- MemoryBuffer mb;
219
- AutoUTFOutputStream<unsigned, MemoryBuffer> eos(mb, type, putBOM);
220
- StringStream s(json_);
221
- while (s.Peek() != '\0') {
222
- bool success = Transcoder<UTF8<>, AutoUTF<unsigned> >::Transcode(s, eos);
223
- EXPECT_TRUE(success);
224
- }
225
- eos.Flush();
226
- EXPECT_TRUE(CompareBufferFile(mb.GetBuffer(), mb.GetSize(), expectedFilename));
227
- }
228
- }
229
-
230
- bool CompareFile(const char* filename, const char* expectedFilename) {
231
- size_t actualLength, expectedLength;
232
- char* actualBuffer = ReadFile(filename, false, &actualLength);
233
- char* expectedBuffer = ReadFile(expectedFilename, true, &expectedLength);
234
- bool ret = (expectedLength == actualLength) && memcmp(expectedBuffer, actualBuffer, actualLength) == 0;
235
- free(actualBuffer);
236
- free(expectedBuffer);
237
- return ret;
238
- }
239
-
240
- bool CompareBufferFile(const char* actualBuffer, size_t actualLength, const char* expectedFilename) {
241
- size_t expectedLength;
242
- char* expectedBuffer = ReadFile(expectedFilename, true, &expectedLength);
243
- bool ret = (expectedLength == actualLength) && memcmp(expectedBuffer, actualBuffer, actualLength) == 0;
244
- free(expectedBuffer);
245
- return ret;
246
- }
247
-
248
- char *json_;
249
- size_t length_;
250
- };
251
-
252
- EncodedStreamTest::~EncodedStreamTest() {}
253
-
254
- TEST_F(EncodedStreamTest, EncodedInputStream) {
255
- TestEncodedInputStream<UTF8<>, UTF8<> >("utf8.json");
256
- TestEncodedInputStream<UTF8<>, UTF8<> >("utf8bom.json");
257
- TestEncodedInputStream<UTF16LE<>, UTF16<> >("utf16le.json");
258
- TestEncodedInputStream<UTF16LE<>, UTF16<> >("utf16lebom.json");
259
- TestEncodedInputStream<UTF16BE<>, UTF16<> >("utf16be.json");
260
- TestEncodedInputStream<UTF16BE<>, UTF16<> >("utf16bebom.json");
261
- TestEncodedInputStream<UTF32LE<>, UTF32<> >("utf32le.json");
262
- TestEncodedInputStream<UTF32LE<>, UTF32<> >("utf32lebom.json");
263
- TestEncodedInputStream<UTF32BE<>, UTF32<> >("utf32be.json");
264
- TestEncodedInputStream<UTF32BE<>, UTF32<> >("utf32bebom.json");
265
- }
266
-
267
- TEST_F(EncodedStreamTest, AutoUTFInputStream) {
268
- TestAutoUTFInputStream("utf8.json", false);
269
- TestAutoUTFInputStream("utf8bom.json", true);
270
- TestAutoUTFInputStream("utf16le.json", false);
271
- TestAutoUTFInputStream("utf16lebom.json",true);
272
- TestAutoUTFInputStream("utf16be.json", false);
273
- TestAutoUTFInputStream("utf16bebom.json",true);
274
- TestAutoUTFInputStream("utf32le.json", false);
275
- TestAutoUTFInputStream("utf32lebom.json",true);
276
- TestAutoUTFInputStream("utf32be.json", false);
277
- TestAutoUTFInputStream("utf32bebom.json", true);
278
-
279
- {
280
- // Auto detection fail, use user defined UTF type
281
- const char json[] = "{ }";
282
- MemoryStream ms(json, sizeof(json));
283
- AutoUTFInputStream<unsigned, MemoryStream> eis(ms, kUTF8);
284
- EXPECT_FALSE(eis.HasBOM());
285
- EXPECT_EQ(kUTF8, eis.GetType());
286
- }
287
- }
288
-
289
- TEST_F(EncodedStreamTest, EncodedOutputStream) {
290
- TestEncodedOutputStream<UTF8<>, UTF8<> >("utf8.json", false);
291
- TestEncodedOutputStream<UTF8<>, UTF8<> >("utf8bom.json", true);
292
- TestEncodedOutputStream<UTF16LE<>, UTF16<> >("utf16le.json", false);
293
- TestEncodedOutputStream<UTF16LE<>, UTF16<> >("utf16lebom.json",true);
294
- TestEncodedOutputStream<UTF16BE<>, UTF16<> >("utf16be.json", false);
295
- TestEncodedOutputStream<UTF16BE<>, UTF16<> >("utf16bebom.json",true);
296
- TestEncodedOutputStream<UTF32LE<>, UTF32<> >("utf32le.json", false);
297
- TestEncodedOutputStream<UTF32LE<>, UTF32<> >("utf32lebom.json",true);
298
- TestEncodedOutputStream<UTF32BE<>, UTF32<> >("utf32be.json", false);
299
- TestEncodedOutputStream<UTF32BE<>, UTF32<> >("utf32bebom.json",true);
300
- }
301
-
302
- TEST_F(EncodedStreamTest, AutoUTFOutputStream) {
303
- TestAutoUTFOutputStream(kUTF8, false, "utf8.json");
304
- TestAutoUTFOutputStream(kUTF8, true, "utf8bom.json");
305
- TestAutoUTFOutputStream(kUTF16LE, false, "utf16le.json");
306
- TestAutoUTFOutputStream(kUTF16LE, true, "utf16lebom.json");
307
- TestAutoUTFOutputStream(kUTF16BE, false, "utf16be.json");
308
- TestAutoUTFOutputStream(kUTF16BE, true, "utf16bebom.json");
309
- TestAutoUTFOutputStream(kUTF32LE, false, "utf32le.json");
310
- TestAutoUTFOutputStream(kUTF32LE, true, "utf32lebom.json");
311
- TestAutoUTFOutputStream(kUTF32BE, false, "utf32be.json");
312
- TestAutoUTFOutputStream(kUTF32BE, true, "utf32bebom.json");
313
- }
@@ -1,451 +0,0 @@
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 "unittest.h"
16
- #include "rapidjson/filereadstream.h"
17
- #include "rapidjson/filewritestream.h"
18
- #include "rapidjson/encodedstream.h"
19
- #include "rapidjson/stringbuffer.h"
20
-
21
- using namespace rapidjson;
22
-
23
- // Verification of encoders/decoders with Hoehrmann's UTF8 decoder
24
-
25
- // http://www.unicode.org/Public/UNIDATA/Blocks.txt
26
- static const unsigned kCodepointRanges[] = {
27
- 0x0000, 0x007F, // Basic Latin
28
- 0x0080, 0x00FF, // Latin-1 Supplement
29
- 0x0100, 0x017F, // Latin Extended-A
30
- 0x0180, 0x024F, // Latin Extended-B
31
- 0x0250, 0x02AF, // IPA Extensions
32
- 0x02B0, 0x02FF, // Spacing Modifier Letters
33
- 0x0300, 0x036F, // Combining Diacritical Marks
34
- 0x0370, 0x03FF, // Greek and Coptic
35
- 0x0400, 0x04FF, // Cyrillic
36
- 0x0500, 0x052F, // Cyrillic Supplement
37
- 0x0530, 0x058F, // Armenian
38
- 0x0590, 0x05FF, // Hebrew
39
- 0x0600, 0x06FF, // Arabic
40
- 0x0700, 0x074F, // Syriac
41
- 0x0750, 0x077F, // Arabic Supplement
42
- 0x0780, 0x07BF, // Thaana
43
- 0x07C0, 0x07FF, // NKo
44
- 0x0800, 0x083F, // Samaritan
45
- 0x0840, 0x085F, // Mandaic
46
- 0x0900, 0x097F, // Devanagari
47
- 0x0980, 0x09FF, // Bengali
48
- 0x0A00, 0x0A7F, // Gurmukhi
49
- 0x0A80, 0x0AFF, // Gujarati
50
- 0x0B00, 0x0B7F, // Oriya
51
- 0x0B80, 0x0BFF, // Tamil
52
- 0x0C00, 0x0C7F, // Telugu
53
- 0x0C80, 0x0CFF, // Kannada
54
- 0x0D00, 0x0D7F, // Malayalam
55
- 0x0D80, 0x0DFF, // Sinhala
56
- 0x0E00, 0x0E7F, // Thai
57
- 0x0E80, 0x0EFF, // Lao
58
- 0x0F00, 0x0FFF, // Tibetan
59
- 0x1000, 0x109F, // Myanmar
60
- 0x10A0, 0x10FF, // Georgian
61
- 0x1100, 0x11FF, // Hangul Jamo
62
- 0x1200, 0x137F, // Ethiopic
63
- 0x1380, 0x139F, // Ethiopic Supplement
64
- 0x13A0, 0x13FF, // Cherokee
65
- 0x1400, 0x167F, // Unified Canadian Aboriginal Syllabics
66
- 0x1680, 0x169F, // Ogham
67
- 0x16A0, 0x16FF, // Runic
68
- 0x1700, 0x171F, // Tagalog
69
- 0x1720, 0x173F, // Hanunoo
70
- 0x1740, 0x175F, // Buhid
71
- 0x1760, 0x177F, // Tagbanwa
72
- 0x1780, 0x17FF, // Khmer
73
- 0x1800, 0x18AF, // Mongolian
74
- 0x18B0, 0x18FF, // Unified Canadian Aboriginal Syllabics Extended
75
- 0x1900, 0x194F, // Limbu
76
- 0x1950, 0x197F, // Tai Le
77
- 0x1980, 0x19DF, // New Tai Lue
78
- 0x19E0, 0x19FF, // Khmer Symbols
79
- 0x1A00, 0x1A1F, // Buginese
80
- 0x1A20, 0x1AAF, // Tai Tham
81
- 0x1B00, 0x1B7F, // Balinese
82
- 0x1B80, 0x1BBF, // Sundanese
83
- 0x1BC0, 0x1BFF, // Batak
84
- 0x1C00, 0x1C4F, // Lepcha
85
- 0x1C50, 0x1C7F, // Ol Chiki
86
- 0x1CD0, 0x1CFF, // Vedic Extensions
87
- 0x1D00, 0x1D7F, // Phonetic Extensions
88
- 0x1D80, 0x1DBF, // Phonetic Extensions Supplement
89
- 0x1DC0, 0x1DFF, // Combining Diacritical Marks Supplement
90
- 0x1E00, 0x1EFF, // Latin Extended Additional
91
- 0x1F00, 0x1FFF, // Greek Extended
92
- 0x2000, 0x206F, // General Punctuation
93
- 0x2070, 0x209F, // Superscripts and Subscripts
94
- 0x20A0, 0x20CF, // Currency Symbols
95
- 0x20D0, 0x20FF, // Combining Diacritical Marks for Symbols
96
- 0x2100, 0x214F, // Letterlike Symbols
97
- 0x2150, 0x218F, // Number Forms
98
- 0x2190, 0x21FF, // Arrows
99
- 0x2200, 0x22FF, // Mathematical Operators
100
- 0x2300, 0x23FF, // Miscellaneous Technical
101
- 0x2400, 0x243F, // Control Pictures
102
- 0x2440, 0x245F, // Optical Character Recognition
103
- 0x2460, 0x24FF, // Enclosed Alphanumerics
104
- 0x2500, 0x257F, // Box Drawing
105
- 0x2580, 0x259F, // Block Elements
106
- 0x25A0, 0x25FF, // Geometric Shapes
107
- 0x2600, 0x26FF, // Miscellaneous Symbols
108
- 0x2700, 0x27BF, // Dingbats
109
- 0x27C0, 0x27EF, // Miscellaneous Mathematical Symbols-A
110
- 0x27F0, 0x27FF, // Supplemental Arrows-A
111
- 0x2800, 0x28FF, // Braille Patterns
112
- 0x2900, 0x297F, // Supplemental Arrows-B
113
- 0x2980, 0x29FF, // Miscellaneous Mathematical Symbols-B
114
- 0x2A00, 0x2AFF, // Supplemental Mathematical Operators
115
- 0x2B00, 0x2BFF, // Miscellaneous Symbols and Arrows
116
- 0x2C00, 0x2C5F, // Glagolitic
117
- 0x2C60, 0x2C7F, // Latin Extended-C
118
- 0x2C80, 0x2CFF, // Coptic
119
- 0x2D00, 0x2D2F, // Georgian Supplement
120
- 0x2D30, 0x2D7F, // Tifinagh
121
- 0x2D80, 0x2DDF, // Ethiopic Extended
122
- 0x2DE0, 0x2DFF, // Cyrillic Extended-A
123
- 0x2E00, 0x2E7F, // Supplemental Punctuation
124
- 0x2E80, 0x2EFF, // CJK Radicals Supplement
125
- 0x2F00, 0x2FDF, // Kangxi Radicals
126
- 0x2FF0, 0x2FFF, // Ideographic Description Characters
127
- 0x3000, 0x303F, // CJK Symbols and Punctuation
128
- 0x3040, 0x309F, // Hiragana
129
- 0x30A0, 0x30FF, // Katakana
130
- 0x3100, 0x312F, // Bopomofo
131
- 0x3130, 0x318F, // Hangul Compatibility Jamo
132
- 0x3190, 0x319F, // Kanbun
133
- 0x31A0, 0x31BF, // Bopomofo Extended
134
- 0x31C0, 0x31EF, // CJK Strokes
135
- 0x31F0, 0x31FF, // Katakana Phonetic Extensions
136
- 0x3200, 0x32FF, // Enclosed CJK Letters and Months
137
- 0x3300, 0x33FF, // CJK Compatibility
138
- 0x3400, 0x4DBF, // CJK Unified Ideographs Extension A
139
- 0x4DC0, 0x4DFF, // Yijing Hexagram Symbols
140
- 0x4E00, 0x9FFF, // CJK Unified Ideographs
141
- 0xA000, 0xA48F, // Yi Syllables
142
- 0xA490, 0xA4CF, // Yi Radicals
143
- 0xA4D0, 0xA4FF, // Lisu
144
- 0xA500, 0xA63F, // Vai
145
- 0xA640, 0xA69F, // Cyrillic Extended-B
146
- 0xA6A0, 0xA6FF, // Bamum
147
- 0xA700, 0xA71F, // Modifier Tone Letters
148
- 0xA720, 0xA7FF, // Latin Extended-D
149
- 0xA800, 0xA82F, // Syloti Nagri
150
- 0xA830, 0xA83F, // Common Indic Number Forms
151
- 0xA840, 0xA87F, // Phags-pa
152
- 0xA880, 0xA8DF, // Saurashtra
153
- 0xA8E0, 0xA8FF, // Devanagari Extended
154
- 0xA900, 0xA92F, // Kayah Li
155
- 0xA930, 0xA95F, // Rejang
156
- 0xA960, 0xA97F, // Hangul Jamo Extended-A
157
- 0xA980, 0xA9DF, // Javanese
158
- 0xAA00, 0xAA5F, // Cham
159
- 0xAA60, 0xAA7F, // Myanmar Extended-A
160
- 0xAA80, 0xAADF, // Tai Viet
161
- 0xAB00, 0xAB2F, // Ethiopic Extended-A
162
- 0xABC0, 0xABFF, // Meetei Mayek
163
- 0xAC00, 0xD7AF, // Hangul Syllables
164
- 0xD7B0, 0xD7FF, // Hangul Jamo Extended-B
165
- //0xD800, 0xDB7F, // High Surrogates
166
- //0xDB80, 0xDBFF, // High Private Use Surrogates
167
- //0xDC00, 0xDFFF, // Low Surrogates
168
- 0xE000, 0xF8FF, // Private Use Area
169
- 0xF900, 0xFAFF, // CJK Compatibility Ideographs
170
- 0xFB00, 0xFB4F, // Alphabetic Presentation Forms
171
- 0xFB50, 0xFDFF, // Arabic Presentation Forms-A
172
- 0xFE00, 0xFE0F, // Variation Selectors
173
- 0xFE10, 0xFE1F, // Vertical Forms
174
- 0xFE20, 0xFE2F, // Combining Half Marks
175
- 0xFE30, 0xFE4F, // CJK Compatibility Forms
176
- 0xFE50, 0xFE6F, // Small Form Variants
177
- 0xFE70, 0xFEFF, // Arabic Presentation Forms-B
178
- 0xFF00, 0xFFEF, // Halfwidth and Fullwidth Forms
179
- 0xFFF0, 0xFFFF, // Specials
180
- 0x10000, 0x1007F, // Linear B Syllabary
181
- 0x10080, 0x100FF, // Linear B Ideograms
182
- 0x10100, 0x1013F, // Aegean Numbers
183
- 0x10140, 0x1018F, // Ancient Greek Numbers
184
- 0x10190, 0x101CF, // Ancient Symbols
185
- 0x101D0, 0x101FF, // Phaistos Disc
186
- 0x10280, 0x1029F, // Lycian
187
- 0x102A0, 0x102DF, // Carian
188
- 0x10300, 0x1032F, // Old Italic
189
- 0x10330, 0x1034F, // Gothic
190
- 0x10380, 0x1039F, // Ugaritic
191
- 0x103A0, 0x103DF, // Old Persian
192
- 0x10400, 0x1044F, // Deseret
193
- 0x10450, 0x1047F, // Shavian
194
- 0x10480, 0x104AF, // Osmanya
195
- 0x10800, 0x1083F, // Cypriot Syllabary
196
- 0x10840, 0x1085F, // Imperial Aramaic
197
- 0x10900, 0x1091F, // Phoenician
198
- 0x10920, 0x1093F, // Lydian
199
- 0x10A00, 0x10A5F, // Kharoshthi
200
- 0x10A60, 0x10A7F, // Old South Arabian
201
- 0x10B00, 0x10B3F, // Avestan
202
- 0x10B40, 0x10B5F, // Inscriptional Parthian
203
- 0x10B60, 0x10B7F, // Inscriptional Pahlavi
204
- 0x10C00, 0x10C4F, // Old Turkic
205
- 0x10E60, 0x10E7F, // Rumi Numeral Symbols
206
- 0x11000, 0x1107F, // Brahmi
207
- 0x11080, 0x110CF, // Kaithi
208
- 0x12000, 0x123FF, // Cuneiform
209
- 0x12400, 0x1247F, // Cuneiform Numbers and Punctuation
210
- 0x13000, 0x1342F, // Egyptian Hieroglyphs
211
- 0x16800, 0x16A3F, // Bamum Supplement
212
- 0x1B000, 0x1B0FF, // Kana Supplement
213
- 0x1D000, 0x1D0FF, // Byzantine Musical Symbols
214
- 0x1D100, 0x1D1FF, // Musical Symbols
215
- 0x1D200, 0x1D24F, // Ancient Greek Musical Notation
216
- 0x1D300, 0x1D35F, // Tai Xuan Jing Symbols
217
- 0x1D360, 0x1D37F, // Counting Rod Numerals
218
- 0x1D400, 0x1D7FF, // Mathematical Alphanumeric Symbols
219
- 0x1F000, 0x1F02F, // Mahjong Tiles
220
- 0x1F030, 0x1F09F, // Domino Tiles
221
- 0x1F0A0, 0x1F0FF, // Playing Cards
222
- 0x1F100, 0x1F1FF, // Enclosed Alphanumeric Supplement
223
- 0x1F200, 0x1F2FF, // Enclosed Ideographic Supplement
224
- 0x1F300, 0x1F5FF, // Miscellaneous Symbols And Pictographs
225
- 0x1F600, 0x1F64F, // Emoticons
226
- 0x1F680, 0x1F6FF, // Transport And Map Symbols
227
- 0x1F700, 0x1F77F, // Alchemical Symbols
228
- 0x20000, 0x2A6DF, // CJK Unified Ideographs Extension B
229
- 0x2A700, 0x2B73F, // CJK Unified Ideographs Extension C
230
- 0x2B740, 0x2B81F, // CJK Unified Ideographs Extension D
231
- 0x2F800, 0x2FA1F, // CJK Compatibility Ideographs Supplement
232
- 0xE0000, 0xE007F, // Tags
233
- 0xE0100, 0xE01EF, // Variation Selectors Supplement
234
- 0xF0000, 0xFFFFF, // Supplementary Private Use Area-A
235
- 0x100000, 0x10FFFF, // Supplementary Private Use Area-B
236
- 0xFFFFFFFF
237
- };
238
-
239
- // Copyright (c) 2008-2010 Bjoern Hoehrmann <bjoern@hoehrmann.de>
240
- // See http://bjoern.hoehrmann.de/utf-8/decoder/dfa/ for details.
241
-
242
- #define UTF8_ACCEPT 0u
243
-
244
- static const unsigned char utf8d[] = {
245
- // The first part of the table maps bytes to character classes that
246
- // to reduce the size of the transition table and create bitmasks.
247
- 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,
248
- 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,
249
- 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,
250
- 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,
251
- 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,
252
- 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,
253
- 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,
254
- 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,
255
-
256
- // The second part is a transition table that maps a combination
257
- // of a state of the automaton and a character class to a state.
258
- 0,12,24,36,60,96,84,12,12,12,48,72, 12,12,12,12,12,12,12,12,12,12,12,12,
259
- 12, 0,12,12,12,12,12, 0,12, 0,12,12, 12,24,12,12,12,12,12,24,12,24,12,12,
260
- 12,12,12,12,12,12,12,24,12,12,12,12, 12,24,12,12,12,12,12,12,12,24,12,12,
261
- 12,12,12,12,12,12,12,36,12,36,12,12, 12,36,12,12,12,12,12,36,12,36,12,12,
262
- 12,36,12,12,12,12,12,12,12,12,12,12,
263
- };
264
-
265
- static unsigned inline decode(unsigned* state, unsigned* codep, unsigned byte) {
266
- unsigned type = utf8d[byte];
267
-
268
- *codep = (*state != UTF8_ACCEPT) ?
269
- (byte & 0x3fu) | (*codep << 6) :
270
- (0xffu >> type) & (byte);
271
-
272
- *state = utf8d[256 + *state + type];
273
- return *state;
274
- }
275
-
276
- //static bool IsUTF8(unsigned char* s) {
277
- // unsigned codepoint, state = 0;
278
- //
279
- // while (*s)
280
- // decode(&state, &codepoint, *s++);
281
- //
282
- // return state == UTF8_ACCEPT;
283
- //}
284
-
285
- TEST(EncodingsTest, UTF8) {
286
- StringBuffer os, os2;
287
- for (const unsigned* range = kCodepointRanges; *range != 0xFFFFFFFF; range += 2) {
288
- for (unsigned codepoint = range[0]; codepoint <= range[1]; ++codepoint) {
289
- os.Clear();
290
- UTF8<>::Encode(os, codepoint);
291
- const char* encodedStr = os.GetString();
292
-
293
- // Decode with Hoehrmann
294
- {
295
- unsigned decodedCodepoint = 0;
296
- unsigned state = 0;
297
-
298
- unsigned decodedCount = 0;
299
- for (const char* s = encodedStr; *s; ++s)
300
- if (!decode(&state, &decodedCodepoint, static_cast<unsigned char>(*s))) {
301
- EXPECT_EQ(codepoint, decodedCodepoint);
302
- decodedCount++;
303
- }
304
-
305
- if (*encodedStr) { // This decoder cannot handle U+0000
306
- EXPECT_EQ(1u, decodedCount); // Should only contain one code point
307
- }
308
-
309
- EXPECT_EQ(UTF8_ACCEPT, state);
310
- if (UTF8_ACCEPT != state)
311
- std::cout << std::hex << codepoint << " " << decodedCodepoint << std::endl;
312
- }
313
-
314
- // Decode
315
- {
316
- StringStream is(encodedStr);
317
- unsigned decodedCodepoint;
318
- bool result = UTF8<>::Decode(is, &decodedCodepoint);
319
- EXPECT_TRUE(result);
320
- EXPECT_EQ(codepoint, decodedCodepoint);
321
- if (!result || codepoint != decodedCodepoint)
322
- std::cout << std::hex << codepoint << " " << decodedCodepoint << std::endl;
323
- }
324
-
325
- // Validate
326
- {
327
- StringStream is(encodedStr);
328
- os2.Clear();
329
- bool result = UTF8<>::Validate(is, os2);
330
- EXPECT_TRUE(result);
331
- EXPECT_EQ(0, StrCmp(encodedStr, os2.GetString()));
332
- }
333
- }
334
- }
335
- }
336
-
337
- TEST(EncodingsTest, UTF16) {
338
- GenericStringBuffer<UTF16<> > os, os2;
339
- GenericStringBuffer<UTF8<> > utf8os;
340
- for (const unsigned* range = kCodepointRanges; *range != 0xFFFFFFFF; range += 2) {
341
- for (unsigned codepoint = range[0]; codepoint <= range[1]; ++codepoint) {
342
- os.Clear();
343
- UTF16<>::Encode(os, codepoint);
344
- const UTF16<>::Ch* encodedStr = os.GetString();
345
-
346
- // Encode with Hoehrmann's code
347
- if (codepoint != 0) // cannot handle U+0000
348
- {
349
- // encode with UTF8<> first
350
- utf8os.Clear();
351
- UTF8<>::Encode(utf8os, codepoint);
352
-
353
- // transcode from UTF8 to UTF16 with Hoehrmann's code
354
- unsigned decodedCodepoint = 0;
355
- unsigned state = 0;
356
- UTF16<>::Ch buffer[3], *p = &buffer[0];
357
- for (const char* s = utf8os.GetString(); *s; ++s) {
358
- if (!decode(&state, &decodedCodepoint, static_cast<unsigned char>(*s)))
359
- break;
360
- }
361
-
362
- if (codepoint <= 0xFFFF)
363
- *p++ = static_cast<UTF16<>::Ch>(decodedCodepoint);
364
- else {
365
- // Encode code points above U+FFFF as surrogate pair.
366
- *p++ = static_cast<UTF16<>::Ch>(0xD7C0 + (decodedCodepoint >> 10));
367
- *p++ = static_cast<UTF16<>::Ch>(0xDC00 + (decodedCodepoint & 0x3FF));
368
- }
369
- *p++ = '\0';
370
-
371
- EXPECT_EQ(0, StrCmp(buffer, encodedStr));
372
- }
373
-
374
- // Decode
375
- {
376
- GenericStringStream<UTF16<> > is(encodedStr);
377
- unsigned decodedCodepoint;
378
- bool result = UTF16<>::Decode(is, &decodedCodepoint);
379
- EXPECT_TRUE(result);
380
- EXPECT_EQ(codepoint, decodedCodepoint);
381
- if (!result || codepoint != decodedCodepoint)
382
- std::cout << std::hex << codepoint << " " << decodedCodepoint << std::endl;
383
- }
384
-
385
- // Validate
386
- {
387
- GenericStringStream<UTF16<> > is(encodedStr);
388
- os2.Clear();
389
- bool result = UTF16<>::Validate(is, os2);
390
- EXPECT_TRUE(result);
391
- EXPECT_EQ(0, StrCmp(encodedStr, os2.GetString()));
392
- }
393
- }
394
- }
395
- }
396
-
397
- TEST(EncodingsTest, UTF32) {
398
- GenericStringBuffer<UTF32<> > os, os2;
399
- for (const unsigned* range = kCodepointRanges; *range != 0xFFFFFFFF; range += 2) {
400
- for (unsigned codepoint = range[0]; codepoint <= range[1]; ++codepoint) {
401
- os.Clear();
402
- UTF32<>::Encode(os, codepoint);
403
- const UTF32<>::Ch* encodedStr = os.GetString();
404
-
405
- // Decode
406
- {
407
- GenericStringStream<UTF32<> > is(encodedStr);
408
- unsigned decodedCodepoint;
409
- bool result = UTF32<>::Decode(is, &decodedCodepoint);
410
- EXPECT_TRUE(result);
411
- EXPECT_EQ(codepoint, decodedCodepoint);
412
- if (!result || codepoint != decodedCodepoint)
413
- std::cout << std::hex << codepoint << " " << decodedCodepoint << std::endl;
414
- }
415
-
416
- // Validate
417
- {
418
- GenericStringStream<UTF32<> > is(encodedStr);
419
- os2.Clear();
420
- bool result = UTF32<>::Validate(is, os2);
421
- EXPECT_TRUE(result);
422
- EXPECT_EQ(0, StrCmp(encodedStr, os2.GetString()));
423
- }
424
- }
425
- }
426
- }
427
-
428
- TEST(EncodingsTest, ASCII) {
429
- StringBuffer os, os2;
430
- for (unsigned codepoint = 0; codepoint < 128; codepoint++) {
431
- os.Clear();
432
- ASCII<>::Encode(os, codepoint);
433
- const ASCII<>::Ch* encodedStr = os.GetString();
434
- {
435
- StringStream is(encodedStr);
436
- unsigned decodedCodepoint;
437
- bool result = ASCII<>::Decode(is, &decodedCodepoint);
438
- if (!result || codepoint != decodedCodepoint)
439
- std::cout << std::hex << codepoint << " " << decodedCodepoint << std::endl;
440
- }
441
-
442
- // Validate
443
- {
444
- StringStream is(encodedStr);
445
- os2.Clear();
446
- bool result = ASCII<>::Validate(is, os2);
447
- EXPECT_TRUE(result);
448
- EXPECT_EQ(0, StrCmp(encodedStr, os2.GetString()));
449
- }
450
- }
451
- }