koffi 2.3.6-beta.6 → 2.3.7

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 (276) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/package.json +2 -2
  3. package/src/cnoke/cnoke.js +3 -7
  4. package/src/cnoke/src/builder.js +9 -6
  5. package/src/cnoke/src/index.js +2 -2
  6. package/src/koffi/build/2.3.7/koffi_darwin_arm64/koffi.node +0 -0
  7. package/src/koffi/build/2.3.7/koffi_darwin_x64/koffi.node +0 -0
  8. package/src/koffi/build/2.3.7/koffi_freebsd_arm64/koffi.node +0 -0
  9. package/src/koffi/build/2.3.7/koffi_freebsd_ia32/koffi.node +0 -0
  10. package/src/koffi/build/2.3.7/koffi_freebsd_x64/koffi.node +0 -0
  11. package/src/koffi/build/2.3.7/koffi_linux_arm32hf/koffi.node +0 -0
  12. package/src/koffi/build/2.3.7/koffi_linux_arm64/koffi.node +0 -0
  13. package/src/koffi/build/2.3.7/koffi_linux_ia32/koffi.node +0 -0
  14. package/src/koffi/build/2.3.7/koffi_linux_riscv64hf64/koffi.node +0 -0
  15. package/src/koffi/build/2.3.7/koffi_linux_x64/koffi.node +0 -0
  16. package/src/koffi/build/2.3.7/koffi_openbsd_ia32/koffi.node +0 -0
  17. package/src/koffi/build/2.3.7/koffi_openbsd_x64/koffi.node +0 -0
  18. package/src/koffi/build/2.3.7/koffi_win32_arm64/koffi.node +0 -0
  19. package/src/koffi/build/2.3.7/koffi_win32_ia32/koffi.node +0 -0
  20. package/src/koffi/build/2.3.7/koffi_win32_x64/koffi.node +0 -0
  21. package/src/koffi/src/ffi.cc +2 -2
  22. package/src/koffi/src/index.d.ts +2 -2
  23. package/src/koffi/src/index.js +1 -0
  24. package/src/koffi/build/2.3.6-beta.6/koffi_darwin_arm64/koffi.node +0 -0
  25. package/src/koffi/build/2.3.6-beta.6/koffi_darwin_x64/koffi.node +0 -0
  26. package/src/koffi/build/2.3.6-beta.6/koffi_freebsd_arm64/koffi.node +0 -0
  27. package/src/koffi/build/2.3.6-beta.6/koffi_freebsd_ia32/koffi.node +0 -0
  28. package/src/koffi/build/2.3.6-beta.6/koffi_freebsd_x64/koffi.node +0 -0
  29. package/src/koffi/build/2.3.6-beta.6/koffi_linux_arm32hf/koffi.node +0 -0
  30. package/src/koffi/build/2.3.6-beta.6/koffi_linux_arm64/koffi.node +0 -0
  31. package/src/koffi/build/2.3.6-beta.6/koffi_linux_ia32/koffi.node +0 -0
  32. package/src/koffi/build/2.3.6-beta.6/koffi_linux_riscv64hf64/koffi.node +0 -0
  33. package/src/koffi/build/2.3.6-beta.6/koffi_linux_x64/koffi.node +0 -0
  34. package/src/koffi/build/2.3.6-beta.6/koffi_openbsd_ia32/koffi.node +0 -0
  35. package/src/koffi/build/2.3.6-beta.6/koffi_openbsd_x64/koffi.node +0 -0
  36. package/src/koffi/build/2.3.6-beta.6/koffi_win32_arm64/koffi.node +0 -0
  37. package/src/koffi/build/2.3.6-beta.6/koffi_win32_arm64/koffi.pdb +0 -0
  38. package/src/koffi/build/2.3.6-beta.6/koffi_win32_ia32/koffi.node +0 -0
  39. package/src/koffi/build/2.3.6-beta.6/koffi_win32_ia32/koffi.pdb +0 -0
  40. package/src/koffi/build/2.3.6-beta.6/koffi_win32_x64/koffi.node +0 -0
  41. package/src/koffi/build/2.3.6-beta.6/koffi_win32_x64/koffi.pdb +0 -0
  42. package/vendor/brotli/BUILD +0 -144
  43. package/vendor/brotli/CMakeLists.txt +0 -421
  44. package/vendor/brotli/CONTRIBUTING.md +0 -27
  45. package/vendor/brotli/LICENSE +0 -19
  46. package/vendor/brotli/MANIFEST.in +0 -17
  47. package/vendor/brotli/Makefile +0 -55
  48. package/vendor/brotli/Makefile.am +0 -38
  49. package/vendor/brotli/README +0 -15
  50. package/vendor/brotli/README.md +0 -104
  51. package/vendor/brotli/WORKSPACE +0 -21
  52. package/vendor/brotli/bootstrap +0 -35
  53. package/vendor/brotli/c/common/constants.c +0 -15
  54. package/vendor/brotli/c/common/constants.h +0 -200
  55. package/vendor/brotli/c/common/context.c +0 -156
  56. package/vendor/brotli/c/common/context.h +0 -113
  57. package/vendor/brotli/c/common/dictionary.c +0 -5914
  58. package/vendor/brotli/c/common/dictionary.h +0 -64
  59. package/vendor/brotli/c/common/platform.c +0 -22
  60. package/vendor/brotli/c/common/platform.h +0 -596
  61. package/vendor/brotli/c/common/transform.c +0 -291
  62. package/vendor/brotli/c/common/transform.h +0 -85
  63. package/vendor/brotli/c/common/version.h +0 -26
  64. package/vendor/brotli/c/dec/bit_reader.c +0 -76
  65. package/vendor/brotli/c/dec/bit_reader.h +0 -351
  66. package/vendor/brotli/c/dec/decode.c +0 -2608
  67. package/vendor/brotli/c/dec/huffman.c +0 -339
  68. package/vendor/brotli/c/dec/huffman.h +0 -121
  69. package/vendor/brotli/c/dec/prefix.h +0 -732
  70. package/vendor/brotli/c/dec/state.c +0 -159
  71. package/vendor/brotli/c/dec/state.h +0 -365
  72. package/vendor/brotli/c/enc/backward_references.c +0 -145
  73. package/vendor/brotli/c/enc/backward_references.h +0 -39
  74. package/vendor/brotli/c/enc/backward_references_hq.c +0 -843
  75. package/vendor/brotli/c/enc/backward_references_hq.h +0 -95
  76. package/vendor/brotli/c/enc/backward_references_inc.h +0 -163
  77. package/vendor/brotli/c/enc/bit_cost.c +0 -35
  78. package/vendor/brotli/c/enc/bit_cost.h +0 -63
  79. package/vendor/brotli/c/enc/bit_cost_inc.h +0 -127
  80. package/vendor/brotli/c/enc/block_encoder_inc.h +0 -34
  81. package/vendor/brotli/c/enc/block_splitter.c +0 -194
  82. package/vendor/brotli/c/enc/block_splitter.h +0 -51
  83. package/vendor/brotli/c/enc/block_splitter_inc.h +0 -440
  84. package/vendor/brotli/c/enc/brotli_bit_stream.c +0 -1314
  85. package/vendor/brotli/c/enc/brotli_bit_stream.h +0 -84
  86. package/vendor/brotli/c/enc/cluster.c +0 -56
  87. package/vendor/brotli/c/enc/cluster.h +0 -48
  88. package/vendor/brotli/c/enc/cluster_inc.h +0 -320
  89. package/vendor/brotli/c/enc/command.c +0 -28
  90. package/vendor/brotli/c/enc/command.h +0 -190
  91. package/vendor/brotli/c/enc/compress_fragment.c +0 -790
  92. package/vendor/brotli/c/enc/compress_fragment.h +0 -61
  93. package/vendor/brotli/c/enc/compress_fragment_two_pass.c +0 -645
  94. package/vendor/brotli/c/enc/compress_fragment_two_pass.h +0 -54
  95. package/vendor/brotli/c/enc/dictionary_hash.c +0 -1846
  96. package/vendor/brotli/c/enc/dictionary_hash.h +0 -25
  97. package/vendor/brotli/c/enc/encode.c +0 -1927
  98. package/vendor/brotli/c/enc/encoder_dict.c +0 -33
  99. package/vendor/brotli/c/enc/encoder_dict.h +0 -43
  100. package/vendor/brotli/c/enc/entropy_encode.c +0 -503
  101. package/vendor/brotli/c/enc/entropy_encode.h +0 -122
  102. package/vendor/brotli/c/enc/entropy_encode_static.h +0 -539
  103. package/vendor/brotli/c/enc/fast_log.c +0 -105
  104. package/vendor/brotli/c/enc/fast_log.h +0 -66
  105. package/vendor/brotli/c/enc/find_match_length.h +0 -79
  106. package/vendor/brotli/c/enc/hash.h +0 -488
  107. package/vendor/brotli/c/enc/hash_composite_inc.h +0 -125
  108. package/vendor/brotli/c/enc/hash_forgetful_chain_inc.h +0 -293
  109. package/vendor/brotli/c/enc/hash_longest_match64_inc.h +0 -267
  110. package/vendor/brotli/c/enc/hash_longest_match_inc.h +0 -262
  111. package/vendor/brotli/c/enc/hash_longest_match_quickly_inc.h +0 -266
  112. package/vendor/brotli/c/enc/hash_rolling_inc.h +0 -212
  113. package/vendor/brotli/c/enc/hash_to_binary_tree_inc.h +0 -329
  114. package/vendor/brotli/c/enc/histogram.c +0 -100
  115. package/vendor/brotli/c/enc/histogram.h +0 -63
  116. package/vendor/brotli/c/enc/histogram_inc.h +0 -51
  117. package/vendor/brotli/c/enc/literal_cost.c +0 -175
  118. package/vendor/brotli/c/enc/literal_cost.h +0 -30
  119. package/vendor/brotli/c/enc/memory.c +0 -170
  120. package/vendor/brotli/c/enc/memory.h +0 -114
  121. package/vendor/brotli/c/enc/metablock.c +0 -663
  122. package/vendor/brotli/c/enc/metablock.h +0 -105
  123. package/vendor/brotli/c/enc/metablock_inc.h +0 -183
  124. package/vendor/brotli/c/enc/params.h +0 -46
  125. package/vendor/brotli/c/enc/prefix.h +0 -53
  126. package/vendor/brotli/c/enc/quality.h +0 -165
  127. package/vendor/brotli/c/enc/ringbuffer.h +0 -167
  128. package/vendor/brotli/c/enc/static_dict.c +0 -486
  129. package/vendor/brotli/c/enc/static_dict.h +0 -40
  130. package/vendor/brotli/c/enc/static_dict_lut.h +0 -5864
  131. package/vendor/brotli/c/enc/utf8_util.c +0 -85
  132. package/vendor/brotli/c/enc/utf8_util.h +0 -32
  133. package/vendor/brotli/c/enc/write_bits.h +0 -87
  134. package/vendor/brotli/c/include/brotli/decode.h +0 -344
  135. package/vendor/brotli/c/include/brotli/encode.h +0 -448
  136. package/vendor/brotli/c/include/brotli/port.h +0 -288
  137. package/vendor/brotli/c/include/brotli/types.h +0 -83
  138. package/vendor/brotli/c/tools/brotli.c +0 -1116
  139. package/vendor/brotli/c/tools/brotli.md +0 -107
  140. package/vendor/brotli/compiler_config_setting.bzl +0 -28
  141. package/vendor/brotli/configure +0 -8
  142. package/vendor/brotli/configure-cmake +0 -318
  143. package/vendor/brotli/configure.ac +0 -14
  144. package/vendor/brotli/docs/brotli.1 +0 -132
  145. package/vendor/brotli/docs/constants.h.3 +0 -47
  146. package/vendor/brotli/docs/decode.h.3 +0 -415
  147. package/vendor/brotli/docs/encode.h.3 +0 -586
  148. package/vendor/brotli/docs/types.h.3 +0 -117
  149. package/vendor/brotli/premake5.lua +0 -78
  150. package/vendor/brotli/python/Makefile +0 -57
  151. package/vendor/brotli/python/README.md +0 -54
  152. package/vendor/brotli/python/_brotli.cc +0 -753
  153. package/vendor/brotli/python/bro.py +0 -160
  154. package/vendor/brotli/python/brotli.py +0 -56
  155. package/vendor/brotli/python/tests/__init__.py +0 -0
  156. package/vendor/brotli/python/tests/_test_utils.py +0 -112
  157. package/vendor/brotli/python/tests/bro_test.py +0 -102
  158. package/vendor/brotli/python/tests/compress_test.py +0 -41
  159. package/vendor/brotli/python/tests/compressor_test.py +0 -94
  160. package/vendor/brotli/python/tests/decompress_test.py +0 -42
  161. package/vendor/brotli/python/tests/decompressor_test.py +0 -59
  162. package/vendor/brotli/scripts/libbrotlicommon.pc.in +0 -11
  163. package/vendor/brotli/scripts/libbrotlidec.pc.in +0 -12
  164. package/vendor/brotli/scripts/libbrotlienc.pc.in +0 -12
  165. package/vendor/brotli/scripts/sources.lst +0 -104
  166. package/vendor/brotli/setup.cfg +0 -5
  167. package/vendor/brotli/setup.py +0 -293
  168. package/vendor/brotli/tests/Makefile +0 -17
  169. package/vendor/brotli/tests/compatibility_test.sh +0 -25
  170. package/vendor/brotli/tests/roundtrip_test.sh +0 -36
  171. package/vendor/brotli/tests/run-compatibility-test.cmake +0 -31
  172. package/vendor/brotli/tests/run-roundtrip-test.cmake +0 -36
  173. package/vendor/brotli/tests/testdata/empty +0 -0
  174. package/vendor/brotli/tests/testdata/empty.compressed +0 -1
  175. package/vendor/brotli/tests/testdata/ukkonooa +0 -1
  176. package/vendor/brotli/tests/testdata/ukkonooa.compressed +0 -0
  177. package/vendor/dragonbox/CMakeLists.txt +0 -123
  178. package/vendor/dragonbox/LICENSE-Apache2-LLVM +0 -218
  179. package/vendor/dragonbox/LICENSE-Boost +0 -23
  180. package/vendor/dragonbox/README.md +0 -277
  181. package/vendor/dragonbox/cmake/dragonboxConfig.cmake +0 -1
  182. package/vendor/dragonbox/include/dragonbox/dragonbox.h +0 -2674
  183. package/vendor/dragonbox/include/dragonbox/dragonbox_to_chars.h +0 -108
  184. package/vendor/dragonbox/other_files/Dragonbox.pdf +0 -0
  185. package/vendor/dragonbox/other_files/Dragonbox_old.pdf +0 -0
  186. package/vendor/dragonbox/other_files/milo_benchmark.png +0 -0
  187. package/vendor/dragonbox/other_files/unknown_win64_vc2019.html +0 -540
  188. package/vendor/dragonbox/other_files/unknown_win64_vc2019_randomdigit_time.png +0 -0
  189. package/vendor/dragonbox/source/dragonbox_to_chars.cpp +0 -303
  190. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/CMakeLists.txt +0 -24
  191. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/fp_to_chars.cpp +0 -238
  192. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/fp_to_chars.h +0 -95
  193. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/grisu_exact.h +0 -2666
  194. package/vendor/dragonbox/subproject/3rdparty/ryu/CMakeLists.txt +0 -16
  195. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/common.h +0 -114
  196. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s.c +0 -509
  197. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s_full_table.h +0 -367
  198. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s_intrinsics.h +0 -357
  199. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/digit_table.h +0 -35
  200. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s.c +0 -345
  201. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s_full_table.h +0 -55
  202. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s_intrinsics.h +0 -128
  203. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/ryu.h +0 -46
  204. package/vendor/dragonbox/subproject/3rdparty/schubfach/CMakeLists.txt +0 -22
  205. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_32.cc +0 -699
  206. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_32.h +0 -31
  207. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_64.cc +0 -1354
  208. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_64.h +0 -31
  209. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/example_shaded_plots.m +0 -68
  210. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/license.txt +0 -25
  211. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_distribution.m +0 -92
  212. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_distribution_prctile.m +0 -121
  213. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_histogram_shaded.m +0 -99
  214. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_shaded.m +0 -93
  215. package/vendor/dragonbox/subproject/benchmark/CMakeLists.txt +0 -65
  216. package/vendor/dragonbox/subproject/benchmark/include/benchmark.h +0 -40
  217. package/vendor/dragonbox/subproject/benchmark/matlab/plot_benchmarks.m +0 -22
  218. package/vendor/dragonbox/subproject/benchmark/matlab/plot_digit_benchmark.m +0 -78
  219. package/vendor/dragonbox/subproject/benchmark/matlab/plot_uniform_benchmark.m +0 -95
  220. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary32_clang.png +0 -0
  221. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary32_msvc.png +0 -0
  222. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary64_clang.png +0 -0
  223. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary64_msvc.png +0 -0
  224. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary32_clang.png +0 -0
  225. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary32_msvc.png +0 -0
  226. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary64_clang.png +0 -0
  227. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary64_msvc.png +0 -0
  228. package/vendor/dragonbox/subproject/benchmark/source/benchmark.cpp +0 -238
  229. package/vendor/dragonbox/subproject/benchmark/source/dragonbox.cpp +0 -30
  230. package/vendor/dragonbox/subproject/benchmark/source/grisu_exact.cpp +0 -36
  231. package/vendor/dragonbox/subproject/benchmark/source/ryu.cpp +0 -27
  232. package/vendor/dragonbox/subproject/benchmark/source/schubfach.cpp +0 -31
  233. package/vendor/dragonbox/subproject/common/CMakeLists.txt +0 -42
  234. package/vendor/dragonbox/subproject/common/include/best_rational_approx.h +0 -97
  235. package/vendor/dragonbox/subproject/common/include/big_uint.h +0 -218
  236. package/vendor/dragonbox/subproject/common/include/continued_fractions.h +0 -174
  237. package/vendor/dragonbox/subproject/common/include/good_rational_approx.h +0 -267
  238. package/vendor/dragonbox/subproject/common/include/random_float.h +0 -182
  239. package/vendor/dragonbox/subproject/common/include/rational_continued_fractions.h +0 -57
  240. package/vendor/dragonbox/subproject/common/source/big_uint.cpp +0 -602
  241. package/vendor/dragonbox/subproject/meta/CMakeLists.txt +0 -41
  242. package/vendor/dragonbox/subproject/meta/results/binary32_generated_cache.txt +0 -82
  243. package/vendor/dragonbox/subproject/meta/results/binary64_compressed_cache_error_table.txt +0 -10
  244. package/vendor/dragonbox/subproject/meta/results/binary64_generated_cache.txt +0 -623
  245. package/vendor/dragonbox/subproject/meta/source/generate_cache.cpp +0 -126
  246. package/vendor/dragonbox/subproject/meta/source/live_test.cpp +0 -81
  247. package/vendor/dragonbox/subproject/meta/source/perf_test.cpp +0 -104
  248. package/vendor/dragonbox/subproject/meta/source/sandbox.cpp +0 -20
  249. package/vendor/dragonbox/subproject/test/CMakeLists.txt +0 -70
  250. package/vendor/dragonbox/subproject/test/results/binary32.csv +0 -255
  251. package/vendor/dragonbox/subproject/test/results/binary64.csv +0 -2047
  252. package/vendor/dragonbox/subproject/test/results/plot_required_bits.m +0 -18
  253. package/vendor/dragonbox/subproject/test/source/test_all_shorter_interval_cases.cpp +0 -88
  254. package/vendor/dragonbox/subproject/test/source/uniform_random_test.cpp +0 -95
  255. package/vendor/dragonbox/subproject/test/source/verify_cache_precision.cpp +0 -338
  256. package/vendor/dragonbox/subproject/test/source/verify_compressed_cache.cpp +0 -154
  257. package/vendor/dragonbox/subproject/test/source/verify_fast_multiplication.cpp +0 -168
  258. package/vendor/dragonbox/subproject/test/source/verify_log_computation.cpp +0 -251
  259. package/vendor/dragonbox/subproject/test/source/verify_magic_division.cpp +0 -113
  260. package/vendor/miniz/ChangeLog.md +0 -239
  261. package/vendor/miniz/LICENSE +0 -22
  262. package/vendor/miniz/examples/example1.c +0 -105
  263. package/vendor/miniz/examples/example2.c +0 -164
  264. package/vendor/miniz/examples/example3.c +0 -269
  265. package/vendor/miniz/examples/example4.c +0 -102
  266. package/vendor/miniz/examples/example5.c +0 -327
  267. package/vendor/miniz/examples/example6.c +0 -166
  268. package/vendor/miniz/miniz.c +0 -7835
  269. package/vendor/miniz/miniz.h +0 -1422
  270. package/vendor/miniz/readme.md +0 -46
  271. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_arm64/koffi.exp +0 -0
  272. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_arm64/koffi.lib +0 -0
  273. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_ia32/koffi.exp +0 -0
  274. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_ia32/koffi.lib +0 -0
  275. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_x64/koffi.exp +0 -0
  276. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_x64/koffi.lib +0 -0
@@ -1,108 +0,0 @@
1
- // Copyright 2020-2022 Junekey Jeon
2
- //
3
- // The contents of this file may be used under the terms of
4
- // the Apache License v2.0 with LLVM Exceptions.
5
- //
6
- // (See accompanying file LICENSE-Apache or copy at
7
- // https://llvm.org/foundation/relicensing/LICENSE.txt)
8
- //
9
- // Alternatively, the contents of this file may be used under the terms of
10
- // the Boost Software License, Version 1.0.
11
- // (See accompanying file LICENSE-Boost or copy at
12
- // https://www.boost.org/LICENSE_1_0.txt)
13
- //
14
- // Unless required by applicable law or agreed to in writing, this software
15
- // is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16
- // KIND, either express or implied.
17
-
18
- #ifndef JKJ_HEADER_DRAGONBOX_TO_CHARS
19
- #define JKJ_HEADER_DRAGONBOX_TO_CHARS
20
-
21
- #include "dragonbox/dragonbox.h"
22
-
23
- namespace jkj::dragonbox {
24
- namespace to_chars_detail {
25
- template <class Float, class FloatTraits>
26
- extern char* to_chars(typename FloatTraits::carrier_uint significand, int exponent,
27
- char* buffer) noexcept;
28
-
29
- // Avoid needless ABI overhead incurred by tag dispatch.
30
- template <class PolicyHolder, class Float, class FloatTraits>
31
- char* to_chars_n_impl(float_bits<Float, FloatTraits> br, char* buffer) noexcept {
32
- auto const exponent_bits = br.extract_exponent_bits();
33
- auto const s = br.remove_exponent_bits(exponent_bits);
34
-
35
- if (br.is_finite(exponent_bits)) {
36
- if (s.is_negative()) {
37
- *buffer = '-';
38
- ++buffer;
39
- }
40
- if (br.is_nonzero()) {
41
- auto result = to_decimal<Float, FloatTraits>(
42
- s, exponent_bits, policy::sign::ignore, policy::trailing_zero::remove,
43
- typename PolicyHolder::decimal_to_binary_rounding_policy{},
44
- typename PolicyHolder::binary_to_decimal_rounding_policy{},
45
- typename PolicyHolder::cache_policy{});
46
- return to_chars_detail::to_chars<Float, FloatTraits>(result.significand,
47
- result.exponent, buffer);
48
- }
49
- else {
50
- std::memcpy(buffer, "0E0", 3);
51
- return buffer + 3;
52
- }
53
- }
54
- else {
55
- if (s.has_all_zero_significand_bits()) {
56
- if (s.is_negative()) {
57
- *buffer = '-';
58
- ++buffer;
59
- }
60
- std::memcpy(buffer, "Infinity", 8);
61
- return buffer + 8;
62
- }
63
- else {
64
- std::memcpy(buffer, "NaN", 3);
65
- return buffer + 3;
66
- }
67
- }
68
- }
69
- }
70
-
71
- // Returns the next-to-end position
72
- template <class Float, class FloatTraits = default_float_traits<Float>, class... Policies>
73
- char* to_chars_n(Float x, char* buffer, Policies... policies) noexcept {
74
- using namespace jkj::dragonbox::detail::policy_impl;
75
- using policy_holder = decltype(make_policy_holder(
76
- base_default_pair_list<base_default_pair<decimal_to_binary_rounding::base,
77
- decimal_to_binary_rounding::nearest_to_even>,
78
- base_default_pair<binary_to_decimal_rounding::base,
79
- binary_to_decimal_rounding::to_even>,
80
- base_default_pair<cache::base, cache::full>>{},
81
- policies...));
82
-
83
- return to_chars_detail::to_chars_n_impl<policy_holder>(float_bits<Float, FloatTraits>(x),
84
- buffer);
85
- }
86
-
87
- // Null-terminate and bypass the return value of fp_to_chars_n
88
- template <class Float, class FloatTraits = default_float_traits<Float>, class... Policies>
89
- char* to_chars(Float x, char* buffer, Policies... policies) noexcept {
90
- auto ptr = to_chars_n<Float, FloatTraits>(x, buffer, policies...);
91
- *ptr = '\0';
92
- return ptr;
93
- }
94
-
95
- // Maximum required buffer size (excluding null-terminator)
96
- template <class FloatFormat>
97
- inline constexpr std::size_t max_output_string_length =
98
- std::is_same_v<FloatFormat, ieee754_binary32>
99
- ?
100
- // sign(1) + significand(9) + decimal_point(1) + exp_marker(1) + exp_sign(1) + exp(2)
101
- (1 + 9 + 1 + 1 + 1 + 2)
102
- :
103
- // format == ieee754_format::binary64
104
- // sign(1) + significand(17) + decimal_point(1) + exp_marker(1) + exp_sign(1) + exp(3)
105
- (1 + 17 + 1 + 1 + 1 + 3);
106
- }
107
-
108
- #endif
@@ -1,540 +0,0 @@
1
- <html>
2
- <head>
3
- <script src="http://code.jquery.com/jquery-1.8.2.js"></script>
4
- <script src="http://www.google.com/jsapi?autoload={%22modules%22:[{%22name%22:%22visualization%22,%22version%22:%221%22,%22packages%22:[%22controls%22,%22charteditor%22]}]}"></script>
5
- <script src="jquery.csv.js"></script>
6
- <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
7
- <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
8
- <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
9
- <script>
10
- $(function() {
11
- google.load("visualization", "1", {packages:["corechart"]});
12
- google.setOnLoadCallback(function() {
13
-
14
- var csv = $('#textInput').val();
15
- var data = $.csv.toArrays(csv, {
16
- onParseValue: $.csv.hooks.castToScalar
17
- });
18
-
19
- // Convert data for bar chart (summing all digits)
20
- var timeData = {}; // type -> table
21
- var funcRowMap;
22
- var maxDigit = 0;
23
-
24
- for (var i = 1; i < data.length; i++) {
25
- var type = data[i][0];
26
- var func = data[i][1];
27
- var digit = data[i][2];
28
- var time = data[i][3];
29
- if (timeData[type] == null) {
30
- timeData[type] = [["Function", "Time (ns)"/*, { role: "style" }*/]];
31
- if (digit != 0)
32
- funcRowMap = {};
33
- }
34
-
35
- var table = timeData[type];
36
-
37
- if (digit != 0) {
38
- if (funcRowMap[func] == null)
39
- funcRowMap[func] = table.push([func, 0]) - 1;
40
-
41
- table[funcRowMap[func]][1] += time;
42
- }
43
- else
44
- table.push([func, time]);
45
-
46
- maxDigit = Math.max(maxDigit, digit);
47
- }
48
-
49
- // Compute average
50
- for (var type in timeData) {
51
- var table = timeData[type];
52
- for (var i = 1; i < table.length; i++)
53
- table[i][1] /= maxDigit;
54
- }
55
-
56
- // Convert data for drawing line chart per random digit
57
- var timeDigitData = {}; // type -> table
58
- var funcColumnMap;
59
-
60
- for (var i = 1; i < data.length; i++) {
61
- var type = data[i][0];
62
- var func = data[i][1];
63
- var digit = data[i][2];
64
- var time = data[i][3];
65
-
66
- if (digit == 0)
67
- continue;
68
-
69
- if (timeDigitData[type] == null) {
70
- timeDigitData[type] = [["Digit"]];
71
- funcColumnMap = {};
72
- }
73
-
74
- var table = timeDigitData[type];
75
-
76
- if (funcColumnMap[func] == null)
77
- funcColumnMap[func] = table[0].push(func) - 1;
78
-
79
- var row;
80
- for (row = 1; row < table.length; row++)
81
- if (table[row][0] == digit)
82
- break;
83
-
84
- if (row == table.length)
85
- table.push([digit]);
86
-
87
- table[row][funcColumnMap[func]] = time;
88
- }
89
-
90
- for (var type in timeData) {
91
- $("#main").append(
92
- $("<a>", {name: type}),
93
- $("<h2>", {style: "padding-top: 70px; margin-top: -70px;"}).append(type)
94
- );
95
-
96
- $("#section").append($("<li>").append($("<a>", {href: "#" + type}).append(type)));
97
-
98
- drawTable(type, timeData[type]);
99
- drawBarChart(type, timeData[type]);
100
- if (timeDigitData[type] != null)
101
- drawDigitChart(type, timeDigitData[type]);
102
- }
103
-
104
- $(".chart").each(function() {
105
- var chart = $(this);
106
- var d = $("#downloadDD").clone().css("display", "");
107
- $('li a', d).each(function() {
108
- $(this).click(function() {
109
- var svg = chart[0].getElementsByTagName('svg')[0].parentNode.innerHTML;
110
- svg=sanitize(svg);
111
- $('#imageFilename').val($("#title").html() + "_" + chart.data("filename"));
112
- $('#imageGetFormTYPE').val($(this).attr('dltype'));
113
- $('#imageGetFormSVG').val(svg);
114
- $('#imageGetForm').submit();
115
- });
116
- });
117
- $(this).after(d);
118
- });
119
-
120
- // Add configurations
121
- var thisConfig = "unknown_win64_vc2019";
122
- var configurations = ["corei7920@2.67_cygwin32_gcc4.8","corei7920@2.67_cygwin64_gcc4.8","corei7920@2.67_win32_vc2013","corei7920@2.67_win64_vc2013","unknown_mac32_clang7.0","unknown_mac64_clang7.0","unknown_win64_vc2019"];
123
-
124
- for (var i in configurations) {
125
- var c = configurations[i];
126
- $("#configuration").append($("<li>", {class : (c == thisConfig ? "active" : "")}).append($("<a>", {href: c + ".html"}).append(c)));
127
- }
128
- })
129
- });
130
-
131
- function drawTable(type, timeData) {
132
- var data = google.visualization.arrayToDataTable(timeData);
133
- data.addColumn('number', 'Speedup');
134
- data.sort([{ column: 1, desc: true }]);
135
- var formatter1 = new google.visualization.NumberFormat({ fractionDigits: 3 });
136
- formatter1.format(data, 1);
137
-
138
- var div = document.createElement("div");
139
- div.className = "tablechart";
140
- $("#main").append(div);
141
- var table = new google.visualization.Table(div);
142
- redrawTable(0);
143
- table.setSelection([{ row: 0, column: null}]);
144
-
145
- function redrawTable(selectedRow) {
146
- // Compute relative time using the first row as basis
147
- var basis = data.getValue(selectedRow, 1);
148
- for (var rowIndex = 0; rowIndex < data.getNumberOfRows(); rowIndex++)
149
- data.setValue(rowIndex, 2, basis / data.getValue(rowIndex, 1));
150
-
151
- var formatter = new google.visualization.NumberFormat({suffix: 'x'});
152
- formatter.format(data, 2); // Apply formatter to second column
153
-
154
- table.draw(data);
155
- }
156
-
157
- google.visualization.events.addListener(table, 'select',
158
- function() {
159
- var selection = table.getSelection();
160
- if (selection.length > 0) {
161
- var item = selection[0];
162
- if (item.row != null)
163
- redrawTable(item.row);
164
- }
165
- });
166
-
167
- }
168
-
169
- function drawBarChart(type, timeData) {
170
- var defaultColors = ["#3366cc","#dc3912","#ff9900","#109618","#990099","#0099c6","#dd4477","#66aa00","#b82e2e","#316395","#994499","#22aa99","#aaaa11","#6633cc","#e67300","#8b0707","#651067","#329262","#5574a6","#3b3eac","#b77322","#16d620","#b91383","#f4359e","#9c5935","#a9c413","#2a778d","#668d1c","#bea413","#0c5922","#743411"];
171
-
172
- var data = google.visualization.arrayToDataTable(timeData);
173
- data.addColumn({ type: "string", role: "style" })
174
- for (var rowIndex = 0; rowIndex < data.getNumberOfRows(); rowIndex++)
175
- data.setValue(rowIndex, 2, defaultColors[rowIndex]);
176
-
177
- data.sort([{ column: 1, desc: true }]);
178
- var options = {
179
- title: type,
180
- chartArea: {'width': '70%', 'height': '70%'},
181
- width: 800,
182
- height: 300,
183
- legend: { position: "none" },
184
- hAxis: { title: "Time (ns)" }
185
- };
186
- var div = document.createElement("div");
187
- div.className = "chart";
188
- $(div).data("filename", type + "_time");
189
- $("#main").append(div);
190
- var chart = new google.visualization.BarChart(div);
191
-
192
- chart.draw(data, options);
193
- }
194
-
195
- function drawDigitChart(type, timeDigitData) {
196
- var data = google.visualization.arrayToDataTable(timeDigitData);
197
-
198
- var options = {
199
- title: type,
200
- chartArea: {left:100, 'width': '60%', 'height': '80%'},
201
- hAxis: {
202
- title: "Digit",
203
- gridlines: { count: timeDigitData.length - 1 },
204
- maxAlternation: 1,
205
- minTextSpacing: 0
206
- },
207
- vAxis: {
208
- title: "Time (ns) in log scale",
209
- logScale: true,
210
- minorGridlines: { count: 0 },
211
- baseline: 0,
212
- viewWindow: {max: 150, min: 20},
213
- minorGridlines: {interval: [1,2,3,4,5,6,7,8,9,10]}
214
- },
215
- width: 800,
216
- height: 600
217
- };
218
- var div = document.createElement("div");
219
- div.className = "chart";
220
- $(div).data("filename", type + "_timedigit");
221
- $("#main").append(div);
222
- var chart = new google.visualization.LineChart(div);
223
-
224
- chart.draw(data, options);
225
- }
226
-
227
- // http://jsfiddle.net/P6XXM/
228
- function sanitize(svg) {
229
- svg = svg
230
- .replace(/\<svg/,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1"')
231
- .replace(/zIndex="[^"]+"/g, '')
232
- .replace(/isShadow="[^"]+"/g, '')
233
- .replace(/symbolName="[^"]+"/g, '')
234
- .replace(/jQuery[0-9]+="[^"]+"/g, '')
235
- .replace(/isTracker="[^"]+"/g, '')
236
- .replace(/url\([^#]+#/g, 'url(#')
237
- .replace('<svg xmlns:xlink="http://www.w3.org/1999/xlink" ', '<svg ')
238
- .replace(/ href=/g, ' xlink:href=')
239
- /*.replace(/preserveAspectRatio="none">/g, 'preserveAspectRatio="none"/>')*/
240
- /* This fails in IE < 8
241
- .replace(/([0-9]+)\.([0-9]+)/g, function(s1, s2, s3) { // round off to save weight
242
- return s2 +'.'+ s3[0];
243
- })*/
244
-
245
- // IE specific
246
- .replace(/id=([^" >]+)/g, 'id="$1"')
247
- .replace(/class=([^" ]+)/g, 'class="$1"')
248
- .replace(/ transform /g, ' ')
249
- .replace(/:(path|rect)/g, '$1')
250
- .replace(/<img ([^>]*)>/gi, '<image $1 />')
251
- .replace(/<\/image>/g, '') // remove closing tags for images as they'll never have any content
252
- .replace(/<image ([^>]*)([^\/])>/gi, '<image $1$2 />') // closes image tags for firefox
253
- .replace(/width=(\d+)/g, 'width="$1"')
254
- .replace(/height=(\d+)/g, 'height="$1"')
255
- .replace(/hc-svg-href="/g, 'xlink:href="')
256
- .replace(/style="([^"]+)"/g, function (s) {
257
- return s.toLowerCase();
258
- });
259
-
260
- // IE9 beta bugs with innerHTML. Test again with final IE9.
261
- svg = svg.replace(/(url\(#highcharts-[0-9]+)&quot;/g, '$1')
262
- .replace(/&quot;/g, "'");
263
- if (svg.match(/ xmlns="/g).length == 2) {
264
- svg = svg.replace(/xmlns="[^"]+"/, '');
265
- }
266
-
267
- return svg;
268
- }
269
- </script>
270
- <style type="text/css">
271
- @media (min-width: 800px) {
272
- .container {
273
- max-width: 800px;
274
- }
275
- }
276
- textarea {
277
- font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
278
- }
279
- .tablechart {
280
- width: 700px;
281
- margin: auto;
282
- padding-top: 20px;
283
- padding-bottom: 20px;
284
- }
285
- .chart {
286
- padding-top: 20px;
287
- padding-bottom: 20px;
288
- }
289
- body { padding-top: 70px; }
290
- </style>
291
- </head>
292
- <body>
293
- <div class="container">
294
- <nav class="navbar navbar-default navbar-fixed-top" role="navigation">
295
- <div class="container">
296
- <!-- Brand and toggle get grouped for better mobile display -->
297
- <div class="navbar-header">
298
- <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
299
- <span class="sr-only">Toggle navigation</span>
300
- <span class="icon-bar"></span>
301
- <span class="icon-bar"></span>
302
- <span class="icon-bar"></span>
303
- </button>
304
- <a class="navbar-brand" href="https://github.com/miloyip/dtoa-benchmark"><span class="glyphicon glyphicon-home"></span> dtoa-benchmark</a>
305
- </div>
306
-
307
- <!-- Collect the nav links, forms, and other content for toggling -->
308
- <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
309
- <ul class="nav navbar-nav">
310
- <li class="dropdown">
311
- <a href="#" class="dropdown-toggle" data-toggle="dropdown">Configuration <span class="caret"></span></a>
312
- <ul class="dropdown-menu" role="menu" id="configuration">
313
- </ul>
314
- </li>
315
- <li class="dropdown">
316
- <a href="#" class="dropdown-toggle" data-toggle="dropdown">Section <span class="caret"></span></a>
317
- <ul class="dropdown-menu" role="menu" id="section">
318
- </ul>
319
- </li>
320
- </ul>
321
- <p class="navbar-text navbar-right">Developed by <a href="https://github.com/miloyip" class="navbar-link">Milo Yip</a></p>
322
- </div><!-- /.navbar-collapse -->
323
- </div><!-- /.container-fluid -->
324
- </nav>
325
- <div class="page-header">
326
- <h1 id="title">unknown_win64_vc2019</h1>
327
- </div>
328
- <div id="main"></div>
329
- <h2>Source CSV</h2>
330
- <textarea id="textInput" class="form-control" rows="5" readonly>
331
- Type,Function,Digit,Time(ns)
332
- randomdigit,doubleconv,1,71.223000
333
- randomdigit,doubleconv,2,83.739000
334
- randomdigit,doubleconv,3,87.977000
335
- randomdigit,doubleconv,4,90.844000
336
- randomdigit,doubleconv,5,96.071000
337
- randomdigit,doubleconv,6,100.920000
338
- randomdigit,doubleconv,7,106.860000
339
- randomdigit,doubleconv,8,107.243000
340
- randomdigit,doubleconv,9,107.882000
341
- randomdigit,doubleconv,10,114.161000
342
- randomdigit,doubleconv,11,120.089000
343
- randomdigit,doubleconv,12,124.157000
344
- randomdigit,doubleconv,13,121.921000
345
- randomdigit,doubleconv,14,124.308000
346
- randomdigit,doubleconv,15,127.801000
347
- randomdigit,doubleconv,16,133.545000
348
- randomdigit,doubleconv,17,140.764000
349
- randomdigit,emyg,1,49.488000
350
- randomdigit,emyg,2,54.384000
351
- randomdigit,emyg,3,56.676000
352
- randomdigit,emyg,4,58.776000
353
- randomdigit,emyg,5,62.045000
354
- randomdigit,emyg,6,59.798000
355
- randomdigit,emyg,7,60.171000
356
- randomdigit,emyg,8,62.302000
357
- randomdigit,emyg,9,63.449000
358
- randomdigit,emyg,10,64.685000
359
- randomdigit,emyg,11,65.412000
360
- randomdigit,emyg,12,66.872000
361
- randomdigit,emyg,13,68.013000
362
- randomdigit,emyg,14,69.450000
363
- randomdigit,emyg,15,71.172000
364
- randomdigit,emyg,16,74.847000
365
- randomdigit,emyg,17,77.391000
366
- randomdigit,erthink,1,34.692000
367
- randomdigit,erthink,2,35.652000
368
- randomdigit,erthink,3,37.090000
369
- randomdigit,erthink,4,37.854000
370
- randomdigit,erthink,5,40.699000
371
- randomdigit,erthink,6,42.624000
372
- randomdigit,erthink,7,44.213000
373
- randomdigit,erthink,8,45.829000
374
- randomdigit,erthink,9,46.268000
375
- randomdigit,erthink,10,47.757000
376
- randomdigit,erthink,11,49.229000
377
- randomdigit,erthink,12,54.313000
378
- randomdigit,erthink,13,52.171000
379
- randomdigit,erthink,14,56.760000
380
- randomdigit,erthink,15,58.601000
381
- randomdigit,erthink,16,56.738000
382
- randomdigit,erthink,17,57.844000
383
- randomdigit,floaxie,1,32.675000
384
- randomdigit,floaxie,2,38.321000
385
- randomdigit,floaxie,3,42.846000
386
- randomdigit,floaxie,4,49.954000
387
- randomdigit,floaxie,5,56.737000
388
- randomdigit,floaxie,6,61.745000
389
- randomdigit,floaxie,7,69.012000
390
- randomdigit,floaxie,8,77.025000
391
- randomdigit,floaxie,9,83.648000
392
- randomdigit,floaxie,10,87.588000
393
- randomdigit,floaxie,11,92.134000
394
- randomdigit,floaxie,12,96.296000
395
- randomdigit,floaxie,13,98.109000
396
- randomdigit,floaxie,14,99.591000
397
- randomdigit,floaxie,15,100.592000
398
- randomdigit,floaxie,16,101.807000
399
- randomdigit,floaxie,17,101.887000
400
- randomdigit,fmt,1,53.977000
401
- randomdigit,fmt,2,57.743000
402
- randomdigit,fmt,3,58.027000
403
- randomdigit,fmt,4,57.938000
404
- randomdigit,fmt,5,57.543000
405
- randomdigit,fmt,6,58.663000
406
- randomdigit,fmt,7,58.296000
407
- randomdigit,fmt,8,59.124000
408
- randomdigit,fmt,9,62.657000
409
- randomdigit,fmt,10,63.963000
410
- randomdigit,fmt,11,63.576000
411
- randomdigit,fmt,12,64.037000
412
- randomdigit,fmt,13,61.003000
413
- randomdigit,fmt,14,60.267000
414
- randomdigit,fmt,15,61.596000
415
- randomdigit,fmt,16,64.429000
416
- randomdigit,fmt,17,64.504000
417
- randomdigit,grisu2,1,103.766000
418
- randomdigit,grisu2,2,113.021000
419
- randomdigit,grisu2,3,112.313000
420
- randomdigit,grisu2,4,114.278000
421
- randomdigit,grisu2,5,116.382000
422
- randomdigit,grisu2,6,118.683000
423
- randomdigit,grisu2,7,120.528000
424
- randomdigit,grisu2,8,124.457000
425
- randomdigit,grisu2,9,126.515000
426
- randomdigit,grisu2,10,127.444000
427
- randomdigit,grisu2,11,129.016000
428
- randomdigit,grisu2,12,131.285000
429
- randomdigit,grisu2,13,129.324000
430
- randomdigit,grisu2,14,131.143000
431
- randomdigit,grisu2,15,133.030000
432
- randomdigit,grisu2,16,134.716000
433
- randomdigit,grisu2,17,140.260000
434
- randomdigit,milo,1,51.258000
435
- randomdigit,milo,2,54.217000
436
- randomdigit,milo,3,56.843000
437
- randomdigit,milo,4,57.965000
438
- randomdigit,milo,5,60.638000
439
- randomdigit,milo,6,62.935000
440
- randomdigit,milo,7,64.241000
441
- randomdigit,milo,8,66.264000
442
- randomdigit,milo,9,67.355000
443
- randomdigit,milo,10,69.715000
444
- randomdigit,milo,11,72.008000
445
- randomdigit,milo,12,72.875000
446
- randomdigit,milo,13,81.763000
447
- randomdigit,milo,14,80.948000
448
- randomdigit,milo,15,85.340000
449
- randomdigit,milo,16,83.437000
450
- randomdigit,milo,17,96.519000
451
- randomdigit,ryu,1,54.887000
452
- randomdigit,ryu,2,55.220000
453
- randomdigit,ryu,3,54.280000
454
- randomdigit,ryu,4,52.602000
455
- randomdigit,ryu,5,51.612000
456
- randomdigit,ryu,6,50.740000
457
- randomdigit,ryu,7,49.837000
458
- randomdigit,ryu,8,48.804000
459
- randomdigit,ryu,9,46.491000
460
- randomdigit,ryu,10,48.427000
461
- randomdigit,ryu,11,46.493000
462
- randomdigit,ryu,12,44.799000
463
- randomdigit,ryu,13,43.150000
464
- randomdigit,ryu,14,42.205000
465
- randomdigit,ryu,15,40.604000
466
- randomdigit,ryu,16,39.912000
467
- randomdigit,ryu,17,39.437000
468
- randomdigit,dragonbox,1,29.427000
469
- randomdigit,dragonbox,2,31.778000
470
- randomdigit,dragonbox,3,30.199000
471
- randomdigit,dragonbox,4,31.238000
472
- randomdigit,dragonbox,5,29.360000
473
- randomdigit,dragonbox,6,30.439000
474
- randomdigit,dragonbox,7,28.457000
475
- randomdigit,dragonbox,8,30.089000
476
- randomdigit,dragonbox,9,29.953000
477
- randomdigit,dragonbox,10,30.676000
478
- randomdigit,dragonbox,11,31.074000
479
- randomdigit,dragonbox,12,30.812000
480
- randomdigit,dragonbox,13,29.128000
481
- randomdigit,dragonbox,14,28.778000
482
- randomdigit,dragonbox,15,30.860000
483
- randomdigit,dragonbox,16,28.859000
484
- randomdigit,dragonbox,17,33.514000
485
- randomdigit,dragonbox_comp,1,33.047000
486
- randomdigit,dragonbox_comp,2,35.702000
487
- randomdigit,dragonbox_comp,3,33.917000
488
- randomdigit,dragonbox_comp,4,36.103000
489
- randomdigit,dragonbox_comp,5,33.100000
490
- randomdigit,dragonbox_comp,6,34.315000
491
- randomdigit,dragonbox_comp,7,34.149000
492
- randomdigit,dragonbox_comp,8,36.791000
493
- randomdigit,dragonbox_comp,9,35.710000
494
- randomdigit,dragonbox_comp,10,36.800000
495
- randomdigit,dragonbox_comp,11,37.123000
496
- randomdigit,dragonbox_comp,12,36.863000
497
- randomdigit,dragonbox_comp,13,35.854000
498
- randomdigit,dragonbox_comp,14,35.038000
499
- randomdigit,dragonbox_comp,15,34.857000
500
- randomdigit,dragonbox_comp,16,34.560000
501
- randomdigit,dragonbox_comp,17,39.080000
502
- randomdigit,fmt_full_cache,1,45.122000
503
- randomdigit,fmt_full_cache,2,45.366000
504
- randomdigit,fmt_full_cache,3,49.022000
505
- randomdigit,fmt_full_cache,4,50.854000
506
- randomdigit,fmt_full_cache,5,51.579000
507
- randomdigit,fmt_full_cache,6,52.227000
508
- randomdigit,fmt_full_cache,7,51.044000
509
- randomdigit,fmt_full_cache,8,50.727000
510
- randomdigit,fmt_full_cache,9,54.859000
511
- randomdigit,fmt_full_cache,10,55.533000
512
- randomdigit,fmt_full_cache,11,53.122000
513
- randomdigit,fmt_full_cache,12,55.535000
514
- randomdigit,fmt_full_cache,13,53.757000
515
- randomdigit,fmt_full_cache,14,54.531000
516
- randomdigit,fmt_full_cache,15,54.673000
517
- randomdigit,fmt_full_cache,16,58.299000
518
- randomdigit,fmt_full_cache,17,60.408000
519
- </textarea>
520
- </div>
521
- <div class="row" id="downloadDD" style="display: none">
522
- <div class="btn-group pull-right" >
523
- <button class="btn dropdown-toggle" data-toggle="dropdown"><span class="glyphicon glyphicon-picture"></span></button>
524
- <ul class="dropdown-menu">
525
- <li><a tabindex="-1" href="#" dltype="image/jpeg">JPEG</a></li>
526
- <li><a tabindex="-1" href="#" dltype="image/png">PNG</a></li>
527
- <li><a tabindex="-1" href="#" dltype="application/pdf">PDF</a></li>
528
- <li><a tabindex="-1" href="#" dltype="image/svg+xml">SVG</a></li>
529
- </ul>
530
- </div>
531
- </div>
532
- <form method="post" action="http://export.highcharts.com/" id="imageGetForm">
533
- <input type="hidden" name="filename" id="imageFilename" value="" />
534
- <input type="hidden" name="type" id="imageGetFormTYPE" value="" />
535
- <input type="hidden" name="width" value="900" />
536
- <input type="hidden" name="svg" value="" id="imageGetFormSVG" />
537
- </form>
538
- </div>
539
- </body>
540
- </html>