script_core 0.1.1 → 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 (1479) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -0
  3. data/.rubocop.yml +50 -47
  4. data/.ruby-version +1 -1
  5. data/.travis.yml +2 -1
  6. data/Gemfile +5 -6
  7. data/README.md +9 -3
  8. data/Rakefile +3 -12
  9. data/bin/bundle +114 -0
  10. data/bin/console +2 -2
  11. data/bin/sandbox +1 -1
  12. data/bootstrap.sh +2 -2
  13. data/ext/enterprise_script_service/Rakefile +4 -2
  14. data/ext/enterprise_script_service/flags.rb +5 -0
  15. data/ext/enterprise_script_service/libseccomp/CHANGELOG +15 -0
  16. data/ext/enterprise_script_service/libseccomp/CREDITS +3 -0
  17. data/ext/enterprise_script_service/libseccomp/Makefile.am +1 -1
  18. data/ext/enterprise_script_service/libseccomp/README.md +1 -1
  19. data/ext/enterprise_script_service/libseccomp/SECURITY.md +45 -0
  20. data/ext/enterprise_script_service/libseccomp/configure.ac +3 -3
  21. data/ext/enterprise_script_service/libseccomp/doc/admin/MAINTAINER_PROCESS.md +95 -0
  22. data/ext/enterprise_script_service/libseccomp/{RELEASE_PROCESS.md → doc/admin/RELEASE_PROCESS.md} +9 -1
  23. data/ext/enterprise_script_service/libseccomp/include/Makefile.am +1 -1
  24. data/ext/enterprise_script_service/libseccomp/include/seccomp-syscalls.h +2292 -0
  25. data/ext/enterprise_script_service/libseccomp/include/seccomp.h.in +3 -1065
  26. data/ext/enterprise_script_service/libseccomp/src/arch-aarch64-syscalls.c +35 -3
  27. data/ext/enterprise_script_service/libseccomp/src/arch-arm-syscalls.c +35 -3
  28. data/ext/enterprise_script_service/libseccomp/src/arch-mips-syscalls.c +43 -11
  29. data/ext/enterprise_script_service/libseccomp/src/arch-mips64-syscalls.c +33 -1
  30. data/ext/enterprise_script_service/libseccomp/src/arch-mips64n32-syscalls.c +33 -1
  31. data/ext/enterprise_script_service/libseccomp/src/arch-parisc-syscalls.c +34 -2
  32. data/ext/enterprise_script_service/libseccomp/src/arch-ppc-syscalls.c +43 -11
  33. data/ext/enterprise_script_service/libseccomp/src/arch-ppc64-syscalls.c +44 -12
  34. data/ext/enterprise_script_service/libseccomp/src/arch-s390-syscalls.c +46 -14
  35. data/ext/enterprise_script_service/libseccomp/src/arch-s390.c +142 -18
  36. data/ext/enterprise_script_service/libseccomp/src/arch-s390x-syscalls.c +47 -15
  37. data/ext/enterprise_script_service/libseccomp/src/arch-s390x.c +143 -17
  38. data/ext/enterprise_script_service/libseccomp/src/arch-x32-syscalls.c +33 -1
  39. data/ext/enterprise_script_service/libseccomp/src/arch-x86-syscalls.c +94 -12
  40. data/ext/enterprise_script_service/libseccomp/src/arch-x86.c +142 -19
  41. data/ext/enterprise_script_service/libseccomp/src/arch-x86_64-syscalls.c +33 -1
  42. data/ext/enterprise_script_service/libseccomp/src/db.c +1 -0
  43. data/ext/enterprise_script_service/libseccomp/src/gen_bpf.c +10 -3
  44. data/ext/enterprise_script_service/libseccomp/src/python/Makefile.am +4 -4
  45. data/ext/enterprise_script_service/libseccomp/src/python/seccomp.pyx +2 -0
  46. data/ext/enterprise_script_service/libseccomp/tests/.gitignore +1 -0
  47. data/ext/enterprise_script_service/libseccomp/tests/50-sim-hash_collision.c +98 -0
  48. data/ext/enterprise_script_service/libseccomp/tests/50-sim-hash_collision.py +61 -0
  49. data/ext/enterprise_script_service/libseccomp/tests/50-sim-hash_collision.tests +18 -0
  50. data/ext/enterprise_script_service/libseccomp/tests/Makefile.am +6 -3
  51. data/ext/enterprise_script_service/libseccomp/tools/Makefile.am +0 -2
  52. data/ext/enterprise_script_service/libseccomp/tools/check-syntax +1 -0
  53. data/ext/enterprise_script_service/libseccomp/tools/scmp_bpf_sim.c +2 -0
  54. data/ext/enterprise_script_service/mruby-mpdecimal/src/ext.c +1 -1
  55. data/ext/enterprise_script_service/mruby/.gitignore +2 -2
  56. data/ext/enterprise_script_service/mruby/.gitlab-ci.yml +1627 -427
  57. data/ext/enterprise_script_service/mruby/.travis.yml +1 -6
  58. data/ext/enterprise_script_service/mruby/CONTRIBUTING.md +11 -4
  59. data/ext/enterprise_script_service/mruby/Doxyfile +2408 -0
  60. data/ext/enterprise_script_service/mruby/Makefile +1 -3
  61. data/ext/enterprise_script_service/mruby/README.md +20 -11
  62. data/ext/enterprise_script_service/mruby/Rakefile +12 -20
  63. data/ext/enterprise_script_service/mruby/appveyor_config.rb +1 -14
  64. data/ext/enterprise_script_service/mruby/build_config.rb +3 -3
  65. data/ext/enterprise_script_service/mruby/doc/guides/compile.md +42 -42
  66. data/ext/enterprise_script_service/mruby/doc/guides/debugger.md +1 -1
  67. data/ext/enterprise_script_service/mruby/doc/guides/mrbconf.md +45 -6
  68. data/ext/enterprise_script_service/mruby/doc/guides/mrbgems.md +8 -3
  69. data/ext/enterprise_script_service/mruby/doc/limitations.md +88 -38
  70. data/ext/enterprise_script_service/mruby/doc/mruby_logo_red_icon.png +0 -0
  71. data/ext/enterprise_script_service/mruby/doc/opcode.md +94 -94
  72. data/ext/enterprise_script_service/mruby/include/mrbconf.h +74 -11
  73. data/ext/enterprise_script_service/mruby/include/mruby.h +243 -146
  74. data/ext/enterprise_script_service/mruby/include/mruby/array.h +7 -7
  75. data/ext/enterprise_script_service/mruby/include/mruby/boxing_nan.h +3 -9
  76. data/ext/enterprise_script_service/mruby/include/mruby/boxing_no.h +12 -10
  77. data/ext/enterprise_script_service/mruby/include/mruby/boxing_word.h +110 -70
  78. data/ext/enterprise_script_service/mruby/include/mruby/class.h +14 -5
  79. data/ext/enterprise_script_service/mruby/include/mruby/common.h +9 -7
  80. data/ext/enterprise_script_service/mruby/include/mruby/compile.h +7 -6
  81. data/ext/enterprise_script_service/mruby/include/mruby/data.h +5 -5
  82. data/ext/enterprise_script_service/mruby/include/mruby/debug.h +2 -2
  83. data/ext/enterprise_script_service/mruby/include/mruby/dump.h +3 -7
  84. data/ext/enterprise_script_service/mruby/include/mruby/error.h +34 -6
  85. data/ext/enterprise_script_service/mruby/include/mruby/gc.h +2 -2
  86. data/ext/enterprise_script_service/mruby/include/mruby/hash.h +4 -11
  87. data/ext/enterprise_script_service/mruby/include/mruby/irep.h +16 -4
  88. data/ext/enterprise_script_service/mruby/include/mruby/istruct.h +4 -4
  89. data/ext/enterprise_script_service/mruby/include/mruby/khash.h +2 -2
  90. data/ext/enterprise_script_service/mruby/include/mruby/numeric.h +41 -7
  91. data/ext/enterprise_script_service/mruby/include/mruby/object.h +8 -9
  92. data/ext/enterprise_script_service/mruby/include/mruby/opcode.h +2 -2
  93. data/ext/enterprise_script_service/mruby/include/mruby/ops.h +6 -6
  94. data/ext/enterprise_script_service/mruby/include/mruby/proc.h +19 -13
  95. data/ext/enterprise_script_service/mruby/include/mruby/range.h +10 -4
  96. data/ext/enterprise_script_service/mruby/include/mruby/re.h +2 -2
  97. data/ext/enterprise_script_service/mruby/include/mruby/string.h +131 -108
  98. data/ext/enterprise_script_service/mruby/include/mruby/throw.h +2 -2
  99. data/ext/enterprise_script_service/mruby/include/mruby/value.h +135 -49
  100. data/ext/enterprise_script_service/mruby/include/mruby/variable.h +3 -5
  101. data/ext/enterprise_script_service/mruby/include/mruby/version.h +24 -10
  102. data/ext/enterprise_script_service/mruby/lib/mruby-core-ext.rb +3 -59
  103. data/ext/enterprise_script_service/mruby/lib/mruby/build.rb +34 -17
  104. data/ext/enterprise_script_service/mruby/lib/mruby/build/command.rb +76 -24
  105. data/ext/enterprise_script_service/mruby/lib/mruby/build/load_gems.rb +25 -12
  106. data/ext/enterprise_script_service/mruby/lib/mruby/gem.rb +12 -8
  107. data/ext/enterprise_script_service/mruby/lib/mruby/lockfile.rb +81 -0
  108. data/ext/enterprise_script_service/mruby/minirake +2 -605
  109. data/ext/enterprise_script_service/mruby/mrbgems/default.gembox +3 -0
  110. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/mrbgem.rake +0 -1
  111. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/mrblib/array.rb +47 -9
  112. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/src/array.c +3 -3
  113. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/test/array.rb +50 -29
  114. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mrbgem.rake +1 -1
  115. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/bintest/print.rb +19 -17
  116. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apibreak.c +3 -3
  117. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.c +2 -2
  118. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdprint.c +3 -3
  119. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.c +2 -2
  120. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.h +1 -1
  121. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdbconf.h +4 -0
  122. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +28 -1
  123. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/tools/mrbc/mrbc.c +3 -4
  124. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/bintest/mruby.rb +75 -8
  125. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +134 -90
  126. data/ext/enterprise_script_service/mruby/mrbgems/mruby-class-ext/src/class.c +7 -8
  127. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/codegen.c +86 -48
  128. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/keywords +0 -3
  129. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/lex.def +51 -59
  130. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/node.h +1 -0
  131. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/parse.y +587 -246
  132. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/mrbgem.rake +1 -1
  133. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/mrbgem.rake +7 -0
  134. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/mrblib/complex.rb +122 -0
  135. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/src/complex.c +249 -0
  136. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/test/complex.rb +153 -0
  137. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-chain/mrblib/chain.rb +19 -17
  138. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-chain/test/enum_chain.rb +41 -9
  139. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-ext/mrblib/enum.rb +30 -4
  140. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-ext/test/enum.rb +8 -3
  141. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/mrbgem.rake +0 -1
  142. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/mrblib/enumerator.rb +46 -14
  143. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/test/enumerator.rb +51 -2
  144. data/ext/enterprise_script_service/mruby/mrbgems/mruby-error/src/exception.c +10 -0
  145. data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/src/eval.c +47 -44
  146. data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/test/eval.rb +2 -2
  147. data/ext/enterprise_script_service/mruby/mrbgems/mruby-exit/src/mruby-exit.c +9 -4
  148. data/ext/enterprise_script_service/mruby/mrbgems/mruby-fiber/src/fiber.c +16 -12
  149. data/ext/enterprise_script_service/mruby/mrbgems/mruby-fiber/test/fiber.rb +1 -1
  150. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/mrbgem.rake +0 -2
  151. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/mrblib/hash.rb +3 -0
  152. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/test/hash.rb +3 -7
  153. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/README.md +2 -3
  154. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/include/mruby/ext/io.h +1 -1
  155. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrbgem.rake +2 -2
  156. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/file.rb +32 -37
  157. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/io.rb +24 -38
  158. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/kernel.rb +16 -0
  159. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file.c +121 -26
  160. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file_test.c +5 -21
  161. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/io.c +65 -59
  162. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file.rb +40 -20
  163. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file_test.rb +4 -9
  164. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/io.rb +41 -35
  165. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/mruby_io_test.c +18 -37
  166. data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/mrbgem.rake +1 -1
  167. data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/src/kernel.c +9 -27
  168. data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/test/kernel.rb +39 -9
  169. data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/src/math.c +5 -2
  170. data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/test/math.rb +113 -6
  171. data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/src/metaprog.c +61 -35
  172. data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/test/metaprog.rb +48 -17
  173. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/mrblib/method.rb +0 -12
  174. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/src/method.c +134 -101
  175. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/test/method.rb +9 -1
  176. data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/mrblib/numeric_ext.rb +1 -5
  177. data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/src/numeric_ext.c +17 -37
  178. data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/test/numeric.rb +0 -8
  179. data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/mrbgem.rake +1 -1
  180. data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/mrblib/object.rb +15 -1
  181. data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/src/object.c +35 -6
  182. data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/test/nil.rb +4 -0
  183. data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +1 -5
  184. data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/test/objectspace.rb +1 -1
  185. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/README.md +1 -0
  186. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/mrbgem.rake +1 -1
  187. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/src/pack.c +28 -23
  188. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/test/pack.rb +43 -49
  189. data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/mrblib/print.rb +3 -9
  190. data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/src/proc.c +6 -9
  191. data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/test/proc.rb +21 -5
  192. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/random.c +157 -124
  193. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/test/random.rb +72 -26
  194. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/mrblib/range.rb +38 -0
  195. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/src/range.c +26 -11
  196. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/test/range.rb +111 -1
  197. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/mrbgem.rake +5 -0
  198. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/mrblib/rational.rb +117 -0
  199. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/src/rational.c +209 -0
  200. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/test/rational.rb +308 -0
  201. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/mrbgem.rake +1 -1
  202. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/src/mrb_sleep.c +1 -0
  203. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/README.md +2 -1
  204. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/mrbgem.rake +1 -1
  205. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/src/socket.c +10 -9
  206. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/kernel.c +2 -2
  207. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/sprintf.c +22 -24
  208. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/mrbgem.rake +0 -1
  209. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/mrblib/string.rb +8 -4
  210. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/src/string.c +116 -117
  211. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/test/numeric.rb +29 -0
  212. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/test/range.rb +26 -0
  213. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/test/string.rb +32 -50
  214. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/mrblib/struct.rb +5 -7
  215. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/src/struct.c +44 -58
  216. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/test/struct.rb +16 -11
  217. data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/src/symbol.c +2 -2
  218. data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +1 -1
  219. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/driver.c +152 -1
  220. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/mrbgem.rake +8 -12
  221. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/vformat.c +179 -0
  222. data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/include/mruby/time.h +2 -1
  223. data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/src/time.c +210 -75
  224. data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/test/time.rb +81 -46
  225. data/ext/enterprise_script_service/mruby/mrblib/array.rb +14 -16
  226. data/ext/enterprise_script_service/mruby/mrblib/enum.rb +13 -9
  227. data/ext/enterprise_script_service/mruby/mrblib/hash.rb +5 -7
  228. data/ext/enterprise_script_service/mruby/mrblib/kernel.rb +1 -1
  229. data/ext/enterprise_script_service/mruby/mrblib/mrblib.rake +1 -1
  230. data/ext/enterprise_script_service/mruby/mrblib/numeric.rb +4 -4
  231. data/ext/enterprise_script_service/mruby/mrblib/range.rb +1 -1
  232. data/ext/enterprise_script_service/mruby/mrblib/string.rb +55 -112
  233. data/ext/enterprise_script_service/mruby/mruby-source.gemspec +1 -1
  234. data/ext/enterprise_script_service/mruby/oss-fuzz/config/mruby.dict +105 -0
  235. data/ext/enterprise_script_service/mruby/oss-fuzz/config/mruby_fuzzer.options +5 -0
  236. data/ext/enterprise_script_service/mruby/oss-fuzz/config/mruby_proto_fuzzer.options +4 -0
  237. data/ext/enterprise_script_service/mruby/oss-fuzz/mruby_fuzzer.c +18 -0
  238. data/ext/enterprise_script_service/mruby/oss-fuzz/mruby_proto_fuzzer.cpp +44 -0
  239. data/ext/enterprise_script_service/mruby/oss-fuzz/proto_to_ruby.cpp +455 -0
  240. data/ext/enterprise_script_service/mruby/oss-fuzz/proto_to_ruby.h +55 -0
  241. data/ext/enterprise_script_service/mruby/oss-fuzz/ruby.proto +201 -0
  242. data/ext/enterprise_script_service/mruby/src/array.c +96 -46
  243. data/ext/enterprise_script_service/mruby/src/backtrace.c +25 -70
  244. data/ext/enterprise_script_service/mruby/src/class.c +386 -309
  245. data/ext/enterprise_script_service/mruby/src/codedump.c +34 -34
  246. data/ext/enterprise_script_service/mruby/src/debug.c +2 -2
  247. data/ext/enterprise_script_service/mruby/src/dump.c +8 -6
  248. data/ext/enterprise_script_service/mruby/src/enum.c +1 -1
  249. data/ext/enterprise_script_service/mruby/src/error.c +177 -111
  250. data/ext/enterprise_script_service/mruby/src/etc.c +13 -46
  251. data/ext/enterprise_script_service/mruby/src/fmt_fp.c +2 -3
  252. data/ext/enterprise_script_service/mruby/src/gc.c +33 -11
  253. data/ext/enterprise_script_service/mruby/src/hash.c +24 -15
  254. data/ext/enterprise_script_service/mruby/src/kernel.c +17 -55
  255. data/ext/enterprise_script_service/mruby/src/load.c +52 -92
  256. data/ext/enterprise_script_service/mruby/src/numeric.c +164 -94
  257. data/ext/enterprise_script_service/mruby/src/object.c +16 -39
  258. data/ext/enterprise_script_service/mruby/src/pool.c +0 -2
  259. data/ext/enterprise_script_service/mruby/src/print.c +0 -1
  260. data/ext/enterprise_script_service/mruby/src/proc.c +47 -48
  261. data/ext/enterprise_script_service/mruby/src/range.c +22 -35
  262. data/ext/enterprise_script_service/mruby/src/state.c +5 -94
  263. data/ext/enterprise_script_service/mruby/src/string.c +941 -759
  264. data/ext/enterprise_script_service/mruby/src/symbol.c +73 -48
  265. data/ext/enterprise_script_service/mruby/src/variable.c +58 -38
  266. data/ext/enterprise_script_service/mruby/src/vm.c +133 -304
  267. data/ext/enterprise_script_service/mruby/tasks/doc.rake +48 -0
  268. data/ext/enterprise_script_service/mruby/tasks/gitlab.rake +2 -2
  269. data/ext/enterprise_script_service/mruby/tasks/libmruby.rake +1 -1
  270. data/ext/enterprise_script_service/mruby/tasks/mrbgems.rake +2 -2
  271. data/ext/enterprise_script_service/mruby/tasks/toolchains/android.rake +2 -2
  272. data/ext/enterprise_script_service/mruby/tasks/toolchains/clang.rake +3 -4
  273. data/ext/enterprise_script_service/mruby/tasks/toolchains/gcc.rake +20 -19
  274. data/ext/enterprise_script_service/mruby/tasks/toolchains/visualcpp.rake +0 -12
  275. data/ext/enterprise_script_service/mruby/test/assert.rb +186 -25
  276. data/ext/enterprise_script_service/mruby/test/t/array.rb +34 -6
  277. data/ext/enterprise_script_service/mruby/test/t/class.rb +26 -0
  278. data/ext/enterprise_script_service/mruby/test/t/enumerable.rb +2 -2
  279. data/ext/enterprise_script_service/mruby/test/t/exception.rb +3 -1
  280. data/ext/enterprise_script_service/mruby/test/t/float.rb +17 -17
  281. data/ext/enterprise_script_service/mruby/test/t/hash.rb +2 -0
  282. data/ext/enterprise_script_service/mruby/test/t/integer.rb +14 -6
  283. data/ext/enterprise_script_service/mruby/test/t/kernel.rb +38 -19
  284. data/ext/enterprise_script_service/mruby/test/t/module.rb +87 -14
  285. data/ext/enterprise_script_service/mruby/test/t/numeric.rb +65 -23
  286. data/ext/enterprise_script_service/mruby/test/t/range.rb +4 -4
  287. data/ext/enterprise_script_service/mruby/test/t/string.rb +247 -71
  288. data/ext/enterprise_script_service/mruby/test/t/syntax.rb +29 -2
  289. data/ext/enterprise_script_service/mruby/test/t/vformat.rb +58 -0
  290. data/ext/enterprise_script_service/mruby/travis_config.rb +3 -2
  291. data/ext/enterprise_script_service/mruby_config.rb +16 -0
  292. data/ext/enterprise_script_service/mruby_engine.cpp +2 -2
  293. data/ext/enterprise_script_service/mruby_engine.gembox +1 -0
  294. data/ext/enterprise_script_service/msgpack/.travis.yml +19 -0
  295. data/ext/enterprise_script_service/msgpack/CHANGELOG.md +26 -0
  296. data/ext/enterprise_script_service/msgpack/CMakeLists.txt +11 -14
  297. data/ext/enterprise_script_service/msgpack/Files.cmake +4 -0
  298. data/ext/enterprise_script_service/msgpack/QUICKSTART-CPP.md +3 -3
  299. data/ext/enterprise_script_service/msgpack/README.md +2 -2
  300. data/ext/enterprise_script_service/msgpack/appveyor.yml +1 -1
  301. data/ext/enterprise_script_service/msgpack/ci/build_cmake.sh +35 -0
  302. data/ext/enterprise_script_service/msgpack/ci/build_cmake_embedded.sh +59 -0
  303. data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_msgpack_tuple.hpp.erb +1 -1
  304. data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_msgpack_tuple_decl.hpp.erb +1 -1
  305. data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_zone.hpp.erb +3 -3
  306. data/ext/enterprise_script_service/msgpack/example/boost/asio_send_recv.cpp +1 -1
  307. data/ext/enterprise_script_service/msgpack/example/boost/msgpack_variant_mapbased.cpp +2 -1
  308. data/ext/enterprise_script_service/msgpack/example/c/CMakeLists.txt +1 -10
  309. data/ext/enterprise_script_service/msgpack/example/cmake/CMakeLists.txt +17 -0
  310. data/ext/enterprise_script_service/msgpack/example/cpp03/class_intrusive.cpp +3 -2
  311. data/ext/enterprise_script_service/msgpack/example/cpp03/class_intrusive_map.cpp +2 -1
  312. data/ext/enterprise_script_service/msgpack/example/cpp03/class_non_intrusive.cpp +3 -2
  313. data/ext/enterprise_script_service/msgpack/example/cpp03/map_based_versionup.cpp +2 -1
  314. data/ext/enterprise_script_service/msgpack/example/cpp03/reuse_zone.cpp +3 -2
  315. data/ext/enterprise_script_service/msgpack/example/cpp11/container.cpp +18 -9
  316. data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp11/timespec.hpp +16 -0
  317. data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/wstring.hpp +15 -0
  318. data/ext/enterprise_script_service/msgpack/include/msgpack/fbuffer.h +1 -1
  319. data/ext/enterprise_script_service/msgpack/include/msgpack/object.h +2 -0
  320. data/ext/enterprise_script_service/msgpack/include/msgpack/pack_template.h +17 -9
  321. data/ext/enterprise_script_service/msgpack/include/msgpack/sysdep.h +28 -17
  322. data/ext/enterprise_script_service/msgpack/include/msgpack/type.hpp +2 -0
  323. data/ext/enterprise_script_service/msgpack/include/msgpack/unpack_template.h +5 -0
  324. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/array_ref.hpp +0 -1
  325. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/check_container_size.hpp +1 -1
  326. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/chrono.hpp +5 -5
  327. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/timespec.hpp +140 -0
  328. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp03_msgpack_tuple.hpp +32 -32
  329. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp03_msgpack_tuple_decl.hpp +32 -32
  330. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp11_msgpack_tuple.hpp +6 -6
  331. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp11_msgpack_tuple_decl.hpp +10 -10
  332. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/ext.hpp +1 -1
  333. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/fixint.hpp +5 -4
  334. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/int.hpp +40 -13
  335. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/int_decl.hpp +3 -2
  336. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/wstring.hpp +121 -0
  337. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/detail/cpp03_zone.hpp +3 -3
  338. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/detail/cpp11_zone.hpp +3 -3
  339. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/object.hpp +6 -6
  340. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/object_fwd.hpp +1 -1
  341. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/pack.hpp +40 -5
  342. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/unpack.hpp +24 -17
  343. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/vrefbuffer.hpp +7 -7
  344. data/ext/enterprise_script_service/msgpack/include/msgpack/v1/zbuffer.hpp +6 -5
  345. data/ext/enterprise_script_service/msgpack/include/msgpack/v2/adaptor/int_decl.hpp +1 -1
  346. data/ext/enterprise_script_service/msgpack/include/msgpack/v2/create_object_visitor.hpp +12 -7
  347. data/ext/enterprise_script_service/msgpack/include/msgpack/v2/parse.hpp +13 -15
  348. data/ext/enterprise_script_service/msgpack/include/msgpack/v2/x3_parse.hpp +28 -26
  349. data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/int_decl.hpp +1 -1
  350. data/ext/enterprise_script_service/msgpack/include/msgpack/v3/parse.hpp +13 -15
  351. data/ext/enterprise_script_service/msgpack/include/msgpack/version_master.h +1 -1
  352. data/ext/enterprise_script_service/msgpack/include/msgpack/vrefbuffer.h +1 -1
  353. data/ext/enterprise_script_service/msgpack/include/msgpack/zbuffer.h +7 -6
  354. data/ext/enterprise_script_service/msgpack/include/msgpack/zone.h +1 -1
  355. data/ext/enterprise_script_service/msgpack/msgpack-config.cmake.in +2 -5
  356. data/ext/enterprise_script_service/msgpack/src/objectc.c +83 -148
  357. data/ext/enterprise_script_service/msgpack/src/unpack.c +73 -47
  358. data/ext/enterprise_script_service/msgpack/test/CMakeLists.txt +1 -1
  359. data/ext/enterprise_script_service/msgpack/test/array_ref.cpp +21 -8
  360. data/ext/enterprise_script_service/msgpack/test/boost_fusion.cpp +15 -5
  361. data/ext/enterprise_script_service/msgpack/test/boost_optional.cpp +17 -5
  362. data/ext/enterprise_script_service/msgpack/test/boost_string_ref.cpp +9 -1
  363. data/ext/enterprise_script_service/msgpack/test/boost_string_view.cpp +8 -1
  364. data/ext/enterprise_script_service/msgpack/test/boost_variant.cpp +47 -25
  365. data/ext/enterprise_script_service/msgpack/test/buffer.cpp +7 -0
  366. data/ext/enterprise_script_service/msgpack/test/carray.cpp +23 -8
  367. data/ext/enterprise_script_service/msgpack/test/cases.cpp +7 -1
  368. data/ext/enterprise_script_service/msgpack/test/convert.cpp +6 -0
  369. data/ext/enterprise_script_service/msgpack/test/fixint.cpp +7 -1
  370. data/ext/enterprise_script_service/msgpack/test/fixint_c.cpp +6 -1
  371. data/ext/enterprise_script_service/msgpack/test/fuzz_unpack_pack_fuzzer_cpp11.cpp +5 -0
  372. data/ext/enterprise_script_service/msgpack/test/iterator_cpp11.cpp +8 -2
  373. data/ext/enterprise_script_service/msgpack/test/json.cpp +6 -0
  374. data/ext/enterprise_script_service/msgpack/test/limit.cpp +7 -0
  375. data/ext/enterprise_script_service/msgpack/test/msgpack_basic.cpp +128 -6
  376. data/ext/enterprise_script_service/msgpack/test/msgpack_c.cpp +49 -2
  377. data/ext/enterprise_script_service/msgpack/test/msgpack_container.cpp +20 -3
  378. data/ext/enterprise_script_service/msgpack/test/msgpack_cpp11.cpp +167 -2
  379. data/ext/enterprise_script_service/msgpack/test/msgpack_cpp17.cpp +27 -11
  380. data/ext/enterprise_script_service/msgpack/test/msgpack_stream.cpp +8 -3
  381. data/ext/enterprise_script_service/msgpack/test/msgpack_tuple.cpp +6 -0
  382. data/ext/enterprise_script_service/msgpack/test/msgpack_vref.cpp +5 -0
  383. data/ext/enterprise_script_service/msgpack/test/msgpack_x3_parse.cpp +23 -18
  384. data/ext/enterprise_script_service/msgpack/test/object.cpp +77 -45
  385. data/ext/enterprise_script_service/msgpack/test/object_with_zone.cpp +28 -10
  386. data/ext/enterprise_script_service/msgpack/test/pack_unpack.cpp +25 -18
  387. data/ext/enterprise_script_service/msgpack/test/pack_unpack_c.cpp +7 -0
  388. data/ext/enterprise_script_service/msgpack/test/raw.cpp +29 -24
  389. data/ext/enterprise_script_service/msgpack/test/reference.cpp +6 -0
  390. data/ext/enterprise_script_service/msgpack/test/reference_cpp11.cpp +6 -0
  391. data/ext/enterprise_script_service/msgpack/test/reference_wrapper_cpp11.cpp +12 -3
  392. data/ext/enterprise_script_service/msgpack/test/shared_ptr_cpp11.cpp +12 -3
  393. data/ext/enterprise_script_service/msgpack/test/size_equal_only.cpp +16 -7
  394. data/ext/enterprise_script_service/msgpack/test/streaming.cpp +10 -3
  395. data/ext/enterprise_script_service/msgpack/test/streaming_c.cpp +7 -0
  396. data/ext/enterprise_script_service/msgpack/test/unique_ptr_cpp11.cpp +12 -3
  397. data/ext/enterprise_script_service/msgpack/test/user_class.cpp +5 -0
  398. data/ext/enterprise_script_service/msgpack/test/version.cpp +6 -0
  399. data/ext/enterprise_script_service/msgpack/test/visitor.cpp +9 -1
  400. data/ext/enterprise_script_service/msgpack/test/zone.cpp +6 -0
  401. data/lib/script_core/engine.rb +24 -5
  402. data/lib/script_core/executable.rb +4 -3
  403. data/lib/script_core/result.rb +1 -5
  404. data/lib/script_core/service_channel.rb +1 -0
  405. data/lib/script_core/version.rb +1 -1
  406. data/lib/tasks/mruby/engine.gembox.example +1 -0
  407. data/lib/tasks/script_core.rake +24 -4
  408. data/script_core.gemspec +2 -4
  409. data/spec/dummy/app/helpers/fields_helper.rb +2 -2
  410. data/spec/dummy/app/lib/script_engine.rb +65 -6
  411. data/spec/dummy/app/models/concerns/enum_attribute_localizable.rb +1 -1
  412. data/spec/dummy/bin/bundle +111 -2
  413. data/spec/dummy/mruby/engine.gembox +1 -0
  414. data/spec/script_core_spec.rb +1 -1
  415. data/spec/spec_helper.rb +0 -1
  416. metadata +44 -1098
  417. data/bin/bundler +0 -17
  418. data/bin/pry +0 -17
  419. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/.gitignore +0 -1
  420. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/.travis.yml +0 -2
  421. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/run_test.rb +0 -26
  422. data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/mrblib/kernel.rb +0 -15
  423. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/mrblib/unbound_method.rb +0 -9
  424. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/.gitignore +0 -5
  425. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/.travis.yml +0 -2
  426. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/packtest.rb +0 -157
  427. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/run_test.rb +0 -26
  428. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/mt19937ar.c +0 -224
  429. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/mt19937ar.h +0 -80
  430. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/random.h +0 -12
  431. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/.gitignore +0 -4
  432. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/.travis.yml +0 -29
  433. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/.travis_build_config.rb +0 -6
  434. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/Rakefile +0 -29
  435. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/.travis.yml +0 -4
  436. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/run_test.rb +0 -28
  437. data/ext/enterprise_script_service/msgpack/external/boost/predef/.gitattributes +0 -96
  438. data/ext/enterprise_script_service/msgpack/external/boost/predef/.gitignore +0 -3
  439. data/ext/enterprise_script_service/msgpack/external/boost/predef/.project +0 -17
  440. data/ext/enterprise_script_service/msgpack/external/boost/predef/.pydevproject +0 -5
  441. data/ext/enterprise_script_service/msgpack/external/boost/predef/.travis.yml +0 -109
  442. data/ext/enterprise_script_service/msgpack/external/boost/predef/appveyor.yml +0 -149
  443. data/ext/enterprise_script_service/msgpack/external/boost/predef/build.jam +0 -6
  444. data/ext/enterprise_script_service/msgpack/external/boost/predef/check/predef.jam +0 -17
  445. data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/.gitignore +0 -1
  446. data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/build.jam +0 -100
  447. data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/hardware_simd.qbk +0 -89
  448. data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/history.qbk +0 -93
  449. data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/predef.qbk +0 -734
  450. data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/todo.qbk +0 -12
  451. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/detail/endian.hpp +0 -11
  452. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef.h +0 -24
  453. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture.h +0 -33
  454. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/alpha.h +0 -59
  455. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/arm.h +0 -80
  456. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/blackfin.h +0 -46
  457. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/convex.h +0 -65
  458. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/ia64.h +0 -49
  459. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/m68k.h +0 -82
  460. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/mips.h +0 -73
  461. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/parisc.h +0 -64
  462. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/ppc.h +0 -72
  463. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/ptx.h +0 -44
  464. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/pyramid.h +0 -42
  465. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/rs6k.h +0 -56
  466. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/sparc.h +0 -54
  467. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/superh.h +0 -67
  468. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/sys370.h +0 -43
  469. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/sys390.h +0 -43
  470. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/x86.h +0 -38
  471. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/x86/32.h +0 -87
  472. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/x86/64.h +0 -50
  473. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/z.h +0 -42
  474. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler.h +0 -44
  475. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/borland.h +0 -63
  476. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/clang.h +0 -56
  477. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/comeau.h +0 -61
  478. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/compaq.h +0 -66
  479. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/diab.h +0 -56
  480. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/digitalmars.h +0 -56
  481. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/dignus.h +0 -56
  482. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/edg.h +0 -56
  483. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/ekopath.h +0 -57
  484. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/gcc.h +0 -68
  485. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/gcc_xml.h +0 -53
  486. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/greenhills.h +0 -66
  487. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/hp_acc.h +0 -61
  488. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/iar.h +0 -56
  489. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/ibm.h +0 -72
  490. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/intel.h +0 -79
  491. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/kai.h +0 -56
  492. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/llvm.h +0 -57
  493. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/metaware.h +0 -53
  494. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/metrowerks.h +0 -77
  495. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/microtec.h +0 -53
  496. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/mpw.h +0 -63
  497. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/nvcc.h +0 -60
  498. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/palm.h +0 -56
  499. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/pgi.h +0 -60
  500. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/sgi_mipspro.h +0 -66
  501. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/sunpro.h +0 -76
  502. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/tendra.h +0 -53
  503. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/visualc.h +0 -105
  504. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/watcom.h +0 -56
  505. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/_cassert.h +0 -17
  506. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/_exception.h +0 -15
  507. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/comp_detected.h +0 -10
  508. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/endian_compat.h +0 -26
  509. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/os_detected.h +0 -10
  510. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/platform_detected.h +0 -10
  511. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/test.h +0 -17
  512. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/test_def.h +0 -71
  513. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware.h +0 -16
  514. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd.h +0 -119
  515. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/arm.h +0 -59
  516. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/arm/versions.h +0 -32
  517. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/ppc.h +0 -69
  518. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/ppc/versions.h +0 -51
  519. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86.h +0 -123
  520. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86/versions.h +0 -129
  521. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86_amd.h +0 -87
  522. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86_amd/versions.h +0 -51
  523. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language.h +0 -18
  524. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/cuda.h +0 -52
  525. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/objc.h +0 -42
  526. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/stdc.h +0 -53
  527. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/stdcpp.h +0 -121
  528. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library.h +0 -16
  529. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c.h +0 -21
  530. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/_prefix.h +0 -13
  531. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/cloudabi.h +0 -53
  532. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/gnu.h +0 -61
  533. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/uc.h +0 -47
  534. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/vms.h +0 -47
  535. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/zos.h +0 -56
  536. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std.h +0 -25
  537. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/_prefix.h +0 -23
  538. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/cxx.h +0 -46
  539. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/dinkumware.h +0 -52
  540. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/libcomo.h +0 -47
  541. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/modena.h +0 -45
  542. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/msl.h +0 -53
  543. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/roguewave.h +0 -56
  544. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/sgi.h +0 -51
  545. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/stdcpp3.h +0 -53
  546. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/stlport.h +0 -59
  547. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/vacpp.h +0 -44
  548. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/make.h +0 -97
  549. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os.h +0 -33
  550. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/aix.h +0 -66
  551. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/amigaos.h +0 -46
  552. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/android.h +0 -45
  553. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/beos.h +0 -45
  554. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd.h +0 -103
  555. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/bsdi.h +0 -48
  556. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/dragonfly.h +0 -50
  557. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/free.h +0 -67
  558. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/net.h +0 -84
  559. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/open.h +0 -251
  560. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/cygwin.h +0 -45
  561. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/haiku.h +0 -46
  562. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/hpux.h +0 -47
  563. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/ios.h +0 -51
  564. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/irix.h +0 -46
  565. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/linux.h +0 -46
  566. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/macos.h +0 -65
  567. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/os400.h +0 -45
  568. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/qnxnto.h +0 -59
  569. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/solaris.h +0 -46
  570. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/unix.h +0 -76
  571. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/vms.h +0 -52
  572. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/windows.h +0 -51
  573. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/other.h +0 -16
  574. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/other/endian.h +0 -203
  575. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/other/workaround.h +0 -87
  576. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform.h +0 -28
  577. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/cloudabi.h +0 -43
  578. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/ios.h +0 -58
  579. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/mingw.h +0 -69
  580. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/mingw32.h +0 -63
  581. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/mingw64.h +0 -63
  582. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_desktop.h +0 -51
  583. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_phone.h +0 -48
  584. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_runtime.h +0 -53
  585. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_server.h +0 -47
  586. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_store.h +0 -50
  587. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_system.h +0 -47
  588. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_uwp.h +0 -60
  589. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/version.h +0 -15
  590. data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/version_number.h +0 -72
  591. data/ext/enterprise_script_service/msgpack/external/boost/predef/index.html +0 -14
  592. data/ext/enterprise_script_service/msgpack/external/boost/predef/meta/libraries.json +0 -14
  593. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/.gitignore +0 -3
  594. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/build.jam +0 -80
  595. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/check_value.cpp +0 -26
  596. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_c.c +0 -7
  597. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_cpp.cpp +0 -7
  598. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_objc.m +0 -7
  599. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_objcpp.mm +0 -7
  600. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/macos_endian.c +0 -21
  601. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/macos_vs_bsd.c +0 -19
  602. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/make.cpp +0 -94
  603. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/platform_windows.cpp +0 -177
  604. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/predef_info.h +0 -46
  605. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/tested_at.cpp +0 -62
  606. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/tested_at_outdated.cpp +0 -18
  607. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/version.cpp +0 -83
  608. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/workaround.cpp +0 -62
  609. data/ext/enterprise_script_service/msgpack/external/boost/predef/test/workaround_strict_config.cpp +0 -17
  610. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/build.jam +0 -9
  611. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef.jam +0 -202
  612. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check.h +0 -98
  613. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_c.c +0 -7
  614. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_cpp.cpp +0 -7
  615. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_objc.m +0 -7
  616. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_objcpp.mm +0 -7
  617. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc.h +0 -19
  618. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_c.c +0 -7
  619. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_cpp.cpp +0 -7
  620. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_objc.m +0 -7
  621. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_objcpp.mm +0 -7
  622. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/ci/build_log.py +0 -428
  623. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/ci/common.py +0 -878
  624. data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/ci/library_test.py +0 -198
  625. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/.gitattributes +0 -96
  626. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/.travis.yml +0 -39
  627. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/appveyor.yml +0 -36
  628. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html +0 -2494
  629. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/acknowledgements.html +0 -58
  630. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/bibliography.html +0 -58
  631. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/contents.html +0 -38
  632. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data.html +0 -27
  633. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/arrays.html +0 -55
  634. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/lists.html +0 -42
  635. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/sequences.html +0 -60
  636. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/tuples.html +0 -42
  637. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples.html +0 -27
  638. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/array_arithmetic.c +0 -196
  639. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/catch_builtin.cpp +0 -51
  640. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/delay.c +0 -95
  641. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/duffs_device.c +0 -61
  642. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/is_integral.cpp +0 -49
  643. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/linear_fib.c +0 -91
  644. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers.html +0 -249
  645. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic.html +0 -36
  646. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/add.html +0 -31
  647. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/dec.html +0 -30
  648. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/div.html +0 -31
  649. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/inc.html +0 -30
  650. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/mod.html +0 -31
  651. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/mul.html +0 -31
  652. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/sub.html +0 -31
  653. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array.html +0 -43
  654. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/data.html +0 -30
  655. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/elem.html +0 -30
  656. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/enum.html +0 -24
  657. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/insert.html +0 -31
  658. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/pop_back.html +0 -31
  659. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/pop_front.html +0 -31
  660. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/push_back.html +0 -30
  661. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/push_front.html +0 -30
  662. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/remove.html +0 -31
  663. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/replace.html +0 -31
  664. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/reverse.html +0 -30
  665. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/size.html +0 -30
  666. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/to_list.html +0 -24
  667. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/to_seq.html +0 -24
  668. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/to_tuple.html +0 -24
  669. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/assert_msg.html +0 -31
  670. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/cat.html +0 -30
  671. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comma.html +0 -31
  672. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comma_if.html +0 -31
  673. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison.html +0 -35
  674. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/equal.html +0 -31
  675. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/greater.html +0 -31
  676. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/greater_equal.html +0 -31
  677. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/less.html +0 -31
  678. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/less_equal.html +0 -31
  679. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/not_equal.html +0 -31
  680. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/config/limits.html +0 -44
  681. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/config/variadics.html +0 -32
  682. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control.html +0 -35
  683. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/deduce_d.html +0 -30
  684. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/expr_if.html +0 -30
  685. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/expr_iif.html +0 -30
  686. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/if.html +0 -30
  687. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/iif.html +0 -30
  688. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/while.html +0 -31
  689. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/debug.html +0 -31
  690. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/debug/assert.html +0 -31
  691. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/debug/line.html +0 -30
  692. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/dec.html +0 -31
  693. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/empty.html +0 -31
  694. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum.html +0 -31
  695. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum_params.html +0 -31
  696. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum_shifted.html +0 -31
  697. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum_shifted_params.html +0 -31
  698. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/epwad.html +0 -31
  699. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/epwd.html +0 -31
  700. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/expand.html +0 -31
  701. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/expr_if.html +0 -31
  702. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities.html +0 -34
  703. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/apply.html +0 -30
  704. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/empty.html +0 -30
  705. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/expand.html +0 -30
  706. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/identity.html +0 -32
  707. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/intercept.html +0 -30
  708. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/overload.html +0 -28
  709. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/for.html +0 -31
  710. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/identity.html +0 -31
  711. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/if.html +0 -31
  712. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/inc.html +0 -31
  713. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iterate.html +0 -31
  714. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration.html +0 -32
  715. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration/iterate.html +0 -43
  716. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration/local.html +0 -30
  717. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration/self.html +0 -30
  718. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/library.html +0 -26
  719. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/limits.html +0 -31
  720. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list.html +0 -47
  721. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/adt.html +0 -35
  722. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/append.html +0 -31
  723. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/at.html +0 -31
  724. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/cat.html +0 -31
  725. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/enum.html +0 -31
  726. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/filter.html +0 -31
  727. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/first_n.html +0 -31
  728. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/fold_left.html +0 -34
  729. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/fold_right.html +0 -34
  730. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/for_each.html +0 -31
  731. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/for_each_i.html +0 -31
  732. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/for_each_product.html +0 -31
  733. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/rest_n.html +0 -31
  734. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/reverse.html +0 -31
  735. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/size.html +0 -31
  736. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/to_array.html +0 -29
  737. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/to_seq.html +0 -25
  738. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/to_tuple.html +0 -31
  739. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/transform.html +0 -31
  740. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical.html +0 -40
  741. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/and.html +0 -30
  742. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitand.html +0 -30
  743. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitnor.html +0 -30
  744. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitor.html +0 -30
  745. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitxor.html +0 -30
  746. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bool.html +0 -30
  747. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/compl.html +0 -30
  748. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/nor.html +0 -30
  749. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/not.html +0 -30
  750. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/or.html +0 -30
  751. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/xor.html +0 -30
  752. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/max.html +0 -31
  753. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/min.html +0 -31
  754. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/preprocessor.html +0 -26
  755. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation.html +0 -33
  756. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/comma.html +0 -30
  757. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/comma_if.html +0 -30
  758. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/is_begin_parens.html +0 -26
  759. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/paren.html +0 -31
  760. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/paren_if.html +0 -31
  761. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/remove_parens.html +0 -26
  762. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat.html +0 -31
  763. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_2nd.html +0 -31
  764. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_3rd.html +0 -31
  765. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_from_to.html +0 -31
  766. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_from_to_2nd.html +0 -31
  767. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_from_to_3rd.html +0 -31
  768. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition.html +0 -44
  769. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/deduce_r.html +0 -30
  770. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/deduce_z.html +0 -30
  771. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum.html +0 -31
  772. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_binary_params.html +0 -31
  773. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_params.html +0 -31
  774. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_shifted.html +0 -31
  775. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_shifted_params.html +0 -31
  776. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_trailing.html +0 -31
  777. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_trailing_params.html +0 -31
  778. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/epwad.html +0 -30
  779. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/epwd.html +0 -30
  780. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/esbp.html +0 -31
  781. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/etbp.html +0 -31
  782. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/for.html +0 -31
  783. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/repeat.html +0 -34
  784. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/repeat_from_to.html +0 -36
  785. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/selection.html +0 -31
  786. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/selection/max.html +0 -31
  787. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/selection/min.html +0 -31
  788. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq.html +0 -86
  789. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/cat.html +0 -38
  790. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/elem.html +0 -35
  791. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/enum.html +0 -35
  792. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/filter.html +0 -37
  793. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/first_n.html +0 -36
  794. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/fold_left.html +0 -38
  795. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/fold_right.html +0 -38
  796. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/for_each.html +0 -38
  797. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/for_each_i.html +0 -38
  798. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/for_each_product.html +0 -38
  799. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/insert.html +0 -35
  800. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/pop_back.html +0 -36
  801. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/pop_front.html +0 -36
  802. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/push_back.html +0 -35
  803. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/push_front.html +0 -35
  804. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/remove.html +0 -35
  805. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/replace.html +0 -35
  806. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/rest_n.html +0 -36
  807. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/reverse.html +0 -37
  808. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/seq.html +0 -39
  809. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/size.html +0 -35
  810. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/subseq.html +0 -35
  811. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/to_array.html +0 -36
  812. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/to_list.html +0 -30
  813. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/to_tuple.html +0 -36
  814. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/transform.html +0 -37
  815. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/variadic_seq_to_seq.html +0 -34
  816. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/slot.html +0 -30
  817. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/slot/counter.html +0 -31
  818. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/slot/slot.html +0 -31
  819. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/stringize.html +0 -30
  820. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple.html +0 -59
  821. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/eat.html +0 -25
  822. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/elem.html +0 -25
  823. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/enum.html +0 -25
  824. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/insert.html +0 -27
  825. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/pop_back.html +0 -28
  826. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/pop_front.html +0 -28
  827. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/push_back.html +0 -26
  828. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/push_front.html +0 -26
  829. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/rem.html +0 -27
  830. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/remove.html +0 -27
  831. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/replace.html +0 -28
  832. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/reverse.html +0 -25
  833. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/size.html +0 -25
  834. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/to_array.html +0 -25
  835. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/to_list.html +0 -25
  836. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/to_seq.html +0 -31
  837. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic.html +0 -33
  838. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/elem.html +0 -29
  839. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/size.html +0 -25
  840. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_array.html +0 -25
  841. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_list.html +0 -25
  842. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_seq.html +0 -30
  843. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_tuple.html +0 -31
  844. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/while.html +0 -31
  845. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/wstringize.html +0 -30
  846. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/index.html +0 -23
  847. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/miscellanea.html +0 -24
  848. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref.html +0 -319
  849. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/add.html +0 -68
  850. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/add_d.html +0 -90
  851. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/and.html +0 -64
  852. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/apply.html +0 -64
  853. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_data.html +0 -49
  854. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_elem.html +0 -51
  855. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_enum.html +0 -37
  856. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_insert.html +0 -71
  857. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_insert_d.html +0 -63
  858. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_back.html +0 -59
  859. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_back_z.html +0 -51
  860. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_front.html +0 -51
  861. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_front_z.html +0 -51
  862. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_push_back.html +0 -49
  863. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_push_front.html +0 -49
  864. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_remove.html +0 -60
  865. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_remove_d.html +0 -51
  866. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_replace.html +0 -64
  867. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_replace_d.html +0 -55
  868. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_reverse.html +0 -45
  869. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_size.html +0 -45
  870. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_to_list.html +0 -41
  871. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_to_seq.html +0 -37
  872. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_to_tuple.html +0 -39
  873. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/assert.html +0 -114
  874. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/assert_msg.html +0 -66
  875. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/assign_slot.html +0 -61
  876. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitand.html +0 -65
  877. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitnor.html +0 -65
  878. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitor.html +0 -65
  879. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitxor.html +0 -66
  880. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bool.html +0 -54
  881. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/cat.html +0 -57
  882. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/comma.html +0 -43
  883. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/comma_if.html +0 -60
  884. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/compl.html +0 -58
  885. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/config_extended_line_info.html +0 -54
  886. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/counter.html +0 -58
  887. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/dec.html +0 -54
  888. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/deduce_d.html +0 -82
  889. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/deduce_r.html +0 -48
  890. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/deduce_z.html +0 -48
  891. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/div.html +0 -63
  892. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/div_d.html +0 -85
  893. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/empty.html +0 -47
  894. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum.html +0 -80
  895. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_binary_params.html +0 -76
  896. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_binary_params_z.html +0 -93
  897. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params.html +0 -69
  898. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params_with_a_default.html +0 -83
  899. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params_with_defaults.html +0 -84
  900. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params_z.html +0 -82
  901. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted.html +0 -82
  902. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted_params.html +0 -73
  903. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted_params_z.html +0 -79
  904. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted_z.html +0 -93
  905. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing.html +0 -83
  906. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing_params.html +0 -66
  907. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing_params_z.html +0 -81
  908. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing_z.html +0 -96
  909. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_z.html +0 -96
  910. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/equal.html +0 -64
  911. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/equal_d.html +0 -69
  912. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/esbp.html +0 -65
  913. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/esbpz.html +0 -67
  914. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/etbp.html +0 -83
  915. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/etbpz.html +0 -67
  916. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/expand.html +0 -67
  917. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/expr_if.html +0 -70
  918. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/expr_iif.html +0 -67
  919. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/filename_x.html +0 -52
  920. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/for.html +0 -105
  921. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/for_r.html +0 -148
  922. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/for_r_macros.html +0 -44
  923. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_finish.html +0 -42
  924. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_flags.html +0 -42
  925. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_iteration.html +0 -73
  926. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_start.html +0 -42
  927. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater.html +0 -65
  928. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater_d.html +0 -69
  929. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater_equal.html +0 -65
  930. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater_equal_d.html +0 -69
  931. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/identity.html +0 -57
  932. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/identity_n.html +0 -58
  933. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/if.html +0 -63
  934. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iif.html +0 -66
  935. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/inc.html +0 -54
  936. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/include_self.html +0 -101
  937. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/indirect_self.html +0 -45
  938. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/intercept.html +0 -51
  939. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/is_begin_parens.html +0 -47
  940. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/is_iterating.html +0 -38
  941. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/is_selfish.html +0 -38
  942. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iterate.html +0 -83
  943. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration.html +0 -55
  944. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_depth.html +0 -73
  945. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_finish.html +0 -57
  946. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_flags.html +0 -68
  947. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_limits.html +0 -59
  948. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_params_x.html +0 -77
  949. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_start.html +0 -57
  950. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less.html +0 -65
  951. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less_d.html +0 -70
  952. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less_equal.html +0 -65
  953. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less_equal_d.html +0 -70
  954. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_dim.html +0 -35
  955. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_for.html +0 -34
  956. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_iteration.html +0 -34
  957. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_iteration_dim.html +0 -34
  958. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_mag.html +0 -34
  959. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_repeat.html +0 -39
  960. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_seq.html +0 -41
  961. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_slot_count.html +0 -34
  962. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_slot_sig.html +0 -34
  963. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_tuple.html +0 -33
  964. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_variadic.html +0 -24
  965. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_while.html +0 -34
  966. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/line.html +0 -112
  967. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_append.html +0 -69
  968. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_append_d.html +0 -96
  969. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_at.html +0 -61
  970. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_at_d.html +0 -63
  971. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_cat.html +0 -58
  972. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_cat_d.html +0 -67
  973. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_cons.html +0 -87
  974. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_enum.html +0 -62
  975. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_enum_r.html +0 -69
  976. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_filter.html +0 -76
  977. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_filter_d.html +0 -86
  978. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_first.html +0 -62
  979. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_first_n.html +0 -62
  980. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_first_n_d.html +0 -71
  981. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left.html +0 -75
  982. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_2nd.html +0 -75
  983. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_2nd_d.html +0 -86
  984. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_d.html +0 -81
  985. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_d_old.html +0 -86
  986. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right.html +0 -79
  987. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_2nd.html +0 -79
  988. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_2nd_d.html +0 -86
  989. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_d.html +0 -81
  990. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_d_old.html +0 -90
  991. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each.html +0 -75
  992. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_i.html +0 -75
  993. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_i_r.html +0 -82
  994. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_product.html +0 -86
  995. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_product_r.html +0 -118
  996. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_r.html +0 -81
  997. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_is_cons.html +0 -51
  998. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_is_nil.html +0 -51
  999. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_nil.html +0 -68
  1000. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_rest.html +0 -62
  1001. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_rest_n.html +0 -62
  1002. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_rest_n_d.html +0 -71
  1003. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_reverse.html +0 -55
  1004. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_reverse_d.html +0 -63
  1005. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_size.html +0 -55
  1006. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_size_d.html +0 -67
  1007. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_array.html +0 -47
  1008. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_array_d.html +0 -34
  1009. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_seq.html +0 -44
  1010. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_seq_r.html +0 -32
  1011. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_tuple.html +0 -55
  1012. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_tuple_r.html +0 -62
  1013. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_transform.html +0 -78
  1014. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_transform_d.html +0 -86
  1015. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/local_iterate.html +0 -62
  1016. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/local_limits.html +0 -80
  1017. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/local_macro.html +0 -64
  1018. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/lparen.html +0 -52
  1019. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/lparen_if.html +0 -61
  1020. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/max.html +0 -64
  1021. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/max_d.html +0 -70
  1022. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/min.html +0 -64
  1023. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/min_d.html +0 -70
  1024. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mod.html +0 -63
  1025. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mod_d.html +0 -75
  1026. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mul.html +0 -68
  1027. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mul_d.html +0 -91
  1028. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/nil.html +0 -41
  1029. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/nor.html +0 -64
  1030. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/not.html +0 -59
  1031. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/not_equal.html +0 -64
  1032. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/not_equal_d.html +0 -69
  1033. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/or.html +0 -64
  1034. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/overload.html +0 -58
  1035. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_finish.html +0 -46
  1036. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_flags.html +0 -46
  1037. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_iteration.html +0 -101
  1038. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_start.html +0 -46
  1039. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/remove_parens.html +0 -44
  1040. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat.html +0 -80
  1041. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_1st.html +0 -82
  1042. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_2nd.html +0 -82
  1043. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_3rd.html +0 -82
  1044. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to.html +0 -102
  1045. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_1st.html +0 -91
  1046. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_2nd.html +0 -91
  1047. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_3rd.html +0 -91
  1048. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_d.html +0 -83
  1049. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_d_z.html +0 -84
  1050. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_z.html +0 -105
  1051. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_z.html +0 -92
  1052. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_z_macros.html +0 -45
  1053. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/rparen.html +0 -53
  1054. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/rparen_if.html +0 -61
  1055. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_cat.html +0 -64
  1056. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_cat_s.html +0 -60
  1057. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_elem.html +0 -59
  1058. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_enum.html +0 -66
  1059. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_filter.html +0 -93
  1060. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_filter_s.html +0 -79
  1061. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_first_n.html +0 -67
  1062. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_left.html +0 -90
  1063. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_left_s.html +0 -96
  1064. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_right.html +0 -92
  1065. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_right_s.html +0 -97
  1066. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each.html +0 -90
  1067. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_i.html +0 -91
  1068. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_i_r.html +0 -78
  1069. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_product.html +0 -100
  1070. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_product_r.html +0 -81
  1071. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_r.html +0 -77
  1072. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_head.html +0 -63
  1073. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_insert.html +0 -70
  1074. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_nil.html +0 -81
  1075. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_pop_back.html +0 -68
  1076. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_pop_front.html +0 -68
  1077. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_push_back.html +0 -76
  1078. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_push_front.html +0 -78
  1079. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_remove.html +0 -66
  1080. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_replace.html +0 -71
  1081. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_rest_n.html +0 -55
  1082. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_reverse.html +0 -68
  1083. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_reverse_s.html +0 -55
  1084. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_size.html +0 -55
  1085. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_subseq.html +0 -69
  1086. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_tail.html +0 -63
  1087. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_to_array.html +0 -55
  1088. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_to_list.html +0 -34
  1089. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_to_tuple.html +0 -55
  1090. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_transform.html +0 -93
  1091. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_transform_s.html +0 -79
  1092. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/slot.html +0 -60
  1093. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/stringize.html +0 -50
  1094. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/sub.html +0 -63
  1095. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/sub_d.html +0 -85
  1096. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_eat.html +0 -58
  1097. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_elem.html +0 -65
  1098. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_enum.html +0 -55
  1099. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_insert.html +0 -54
  1100. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_insert_d.html +0 -46
  1101. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_back.html +0 -48
  1102. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_back_z.html +0 -40
  1103. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_front.html +0 -47
  1104. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_front_z.html +0 -40
  1105. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_push_back.html +0 -39
  1106. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_push_front.html +0 -39
  1107. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_rem.html +0 -60
  1108. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_rem_ctor.html +0 -61
  1109. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_remove.html +0 -50
  1110. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_remove_d.html +0 -41
  1111. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_replace.html +0 -51
  1112. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_replace_d.html +0 -42
  1113. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_reverse.html +0 -61
  1114. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_size.html +0 -32
  1115. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_to_array.html +0 -50
  1116. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_to_list.html +0 -60
  1117. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_to_seq.html +0 -51
  1118. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/update_counter.html +0 -34
  1119. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/value.html +0 -37
  1120. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_elem.html +0 -42
  1121. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_seq_to_seq.html +0 -35
  1122. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_size.html +0 -33
  1123. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_array.html +0 -32
  1124. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_list.html +0 -31
  1125. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_seq.html +0 -32
  1126. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_tuple.html +0 -32
  1127. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadics.html +0 -30
  1128. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/while.html +0 -116
  1129. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/while_d.html +0 -117
  1130. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/while_d_macros.html +0 -89
  1131. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/wstringize.html +0 -49
  1132. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/xor.html +0 -64
  1133. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/styles.css +0 -87
  1134. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/syntax.html +0 -307
  1135. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/terms.html +0 -23
  1136. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/terms/evaluated.html +0 -27
  1137. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/terms/named_external.html +0 -25
  1138. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/title.html +0 -25
  1139. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/top.html +0 -32
  1140. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics.html +0 -27
  1141. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/evaluated_slots.html +0 -157
  1142. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/file_iteration.html +0 -1044
  1143. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/incompatible.html +0 -140
  1144. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/local_iteration.html +0 -156
  1145. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/motivation.html +0 -119
  1146. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/problems.html +0 -135
  1147. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/reentrancy.html +0 -298
  1148. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/techniques.html +0 -350
  1149. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/variadic_macros.html +0 -262
  1150. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor.hpp +0 -19
  1151. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic.hpp +0 -25
  1152. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/add.hpp +0 -51
  1153. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/dec.hpp +0 -289
  1154. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/detail/div_base.hpp +0 -61
  1155. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/div.hpp +0 -39
  1156. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/inc.hpp +0 -288
  1157. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/mod.hpp +0 -39
  1158. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/mul.hpp +0 -53
  1159. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/sub.hpp +0 -50
  1160. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array.hpp +0 -32
  1161. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/data.hpp +0 -28
  1162. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/detail/get_data.hpp +0 -55
  1163. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/elem.hpp +0 -29
  1164. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/enum.hpp +0 -33
  1165. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/insert.hpp +0 -55
  1166. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/pop_back.hpp +0 -37
  1167. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/pop_front.hpp +0 -38
  1168. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/push_back.hpp +0 -35
  1169. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/push_front.hpp +0 -35
  1170. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/remove.hpp +0 -54
  1171. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/replace.hpp +0 -49
  1172. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/reverse.hpp +0 -29
  1173. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/size.hpp +0 -28
  1174. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/to_list.hpp +0 -47
  1175. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/to_seq.hpp +0 -46
  1176. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/to_tuple.hpp +0 -33
  1177. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/assert_msg.hpp +0 -17
  1178. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/cat.hpp +0 -35
  1179. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comma.hpp +0 -17
  1180. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comma_if.hpp +0 -17
  1181. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison.hpp +0 -24
  1182. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/equal.hpp +0 -34
  1183. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/greater.hpp +0 -38
  1184. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/greater_equal.hpp +0 -38
  1185. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/less.hpp +0 -46
  1186. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/less_equal.hpp +0 -39
  1187. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/not_equal.hpp +0 -814
  1188. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/config/config.hpp +0 -106
  1189. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/config/limits.hpp +0 -30
  1190. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control.hpp +0 -22
  1191. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/deduce_d.hpp +0 -22
  1192. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/dmc/while.hpp +0 -536
  1193. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/edg/while.hpp +0 -534
  1194. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/msvc/while.hpp +0 -277
  1195. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/while.hpp +0 -536
  1196. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/expr_if.hpp +0 -30
  1197. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/expr_iif.hpp +0 -31
  1198. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/if.hpp +0 -30
  1199. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/iif.hpp +0 -34
  1200. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/while.hpp +0 -312
  1201. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug.hpp +0 -18
  1202. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug/assert.hpp +0 -44
  1203. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug/error.hpp +0 -33
  1204. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug/line.hpp +0 -35
  1205. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/dec.hpp +0 -17
  1206. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/auto_rec.hpp +0 -293
  1207. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/check.hpp +0 -48
  1208. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/dmc/auto_rec.hpp +0 -286
  1209. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/is_binary.hpp +0 -30
  1210. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/is_nullary.hpp +0 -30
  1211. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/is_unary.hpp +0 -30
  1212. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/null.hpp +0 -17
  1213. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/split.hpp +0 -35
  1214. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/empty.hpp +0 -17
  1215. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum.hpp +0 -17
  1216. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_params.hpp +0 -17
  1217. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_params_with_a_default.hpp +0 -17
  1218. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_params_with_defaults.hpp +0 -17
  1219. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_shifted.hpp +0 -17
  1220. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_shifted_params.hpp +0 -17
  1221. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/expand.hpp +0 -17
  1222. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/expr_if.hpp +0 -17
  1223. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities.hpp +0 -23
  1224. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/apply.hpp +0 -34
  1225. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/detail/is_empty.hpp +0 -55
  1226. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/empty.hpp +0 -23
  1227. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/expand.hpp +0 -28
  1228. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/identity.hpp +0 -27
  1229. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/intercept.hpp +0 -277
  1230. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_1.hpp +0 -23
  1231. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_empty.hpp +0 -56
  1232. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_empty_or_1.hpp +0 -31
  1233. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_empty_variadic.hpp +0 -57
  1234. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/overload.hpp +0 -25
  1235. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/for.hpp +0 -17
  1236. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/identity.hpp +0 -17
  1237. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/if.hpp +0 -17
  1238. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/inc.hpp +0 -17
  1239. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iterate.hpp +0 -17
  1240. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration.hpp +0 -19
  1241. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp +0 -99
  1242. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower2.hpp +0 -99
  1243. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower3.hpp +0 -99
  1244. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower4.hpp +0 -99
  1245. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower5.hpp +0 -99
  1246. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp +0 -99
  1247. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper2.hpp +0 -99
  1248. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper3.hpp +0 -99
  1249. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper4.hpp +0 -99
  1250. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper5.hpp +0 -99
  1251. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/finish.hpp +0 -99
  1252. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward1.hpp +0 -1342
  1253. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward2.hpp +0 -1338
  1254. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward3.hpp +0 -1338
  1255. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward4.hpp +0 -1338
  1256. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward5.hpp +0 -1338
  1257. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse1.hpp +0 -1296
  1258. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse2.hpp +0 -1296
  1259. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse3.hpp +0 -1296
  1260. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse4.hpp +0 -1296
  1261. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse5.hpp +0 -1296
  1262. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/local.hpp +0 -812
  1263. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/rlocal.hpp +0 -782
  1264. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/self.hpp +0 -21
  1265. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/start.hpp +0 -99
  1266. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/iterate.hpp +0 -82
  1267. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/local.hpp +0 -26
  1268. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/self.hpp +0 -19
  1269. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/library.hpp +0 -37
  1270. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/limits.hpp +0 -17
  1271. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list.hpp +0 -37
  1272. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/adt.hpp +0 -73
  1273. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/append.hpp +0 -40
  1274. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/at.hpp +0 -39
  1275. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/cat.hpp +0 -42
  1276. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/dmc/fold_left.hpp +0 -279
  1277. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/edg/fold_left.hpp +0 -536
  1278. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/edg/fold_right.hpp +0 -794
  1279. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/fold_left.hpp +0 -279
  1280. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/fold_right.hpp +0 -277
  1281. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/enum.hpp +0 -41
  1282. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/filter.hpp +0 -54
  1283. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/first_n.hpp +0 -58
  1284. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/fold_left.hpp +0 -303
  1285. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/fold_right.hpp +0 -40
  1286. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/for_each.hpp +0 -49
  1287. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/for_each_i.hpp +0 -65
  1288. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/for_each_product.hpp +0 -141
  1289. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/rest_n.hpp +0 -55
  1290. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/reverse.hpp +0 -40
  1291. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/size.hpp +0 -58
  1292. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/to_array.hpp +0 -155
  1293. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/to_seq.hpp +0 -32
  1294. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/to_tuple.hpp +0 -61
  1295. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/transform.hpp +0 -49
  1296. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical.hpp +0 -29
  1297. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/and.hpp +0 -30
  1298. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitand.hpp +0 -38
  1299. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitnor.hpp +0 -38
  1300. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitor.hpp +0 -38
  1301. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitxor.hpp +0 -38
  1302. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bool.hpp +0 -288
  1303. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/compl.hpp +0 -36
  1304. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/nor.hpp +0 -30
  1305. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/not.hpp +0 -30
  1306. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/or.hpp +0 -30
  1307. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/xor.hpp +0 -30
  1308. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/max.hpp +0 -17
  1309. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/min.hpp +0 -17
  1310. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation.hpp +0 -22
  1311. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/comma.hpp +0 -21
  1312. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/comma_if.hpp +0 -31
  1313. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/detail/is_begin_parens.hpp +0 -48
  1314. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/is_begin_parens.hpp +0 -51
  1315. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/paren.hpp +0 -23
  1316. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/paren_if.hpp +0 -38
  1317. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/remove_parens.hpp +0 -39
  1318. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat.hpp +0 -17
  1319. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_2nd.hpp +0 -17
  1320. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_3rd.hpp +0 -17
  1321. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_from_to.hpp +0 -17
  1322. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_from_to_2nd.hpp +0 -17
  1323. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_from_to_3rd.hpp +0 -17
  1324. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition.hpp +0 -32
  1325. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/deduce_r.hpp +0 -22
  1326. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/deduce_z.hpp +0 -22
  1327. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/dmc/for.hpp +0 -536
  1328. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/edg/for.hpp +0 -534
  1329. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/for.hpp +0 -536
  1330. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/msvc/for.hpp +0 -277
  1331. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum.hpp +0 -66
  1332. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_binary_params.hpp +0 -54
  1333. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_params.hpp +0 -41
  1334. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_params_with_a_default.hpp +0 -25
  1335. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_params_with_defaults.hpp +0 -24
  1336. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_shifted.hpp +0 -68
  1337. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_shifted_binary_params.hpp +0 -51
  1338. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_shifted_params.hpp +0 -44
  1339. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_trailing.hpp +0 -63
  1340. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_trailing_binary_params.hpp +0 -53
  1341. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_trailing_params.hpp +0 -38
  1342. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/for.hpp +0 -324
  1343. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/repeat.hpp +0 -825
  1344. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/repeat_from_to.hpp +0 -87
  1345. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/selection.hpp +0 -18
  1346. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/selection/max.hpp +0 -39
  1347. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/selection/min.hpp +0 -39
  1348. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq.hpp +0 -44
  1349. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/cat.hpp +0 -49
  1350. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/binary_transform.hpp +0 -47
  1351. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/is_empty.hpp +0 -49
  1352. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/split.hpp +0 -284
  1353. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/to_list_msvc.hpp +0 -55
  1354. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/elem.hpp +0 -304
  1355. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/enum.hpp +0 -288
  1356. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/filter.hpp +0 -54
  1357. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/first_n.hpp +0 -30
  1358. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/fold_left.hpp +0 -1070
  1359. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/fold_right.hpp +0 -288
  1360. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/for_each.hpp +0 -107
  1361. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/for_each_i.hpp +0 -109
  1362. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/for_each_product.hpp +0 -126
  1363. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/insert.hpp +0 -28
  1364. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/pop_back.hpp +0 -29
  1365. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/pop_front.hpp +0 -27
  1366. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/push_back.hpp +0 -19
  1367. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/push_front.hpp +0 -19
  1368. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/remove.hpp +0 -29
  1369. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/replace.hpp +0 -45
  1370. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/rest_n.hpp +0 -46
  1371. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/reverse.hpp +0 -39
  1372. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/seq.hpp +0 -44
  1373. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/size.hpp +0 -548
  1374. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/subseq.hpp +0 -28
  1375. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/to_array.hpp +0 -28
  1376. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/to_list.hpp +0 -41
  1377. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/to_tuple.hpp +0 -27
  1378. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/transform.hpp +0 -48
  1379. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/variadic_seq_to_seq.hpp +0 -28
  1380. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot.hpp +0 -17
  1381. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/counter.hpp +0 -25
  1382. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/counter.hpp +0 -269
  1383. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/def.hpp +0 -49
  1384. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/shared.hpp +0 -247
  1385. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot1.hpp +0 -267
  1386. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot2.hpp +0 -267
  1387. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot3.hpp +0 -267
  1388. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot4.hpp +0 -267
  1389. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot5.hpp +0 -267
  1390. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/slot.hpp +0 -32
  1391. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/stringize.hpp +0 -33
  1392. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple.hpp +0 -35
  1393. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/detail/is_single_return.hpp +0 -28
  1394. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/eat.hpp +0 -115
  1395. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/elem.hpp +0 -201
  1396. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/enum.hpp +0 -22
  1397. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/insert.hpp +0 -37
  1398. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/pop_back.hpp +0 -64
  1399. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/pop_front.hpp +0 -65
  1400. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/push_back.hpp +0 -31
  1401. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/push_front.hpp +0 -32
  1402. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/rem.hpp +0 -149
  1403. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/remove.hpp +0 -64
  1404. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/replace.hpp +0 -37
  1405. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/reverse.hpp +0 -117
  1406. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/size.hpp +0 -28
  1407. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/to_array.hpp +0 -39
  1408. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/to_list.hpp +0 -118
  1409. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/to_seq.hpp +0 -119
  1410. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic.hpp +0 -23
  1411. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/detail/is_single_return.hpp +0 -28
  1412. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/elem.hpp +0 -94
  1413. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/size.hpp +0 -30
  1414. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_array.hpp +0 -32
  1415. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_list.hpp +0 -25
  1416. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_seq.hpp +0 -25
  1417. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_tuple.hpp +0 -24
  1418. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/while.hpp +0 -17
  1419. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/wstringize.hpp +0 -29
  1420. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/index.html +0 -18
  1421. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/meta/libraries.json +0 -15
  1422. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/Jamfile.v2 +0 -252
  1423. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/arithmetic.c +0 -12
  1424. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/arithmetic.cpp +0 -12
  1425. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/arithmetic.cxx +0 -82
  1426. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/array.c +0 -14
  1427. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/array.cpp +0 -14
  1428. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/array.cxx +0 -192
  1429. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/comparison.c +0 -13
  1430. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/comparison.cpp +0 -12
  1431. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/comparison.cxx +0 -45
  1432. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/config_info.cpp +0 -93
  1433. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/control.c +0 -12
  1434. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/control.cpp +0 -12
  1435. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/control.cxx +0 -40
  1436. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/debug.c +0 -12
  1437. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/debug.cpp +0 -12
  1438. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/debug.cxx +0 -21
  1439. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/facilities.c +0 -12
  1440. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/facilities.cpp +0 -12
  1441. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/facilities.cxx +0 -55
  1442. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty.c +0 -12
  1443. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty.cpp +0 -12
  1444. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty.cxx +0 -145
  1445. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure.c +0 -12
  1446. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure.cpp +0 -12
  1447. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure.cxx +0 -25
  1448. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure2.c +0 -12
  1449. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure2.cpp +0 -12
  1450. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure2.cxx +0 -25
  1451. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/iteration.cpp +0 -33
  1452. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/iteration.h +0 -62
  1453. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/list.c +0 -14
  1454. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/list.cpp +0 -14
  1455. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/list.cxx +0 -91
  1456. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/logical.c +0 -12
  1457. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/logical.cpp +0 -12
  1458. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/logical.cxx +0 -59
  1459. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/punctuation.c +0 -14
  1460. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/punctuation.cpp +0 -14
  1461. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/punctuation.cxx +0 -54
  1462. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/repetition.cpp +0 -50
  1463. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/selection.c +0 -12
  1464. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/selection.cpp +0 -12
  1465. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/selection.cxx +0 -21
  1466. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/seq.c +0 -14
  1467. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/seq.cpp +0 -14
  1468. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/seq.cxx +0 -222
  1469. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/slot.c +0 -12
  1470. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/slot.cpp +0 -12
  1471. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/slot.cxx +0 -53
  1472. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/test.h +0 -37
  1473. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple.c +0 -14
  1474. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple.cpp +0 -14
  1475. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple.cxx +0 -266
  1476. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple_elem_bug_test.cxx +0 -38
  1477. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/variadic.c +0 -12
  1478. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/variadic.cpp +0 -12
  1479. data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/variadic.cxx +0 -56
@@ -42,10 +42,6 @@ mrb_open_core(mrb_allocf f, void *ud)
42
42
 
43
43
  mrb_init_core(mrb);
44
44
 
45
- #if !defined(MRB_DISABLE_STDIO) && defined(_MSC_VER) && _MSC_VER < 1900
46
- _set_output_format(_TWO_DIGIT_EXPONENT);
47
- #endif
48
-
49
45
  return mrb;
50
46
  }
51
47
 
@@ -61,38 +57,6 @@ mrb_default_allocf(mrb_state *mrb, void *p, size_t size, void *ud)
61
57
  }
62
58
  }
63
59
 
64
- struct alloca_header {
65
- struct alloca_header *next;
66
- char buf[1];
67
- };
68
-
69
- MRB_API void*
70
- mrb_alloca(mrb_state *mrb, size_t size)
71
- {
72
- struct alloca_header *p;
73
-
74
- p = (struct alloca_header*) mrb_malloc(mrb, sizeof(struct alloca_header)+size);
75
- p->next = mrb->mems;
76
- mrb->mems = p;
77
- return (void*)p->buf;
78
- }
79
-
80
- static void
81
- mrb_alloca_free(mrb_state *mrb)
82
- {
83
- struct alloca_header *p;
84
- struct alloca_header *tmp;
85
-
86
- if (mrb == NULL) return;
87
- p = mrb->mems;
88
-
89
- while (p) {
90
- tmp = p;
91
- p = p->next;
92
- mrb_free(mrb, tmp);
93
- }
94
- }
95
-
96
60
  MRB_API mrb_state*
97
61
  mrb_open(void)
98
62
  {
@@ -153,14 +117,14 @@ mrb_irep_free(mrb_state *mrb, mrb_irep *irep)
153
117
  int i;
154
118
 
155
119
  if (!(irep->flags & MRB_ISEQ_NO_FREE))
156
- mrb_free(mrb, irep->iseq);
120
+ mrb_free(mrb, (void*)irep->iseq);
157
121
  if (irep->pool) for (i=0; i<irep->plen; i++) {
158
- if (mrb_type(irep->pool[i]) == MRB_TT_STRING) {
122
+ if (mrb_string_p(irep->pool[i])) {
159
123
  mrb_gc_free_str(mrb, RSTRING(irep->pool[i]));
160
124
  mrb_free(mrb, mrb_obj_ptr(irep->pool[i]));
161
125
  }
162
126
  #if defined(MRB_WORD_BOXING) && !defined(MRB_WITHOUT_FLOAT)
163
- else if (mrb_type(irep->pool[i]) == MRB_TT_FLOAT) {
127
+ else if (mrb_float_p(irep->pool[i])) {
164
128
  mrb_free(mrb, mrb_obj_ptr(irep->pool[i]));
165
129
  }
166
130
  #endif
@@ -177,58 +141,6 @@ mrb_irep_free(mrb_state *mrb, mrb_irep *irep)
177
141
  mrb_free(mrb, irep);
178
142
  }
179
143
 
180
- mrb_value
181
- mrb_str_pool(mrb_state *mrb, mrb_value str)
182
- {
183
- struct RString *s = mrb_str_ptr(str);
184
- struct RString *ns;
185
- char *ptr;
186
- mrb_int len;
187
-
188
- ns = (struct RString *)mrb_malloc(mrb, sizeof(struct RString));
189
- ns->tt = MRB_TT_STRING;
190
- ns->c = mrb->string_class;
191
-
192
- if (RSTR_NOFREE_P(s)) {
193
- ns->flags = MRB_STR_NOFREE;
194
- ns->as.heap.ptr = s->as.heap.ptr;
195
- ns->as.heap.len = s->as.heap.len;
196
- ns->as.heap.aux.capa = 0;
197
- }
198
- else {
199
- ns->flags = 0;
200
- if (RSTR_EMBED_P(s)) {
201
- ptr = s->as.ary;
202
- len = RSTR_EMBED_LEN(s);
203
- }
204
- else {
205
- ptr = s->as.heap.ptr;
206
- len = s->as.heap.len;
207
- }
208
-
209
- if (len < RSTRING_EMBED_LEN_MAX) {
210
- RSTR_SET_EMBED_FLAG(ns);
211
- RSTR_SET_EMBED_LEN(ns, len);
212
- if (ptr) {
213
- memcpy(ns->as.ary, ptr, len);
214
- }
215
- ns->as.ary[len] = '\0';
216
- }
217
- else {
218
- ns->as.heap.ptr = (char *)mrb_malloc(mrb, (size_t)len+1);
219
- ns->as.heap.len = len;
220
- ns->as.heap.aux.capa = len;
221
- if (ptr) {
222
- memcpy(ns->as.heap.ptr, ptr, len);
223
- }
224
- ns->as.heap.ptr[len] = '\0';
225
- }
226
- }
227
- RSTR_SET_POOL_FLAG(ns);
228
- MRB_SET_FROZEN_FLAG(ns);
229
- return mrb_obj_value(ns);
230
- }
231
-
232
144
  void mrb_free_backtrace(mrb_state *mrb);
233
145
 
234
146
  MRB_API void
@@ -257,11 +169,10 @@ mrb_close(mrb_state *mrb)
257
169
  }
258
170
 
259
171
  /* free */
260
- mrb_gc_free_gv(mrb);
172
+ mrb_gc_destroy(mrb, &mrb->gc);
261
173
  mrb_free_context(mrb, mrb->root_c);
174
+ mrb_gc_free_gv(mrb);
262
175
  mrb_free_symtbl(mrb);
263
- mrb_alloca_free(mrb);
264
- mrb_gc_destroy(mrb, &mrb->gc);
265
176
  mrb_free(mrb, mrb);
266
177
  }
267
178
 
@@ -21,13 +21,11 @@
21
21
  #include <mruby/range.h>
22
22
  #include <mruby/string.h>
23
23
  #include <mruby/numeric.h>
24
- #include <mruby/re.h>
25
24
 
26
25
  typedef struct mrb_shared_string {
27
- mrb_bool nofree : 1;
28
26
  int refcnt;
27
+ mrb_ssize capa;
29
28
  char *ptr;
30
- mrb_int len;
31
29
  } mrb_shared_string;
32
30
 
33
31
  const char mrb_digitmap[] = "0123456789abcdefghijklmnopqrstuvwxyz";
@@ -35,55 +33,114 @@ const char mrb_digitmap[] = "0123456789abcdefghijklmnopqrstuvwxyz";
35
33
  #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
36
34
 
37
35
  static struct RString*
38
- str_new_static(mrb_state *mrb, const char *p, size_t len)
36
+ str_init_normal_capa(mrb_state *mrb, struct RString *s,
37
+ const char *p, size_t len, size_t capa)
38
+ {
39
+ char *dst = (char *)mrb_malloc(mrb, capa + 1);
40
+ if (p) memcpy(dst, p, len);
41
+ dst[len] = '\0';
42
+ s->as.heap.ptr = dst;
43
+ s->as.heap.len = (mrb_ssize)len;
44
+ s->as.heap.aux.capa = (mrb_ssize)capa;
45
+ RSTR_UNSET_TYPE_FLAG(s);
46
+ return s;
47
+ }
48
+
49
+ static struct RString*
50
+ str_init_normal(mrb_state *mrb, struct RString *s, const char *p, size_t len)
39
51
  {
40
- struct RString *s;
52
+ return str_init_normal_capa(mrb, s, p, len, len);
53
+ }
41
54
 
42
- if (len >= MRB_INT_MAX) {
43
- mrb_raise(mrb, E_ARGUMENT_ERROR, "string size too big");
44
- }
45
- s = mrb_obj_alloc_string(mrb);
46
- s->as.heap.len = (mrb_int)len;
47
- s->as.heap.aux.capa = 0; /* nofree */
55
+ static struct RString*
56
+ str_init_embed(struct RString *s, const char *p, size_t len)
57
+ {
58
+ if (p) memcpy(RSTR_EMBED_PTR(s), p, len);
59
+ RSTR_EMBED_PTR(s)[len] = '\0';
60
+ RSTR_SET_TYPE_FLAG(s, EMBED);
61
+ RSTR_SET_EMBED_LEN(s, len);
62
+ return s;
63
+ }
64
+
65
+ static struct RString*
66
+ str_init_nofree(struct RString *s, const char *p, size_t len)
67
+ {
48
68
  s->as.heap.ptr = (char *)p;
49
- s->flags = MRB_STR_NOFREE;
69
+ s->as.heap.len = (mrb_ssize)len;
70
+ s->as.heap.aux.capa = 0; /* nofree */
71
+ RSTR_SET_TYPE_FLAG(s, NOFREE);
72
+ return s;
73
+ }
50
74
 
75
+ static struct RString*
76
+ str_init_shared(mrb_state *mrb, const struct RString *orig, struct RString *s, mrb_shared_string *shared)
77
+ {
78
+ if (shared) {
79
+ shared->refcnt++;
80
+ }
81
+ else {
82
+ shared = (mrb_shared_string *)mrb_malloc(mrb, sizeof(mrb_shared_string));
83
+ shared->refcnt = 1;
84
+ shared->ptr = orig->as.heap.ptr;
85
+ shared->capa = orig->as.heap.aux.capa;
86
+ }
87
+ s->as.heap.ptr = orig->as.heap.ptr;
88
+ s->as.heap.len = orig->as.heap.len;
89
+ s->as.heap.aux.shared = shared;
90
+ RSTR_SET_TYPE_FLAG(s, SHARED);
51
91
  return s;
52
92
  }
53
93
 
54
94
  static struct RString*
55
- str_new(mrb_state *mrb, const char *p, size_t len)
95
+ str_init_fshared(const struct RString *orig, struct RString *s, struct RString *fshared)
56
96
  {
57
- struct RString *s;
97
+ s->as.heap.ptr = orig->as.heap.ptr;
98
+ s->as.heap.len = orig->as.heap.len;
99
+ s->as.heap.aux.fshared = fshared;
100
+ RSTR_SET_TYPE_FLAG(s, FSHARED);
101
+ return s;
102
+ }
58
103
 
59
- if (p && mrb_ro_data_p(p)) {
60
- return str_new_static(mrb, p, len);
61
- }
62
- s = mrb_obj_alloc_string(mrb);
63
- if (len <= RSTRING_EMBED_LEN_MAX) {
64
- RSTR_SET_EMBED_FLAG(s);
65
- RSTR_SET_EMBED_LEN(s, len);
66
- if (p) {
67
- memcpy(s->as.ary, p, len);
68
- }
104
+ static struct RString*
105
+ str_init_modifiable(mrb_state *mrb, struct RString *s, const char *p, size_t len)
106
+ {
107
+ if (RSTR_EMBEDDABLE_P(len)) {
108
+ return str_init_embed(s, p, len);
69
109
  }
70
110
  else {
71
- if (len >= MRB_INT_MAX) {
72
- mrb_raise(mrb, E_ARGUMENT_ERROR, "string size too big");
73
- }
74
- s->as.heap.ptr = (char *)mrb_malloc(mrb, len+1);
75
- s->as.heap.len = (mrb_int)len;
76
- s->as.heap.aux.capa = (mrb_int)len;
77
- if (p) {
78
- memcpy(s->as.heap.ptr, p, len);
79
- }
111
+ return str_init_normal(mrb, s, p, len);
80
112
  }
81
- RSTR_PTR(s)[len] = '\0';
82
- return s;
113
+ }
114
+
115
+ static struct RString*
116
+ str_new_static(mrb_state *mrb, const char *p, size_t len)
117
+ {
118
+ if (RSTR_EMBEDDABLE_P(len)) {
119
+ return str_init_embed(mrb_obj_alloc_string(mrb), p, len);
120
+ }
121
+ if (len >= MRB_SSIZE_MAX) {
122
+ mrb_raise(mrb, E_ARGUMENT_ERROR, "string size too big");
123
+ }
124
+ return str_init_nofree(mrb_obj_alloc_string(mrb), p, len);
125
+ }
126
+
127
+ static struct RString*
128
+ str_new(mrb_state *mrb, const char *p, size_t len)
129
+ {
130
+ if (RSTR_EMBEDDABLE_P(len)) {
131
+ return str_init_embed(mrb_obj_alloc_string(mrb), p, len);
132
+ }
133
+ if (len >= MRB_SSIZE_MAX) {
134
+ mrb_raise(mrb, E_ARGUMENT_ERROR, "string size too big");
135
+ }
136
+ if (p && mrb_ro_data_p(p)) {
137
+ return str_init_nofree(mrb_obj_alloc_string(mrb), p, len);
138
+ }
139
+ return str_init_normal(mrb, mrb_obj_alloc_string(mrb), p, len);
83
140
  }
84
141
 
85
142
  static inline void
86
- str_with_class(mrb_state *mrb, struct RString *s, mrb_value obj)
143
+ str_with_class(struct RString *s, mrb_value obj)
87
144
  {
88
145
  s->c = mrb_str_ptr(obj)->c;
89
146
  }
@@ -93,7 +150,7 @@ mrb_str_new_empty(mrb_state *mrb, mrb_value str)
93
150
  {
94
151
  struct RString *s = str_new(mrb, 0, 0);
95
152
 
96
- str_with_class(mrb, s, str);
153
+ str_with_class(s, str);
97
154
  return mrb_obj_value(s);
98
155
  }
99
156
 
@@ -102,15 +159,17 @@ mrb_str_new_capa(mrb_state *mrb, size_t capa)
102
159
  {
103
160
  struct RString *s;
104
161
 
105
- s = mrb_obj_alloc_string(mrb);
106
-
107
- if (capa >= MRB_INT_MAX) {
162
+ if (RSTR_EMBEDDABLE_P(capa)) {
163
+ s = str_init_embed(mrb_obj_alloc_string(mrb), NULL, 0);
164
+ }
165
+ else if (capa >= MRB_SSIZE_MAX) {
108
166
  mrb_raise(mrb, E_ARGUMENT_ERROR, "string capacity size too big");
167
+ /* not reached */
168
+ s = NULL;
169
+ }
170
+ else {
171
+ s = str_init_normal_capa(mrb, mrb_obj_alloc_string(mrb), NULL, 0, capa);
109
172
  }
110
- s->as.heap.len = 0;
111
- s->as.heap.aux.capa = (mrb_int)capa;
112
- s->as.heap.ptr = (char *)mrb_malloc(mrb, capa+1);
113
- RSTR_PTR(s)[0] = '\0';
114
173
 
115
174
  return mrb_obj_value(s);
116
175
  }
@@ -131,23 +190,17 @@ mrb_str_buf_new(mrb_state *mrb, size_t capa)
131
190
  static void
132
191
  resize_capa(mrb_state *mrb, struct RString *s, size_t capacity)
133
192
  {
134
- #if SIZE_MAX > MRB_INT_MAX
135
- mrb_assert(capacity < MRB_INT_MAX);
193
+ #if SIZE_MAX > MRB_SSIZE_MAX
194
+ mrb_assert(capacity < MRB_SSIZE_MAX);
136
195
  #endif
137
196
  if (RSTR_EMBED_P(s)) {
138
- if (RSTRING_EMBED_LEN_MAX < capacity) {
139
- char *const tmp = (char *)mrb_malloc(mrb, capacity+1);
140
- const mrb_int len = RSTR_EMBED_LEN(s);
141
- memcpy(tmp, s->as.ary, len);
142
- RSTR_UNSET_EMBED_FLAG(s);
143
- s->as.heap.ptr = tmp;
144
- s->as.heap.len = len;
145
- s->as.heap.aux.capa = (mrb_int)capacity;
197
+ if (!RSTR_EMBEDDABLE_P(capacity)) {
198
+ str_init_normal_capa(mrb, s, RSTR_EMBED_PTR(s), RSTR_EMBED_LEN(s), capacity);
146
199
  }
147
200
  }
148
201
  else {
149
202
  s->as.heap.ptr = (char*)mrb_realloc(mrb, RSTR_PTR(s), capacity+1);
150
- s->as.heap.aux.capa = (mrb_int)capacity;
203
+ s->as.heap.aux.capa = (mrb_ssize)capacity;
151
204
  }
152
205
  }
153
206
 
@@ -187,13 +240,42 @@ str_decref(mrb_state *mrb, mrb_shared_string *shared)
187
240
  {
188
241
  shared->refcnt--;
189
242
  if (shared->refcnt == 0) {
190
- if (!shared->nofree) {
191
- mrb_free(mrb, shared->ptr);
192
- }
243
+ mrb_free(mrb, shared->ptr);
193
244
  mrb_free(mrb, shared);
194
245
  }
195
246
  }
196
247
 
248
+ static void
249
+ str_modify_keep_ascii(mrb_state *mrb, struct RString *s)
250
+ {
251
+ if (RSTR_SHARED_P(s)) {
252
+ mrb_shared_string *shared = s->as.heap.aux.shared;
253
+
254
+ if (shared->refcnt == 1 && s->as.heap.ptr == shared->ptr) {
255
+ s->as.heap.aux.capa = shared->capa;
256
+ s->as.heap.ptr[s->as.heap.len] = '\0';
257
+ RSTR_UNSET_SHARED_FLAG(s);
258
+ mrb_free(mrb, shared);
259
+ }
260
+ else {
261
+ str_init_modifiable(mrb, s, s->as.heap.ptr, (size_t)s->as.heap.len);
262
+ str_decref(mrb, shared);
263
+ }
264
+ }
265
+ else if (RSTR_NOFREE_P(s) || RSTR_FSHARED_P(s)) {
266
+ str_init_modifiable(mrb, s, s->as.heap.ptr, (size_t)s->as.heap.len);
267
+ }
268
+ }
269
+
270
+ static void
271
+ check_null_byte(mrb_state *mrb, mrb_value str)
272
+ {
273
+ mrb_to_str(mrb, str);
274
+ if (memchr(RSTRING_PTR(str), '\0', RSTRING_LEN(str))) {
275
+ mrb_raise(mrb, E_ARGUMENT_ERROR, "string contains null byte");
276
+ }
277
+ }
278
+
197
279
  void
198
280
  mrb_gc_free_str(mrb_state *mrb, struct RString *str)
199
281
  {
@@ -224,8 +306,10 @@ utf8len(const char* p, const char* e)
224
306
  mrb_int len;
225
307
  mrb_int i;
226
308
 
309
+ if ((unsigned char)*p < 0x80) return 1;
227
310
  len = utf8len_codepage[(unsigned char)*p];
228
- if (p + len > e) return 1;
311
+ if (len == 1) return 1;
312
+ if (len > e - p) return 1;
229
313
  for (i = 1; i < len; ++i)
230
314
  if ((p[i] & 0xc0) != 0x80)
231
315
  return 1;
@@ -249,14 +333,15 @@ mrb_utf8_len(const char *str, mrb_int byte_len)
249
333
  static mrb_int
250
334
  utf8_strlen(mrb_value str)
251
335
  {
252
- mrb_int byte_len = RSTRING_LEN(str);
336
+ struct RString *s = mrb_str_ptr(str);
337
+ mrb_int byte_len = RSTR_LEN(s);
253
338
 
254
- if (RSTRING(str)->flags & MRB_STR_NO_UTF) {
339
+ if (RSTR_ASCII_P(s)) {
255
340
  return byte_len;
256
341
  }
257
342
  else {
258
- mrb_int utf8_len = mrb_utf8_len(RSTRING_PTR(str), byte_len);
259
- if (byte_len == utf8_len) RSTRING(str)->flags |= MRB_STR_NO_UTF;
343
+ mrb_int utf8_len = mrb_utf8_len(RSTR_PTR(s), byte_len);
344
+ if (byte_len == utf8_len) RSTR_SET_ASCII_FLAG(s);
260
345
  return utf8_len;
261
346
  }
262
347
  }
@@ -267,39 +352,155 @@ utf8_strlen(mrb_value str)
267
352
  static mrb_int
268
353
  chars2bytes(mrb_value s, mrb_int off, mrb_int idx)
269
354
  {
270
- mrb_int i, b, n;
271
- const char *p = RSTRING_PTR(s) + off;
272
- const char *e = RSTRING_END(s);
355
+ if (RSTR_ASCII_P(mrb_str_ptr(s))) {
356
+ return idx;
357
+ }
358
+ else {
359
+ mrb_int i, b, n;
360
+ const char *p = RSTRING_PTR(s) + off;
361
+ const char *e = RSTRING_END(s);
273
362
 
274
- for (b=i=0; p<e && i<idx; i++) {
275
- n = utf8len(p, e);
276
- b += n;
277
- p += n;
363
+ for (b=i=0; p<e && i<idx; i++) {
364
+ n = utf8len(p, e);
365
+ b += n;
366
+ p += n;
367
+ }
368
+ return b;
278
369
  }
279
- return b;
280
370
  }
281
371
 
282
372
  /* map byte offset to character index */
283
373
  static mrb_int
284
- bytes2chars(char *p, mrb_int bi)
374
+ bytes2chars(char *p, mrb_int len, mrb_int bi)
285
375
  {
286
- mrb_int i, b, n;
376
+ const char *e = p + (size_t)len;
377
+ const char *pivot = p + bi;
378
+ mrb_int i;
287
379
 
288
- for (b=i=0; b<bi; i++) {
289
- n = utf8len_codepage[(unsigned char)*p];
290
- b += n;
291
- p += n;
380
+ for (i = 0; p < pivot; i ++) {
381
+ p += utf8len(p, e);
292
382
  }
293
- if (b != bi) return -1;
383
+ if (p != pivot) return -1;
294
384
  return i;
295
385
  }
296
386
 
387
+ static const char *
388
+ char_adjust(const char *beg, const char *end, const char *ptr)
389
+ {
390
+ if ((ptr > beg || ptr < end) && (*ptr & 0xc0) == 0x80) {
391
+ const int utf8_adjust_max = 3;
392
+ const char *p;
393
+
394
+ if (ptr - beg > utf8_adjust_max) {
395
+ beg = ptr - utf8_adjust_max;
396
+ }
397
+
398
+ p = ptr;
399
+ while (p > beg) {
400
+ p --;
401
+ if ((*p & 0xc0) != 0x80) {
402
+ int clen = utf8len(p, end);
403
+ if (clen > ptr - p) return p;
404
+ break;
405
+ }
406
+ }
407
+ }
408
+
409
+ return ptr;
410
+ }
411
+
412
+ static const char *
413
+ char_backtrack(const char *ptr, const char *end)
414
+ {
415
+ if (ptr < end) {
416
+ const int utf8_bytelen_max = 4;
417
+ const char *p;
418
+
419
+ if (end - ptr > utf8_bytelen_max) {
420
+ ptr = end - utf8_bytelen_max;
421
+ }
422
+
423
+ p = end;
424
+ while (p > ptr) {
425
+ p --;
426
+ if ((*p & 0xc0) != 0x80) {
427
+ int clen = utf8len_codepage[(unsigned char)*p];
428
+ if (clen == end - p) { return p; }
429
+ break;
430
+ }
431
+ }
432
+ }
433
+
434
+ return end - 1;
435
+ }
436
+
437
+ static mrb_int
438
+ str_index_str_by_char_search(mrb_state *mrb, const char *p, const char *pend, const char *s, const mrb_int slen, mrb_int off)
439
+ {
440
+ /* Based on Quick Search algorithm (Boyer-Moore-Horspool algorithm) */
441
+
442
+ ptrdiff_t qstable[1 << CHAR_BIT];
443
+
444
+ /* Preprocessing */
445
+ {
446
+ mrb_int i;
447
+
448
+ for (i = 0; i < 1 << CHAR_BIT; i ++) {
449
+ qstable[i] = slen;
450
+ }
451
+ for (i = 0; i < slen; i ++) {
452
+ qstable[(unsigned char)s[i]] = slen - (i + 1);
453
+ }
454
+ }
455
+
456
+ /* Searching */
457
+ while (p < pend && pend - p >= slen) {
458
+ const char *pivot;
459
+
460
+ if (memcmp(p, s, slen) == 0) {
461
+ return off;
462
+ }
463
+
464
+ pivot = p + qstable[(unsigned char)p[slen - 1]];
465
+ if (pivot > pend || pivot < p /* overflowed */) { return -1; }
466
+
467
+ do {
468
+ p += utf8len(p, pend);
469
+ off ++;
470
+ } while (p < pivot);
471
+ }
472
+
473
+ return -1;
474
+ }
475
+
476
+ static mrb_int
477
+ str_index_str_by_char(mrb_state *mrb, mrb_value str, mrb_value sub, mrb_int pos)
478
+ {
479
+ const char *p = RSTRING_PTR(str);
480
+ const char *pend = p + RSTRING_LEN(str);
481
+ const char *s = RSTRING_PTR(sub);
482
+ const mrb_int slen = RSTRING_LEN(sub);
483
+ mrb_int off = pos;
484
+
485
+ for (; pos > 0; pos --) {
486
+ if (pend - p < 1) { return -1; }
487
+ p += utf8len(p, pend);
488
+ }
489
+
490
+ if (slen < 1) { return off; }
491
+
492
+ return str_index_str_by_char_search(mrb, p, pend, s, slen, off);
493
+ }
494
+
297
495
  #define BYTES_ALIGN_CHECK(pos) if (pos < 0) return mrb_nil_value();
298
496
  #else
299
497
  #define RSTRING_CHAR_LEN(s) RSTRING_LEN(s)
300
498
  #define chars2bytes(p, off, ci) (ci)
301
- #define bytes2chars(p, bi) (bi)
499
+ #define bytes2chars(p, end, bi) (bi)
500
+ #define char_adjust(beg, end, ptr) (ptr)
501
+ #define char_backtrack(ptr, end) ((end) - 1)
302
502
  #define BYTES_ALIGN_CHECK(pos)
503
+ #define str_index_str_by_char(mrb, str, sub, pos) str_index_str(mrb, str, sub, pos)
303
504
  #endif
304
505
 
305
506
  static inline mrb_int
@@ -347,113 +548,113 @@ mrb_memsearch(const void *x0, mrb_int m, const void *y0, mrb_int n)
347
548
  }
348
549
 
349
550
  static void
350
- str_make_shared(mrb_state *mrb, struct RString *orig, struct RString *s)
551
+ str_share(mrb_state *mrb, struct RString *orig, struct RString *s)
351
552
  {
352
- mrb_shared_string *shared;
353
- mrb_int len = RSTR_LEN(orig);
553
+ size_t len = (size_t)orig->as.heap.len;
354
554
 
355
555
  mrb_assert(!RSTR_EMBED_P(orig));
356
- if (RSTR_SHARED_P(orig)) {
357
- shared = orig->as.heap.aux.shared;
358
- shared->refcnt++;
359
- s->as.heap.ptr = orig->as.heap.ptr;
360
- s->as.heap.len = len;
361
- s->as.heap.aux.shared = shared;
362
- RSTR_SET_SHARED_FLAG(s);
363
- RSTR_UNSET_EMBED_FLAG(s);
556
+ if (RSTR_NOFREE_P(orig)) {
557
+ str_init_nofree(s, orig->as.heap.ptr, len);
558
+ }
559
+ else if (RSTR_SHARED_P(orig)) {
560
+ str_init_shared(mrb, orig, s, orig->as.heap.aux.shared);
364
561
  }
365
562
  else if (RSTR_FSHARED_P(orig)) {
366
- struct RString *fs;
367
-
368
- fs = orig->as.heap.aux.fshared;
369
- s->as.heap.ptr = orig->as.heap.ptr;
370
- s->as.heap.len = len;
371
- s->as.heap.aux.fshared = fs;
372
- RSTR_SET_FSHARED_FLAG(s);
373
- RSTR_UNSET_EMBED_FLAG(s);
374
- }
375
- else if (MRB_FROZEN_P(orig) && !RSTR_POOL_P(orig)) {
376
- s->as.heap.ptr = orig->as.heap.ptr;
377
- s->as.heap.len = len;
378
- s->as.heap.aux.fshared = orig;
379
- RSTR_SET_FSHARED_FLAG(s);
380
- RSTR_UNSET_EMBED_FLAG(s);
563
+ str_init_fshared(orig, s, orig->as.heap.aux.fshared);
564
+ }
565
+ else if (mrb_frozen_p(orig) && !RSTR_POOL_P(orig)) {
566
+ str_init_fshared(orig, s, orig);
381
567
  }
382
568
  else {
383
- shared = (mrb_shared_string *)mrb_malloc(mrb, sizeof(mrb_shared_string));
384
- shared->refcnt = 2;
385
- shared->nofree = !!RSTR_NOFREE_P(orig);
386
- if (!shared->nofree && orig->as.heap.aux.capa > orig->as.heap.len) {
387
- shared->ptr = (char *)mrb_realloc(mrb, orig->as.heap.ptr, len+1);
388
- orig->as.heap.ptr = shared->ptr;
389
- }
390
- else {
391
- shared->ptr = orig->as.heap.ptr;
569
+ if (orig->as.heap.aux.capa > orig->as.heap.len) {
570
+ orig->as.heap.ptr = (char *)mrb_realloc(mrb, orig->as.heap.ptr, len+1);
571
+ orig->as.heap.aux.capa = (mrb_ssize)len;
392
572
  }
393
- orig->as.heap.aux.shared = shared;
394
- RSTR_SET_SHARED_FLAG(orig);
395
- shared->len = len;
396
- s->as.heap.aux.shared = shared;
397
- s->as.heap.ptr = shared->ptr;
398
- s->as.heap.len = len;
399
- RSTR_SET_SHARED_FLAG(s);
400
- RSTR_UNSET_EMBED_FLAG(s);
573
+ str_init_shared(mrb, orig, s, NULL);
574
+ str_init_shared(mrb, orig, orig, s->as.heap.aux.shared);
401
575
  }
402
576
  }
403
577
 
404
- static mrb_value
405
- byte_subseq(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len)
578
+ mrb_value
579
+ mrb_str_pool(mrb_state *mrb, const char *p, mrb_int len, mrb_bool nofree)
580
+ {
581
+ struct RString *s = (struct RString *)mrb_malloc(mrb, sizeof(struct RString));
582
+
583
+ s->tt = MRB_TT_STRING;
584
+ s->c = mrb->string_class;
585
+ s->flags = 0;
586
+
587
+ if (RSTR_EMBEDDABLE_P(len)) {
588
+ str_init_embed(s, p, len);
589
+ }
590
+ else if (nofree) {
591
+ str_init_nofree(s, p, len);
592
+ }
593
+ else {
594
+ str_init_normal(mrb, s, p, len);
595
+ }
596
+ RSTR_SET_POOL_FLAG(s);
597
+ MRB_SET_FROZEN_FLAG(s);
598
+ return mrb_obj_value(s);
599
+ }
600
+
601
+ mrb_value
602
+ mrb_str_byte_subseq(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len)
406
603
  {
407
604
  struct RString *orig, *s;
408
605
 
409
606
  orig = mrb_str_ptr(str);
410
- if (RSTR_EMBED_P(orig) || RSTR_LEN(orig) == 0 || len <= RSTRING_EMBED_LEN_MAX) {
411
- s = str_new(mrb, RSTR_PTR(orig)+beg, len);
607
+ s = mrb_obj_alloc_string(mrb);
608
+ if (RSTR_EMBEDDABLE_P(len)) {
609
+ str_init_embed(s, RSTR_PTR(orig)+beg, len);
412
610
  }
413
611
  else {
414
- s = mrb_obj_alloc_string(mrb);
415
- str_make_shared(mrb, orig, s);
416
- s->as.heap.ptr += beg;
417
- s->as.heap.len = len;
612
+ str_share(mrb, orig, s);
613
+ s->as.heap.ptr += (mrb_ssize)beg;
614
+ s->as.heap.len = (mrb_ssize)len;
418
615
  }
616
+ RSTR_COPY_ASCII_FLAG(s, orig);
419
617
  return mrb_obj_value(s);
420
618
  }
619
+
620
+ static void
621
+ str_range_to_bytes(mrb_value str, mrb_int *pos, mrb_int *len)
622
+ {
623
+ *pos = chars2bytes(str, 0, *pos);
624
+ *len = chars2bytes(str, *pos, *len);
625
+ }
421
626
  #ifdef MRB_UTF8_STRING
422
627
  static inline mrb_value
423
628
  str_subseq(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len)
424
629
  {
425
- beg = chars2bytes(str, 0, beg);
426
- len = chars2bytes(str, beg, len);
427
-
428
- return byte_subseq(mrb, str, beg, len);
630
+ str_range_to_bytes(str, &beg, &len);
631
+ return mrb_str_byte_subseq(mrb, str, beg, len);
429
632
  }
430
633
  #else
431
- #define str_subseq(mrb, str, beg, len) byte_subseq(mrb, str, beg, len)
634
+ #define str_subseq(mrb, str, beg, len) mrb_str_byte_subseq(mrb, str, beg, len)
432
635
  #endif
433
636
 
434
- static mrb_value
435
- str_substr(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len)
637
+ mrb_bool
638
+ mrb_str_beg_len(mrb_int str_len, mrb_int *begp, mrb_int *lenp)
436
639
  {
437
- mrb_int clen = RSTRING_CHAR_LEN(str);
438
-
439
- if (len < 0) return mrb_nil_value();
440
- if (clen == 0) {
441
- len = 0;
442
- }
443
- else if (beg < 0) {
444
- beg = clen + beg;
445
- }
446
- if (beg > clen) return mrb_nil_value();
447
- if (beg < 0) {
448
- beg += clen;
449
- if (beg < 0) return mrb_nil_value();
640
+ if (str_len < *begp || *lenp < 0) return FALSE;
641
+ if (*begp < 0) {
642
+ *begp += str_len;
643
+ if (*begp < 0) return FALSE;
450
644
  }
451
- if (len > clen - beg)
452
- len = clen - beg;
453
- if (len <= 0) {
454
- len = 0;
645
+ if (*lenp > str_len - *begp)
646
+ *lenp = str_len - *begp;
647
+ if (*lenp <= 0) {
648
+ *lenp = 0;
455
649
  }
456
- return str_subseq(mrb, str, beg, len);
650
+ return TRUE;
651
+ }
652
+
653
+ static mrb_value
654
+ str_substr(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len)
655
+ {
656
+ return mrb_str_beg_len(RSTRING_CHAR_LEN(str), &beg, &len) ?
657
+ str_subseq(mrb, str, beg, len) : mrb_nil_value();
457
658
  }
458
659
 
459
660
  MRB_API mrb_int
@@ -493,44 +694,28 @@ str_index_str(mrb_state *mrb, mrb_value str, mrb_value str2, mrb_int offset)
493
694
  return mrb_str_index(mrb, str, ptr, len, offset);
494
695
  }
495
696
 
496
- static void
497
- check_frozen(mrb_state *mrb, struct RString *s)
498
- {
499
- if (MRB_FROZEN_P(s)) {
500
- mrb_raise(mrb, E_FROZEN_ERROR, "can't modify frozen string");
501
- }
502
- }
503
-
504
697
  static mrb_value
505
698
  str_replace(mrb_state *mrb, struct RString *s1, struct RString *s2)
506
699
  {
507
- mrb_int len;
700
+ size_t len;
508
701
 
509
- check_frozen(mrb, s1);
702
+ mrb_check_frozen(mrb, s1);
510
703
  if (s1 == s2) return mrb_obj_value(s1);
511
- s1->flags &= ~MRB_STR_NO_UTF;
512
- s1->flags |= s2->flags&MRB_STR_NO_UTF;
513
- len = RSTR_LEN(s2);
704
+ RSTR_COPY_ASCII_FLAG(s1, s2);
514
705
  if (RSTR_SHARED_P(s1)) {
515
706
  str_decref(mrb, s1->as.heap.aux.shared);
516
- RSTR_UNSET_SHARED_FLAG(s1);
517
707
  }
518
708
  else if (!RSTR_EMBED_P(s1) && !RSTR_NOFREE_P(s1) && !RSTR_FSHARED_P(s1)
519
709
  && s1->as.heap.ptr) {
520
710
  mrb_free(mrb, s1->as.heap.ptr);
521
711
  }
522
712
 
523
- RSTR_UNSET_FSHARED_FLAG(s1);
524
- RSTR_UNSET_NOFREE_FLAG(s1);
525
- if (len <= RSTRING_EMBED_LEN_MAX) {
526
- RSTR_UNSET_SHARED_FLAG(s1);
527
- RSTR_UNSET_FSHARED_FLAG(s1);
528
- RSTR_SET_EMBED_FLAG(s1);
529
- memcpy(s1->as.ary, RSTR_PTR(s2), len);
530
- RSTR_SET_EMBED_LEN(s1, len);
713
+ len = (size_t)RSTR_LEN(s2);
714
+ if (RSTR_EMBEDDABLE_P(len)) {
715
+ str_init_embed(s1, RSTR_PTR(s2), len);
531
716
  }
532
717
  else {
533
- str_make_shared(mrb, s2, s1);
718
+ str_share(mrb, s2, s1);
534
719
  }
535
720
 
536
721
  return mrb_obj_value(s1);
@@ -539,7 +724,7 @@ str_replace(mrb_state *mrb, struct RString *s1, struct RString *s2)
539
724
  static mrb_int
540
725
  str_rindex(mrb_state *mrb, mrb_value str, mrb_value sub, mrb_int pos)
541
726
  {
542
- char *s, *sbeg, *t;
727
+ const char *s, *sbeg, *t;
543
728
  struct RString *ps = mrb_str_ptr(str);
544
729
  mrb_int len = RSTRING_LEN(sub);
545
730
 
@@ -552,11 +737,12 @@ str_rindex(mrb_state *mrb, mrb_value str, mrb_value sub, mrb_int pos)
552
737
  s = RSTR_PTR(ps) + pos;
553
738
  t = RSTRING_PTR(sub);
554
739
  if (len) {
740
+ s = char_adjust(sbeg, sbeg + RSTR_LEN(ps), s);
555
741
  while (sbeg <= s) {
556
742
  if (memcmp(s, t, len) == 0) {
557
743
  return (mrb_int)(s - RSTR_PTR(ps));
558
744
  }
559
- s--;
745
+ s = char_backtrack(sbeg, s);
560
746
  }
561
747
  return -1;
562
748
  }
@@ -644,65 +830,17 @@ mrb_locale_from_utf8(const char *utf8, int len)
644
830
  #endif
645
831
 
646
832
  MRB_API void
647
- mrb_str_modify(mrb_state *mrb, struct RString *s)
833
+ mrb_str_modify_keep_ascii(mrb_state *mrb, struct RString *s)
648
834
  {
649
- check_frozen(mrb, s);
650
- s->flags &= ~MRB_STR_NO_UTF;
651
- if (RSTR_SHARED_P(s)) {
652
- mrb_shared_string *shared = s->as.heap.aux.shared;
653
-
654
- if (shared->nofree == 0 && shared->refcnt == 1 && s->as.heap.ptr == shared->ptr) {
655
- s->as.heap.ptr = shared->ptr;
656
- s->as.heap.aux.capa = shared->len;
657
- RSTR_PTR(s)[s->as.heap.len] = '\0';
658
- mrb_free(mrb, shared);
659
- }
660
- else {
661
- char *ptr, *p;
662
- mrb_int len;
663
-
664
- p = RSTR_PTR(s);
665
- len = s->as.heap.len;
666
- if (len < RSTRING_EMBED_LEN_MAX) {
667
- RSTR_SET_EMBED_FLAG(s);
668
- RSTR_SET_EMBED_LEN(s, len);
669
- ptr = RSTR_PTR(s);
670
- }
671
- else {
672
- ptr = (char *)mrb_malloc(mrb, (size_t)len + 1);
673
- s->as.heap.ptr = ptr;
674
- s->as.heap.aux.capa = len;
675
- }
676
- if (p) {
677
- memcpy(ptr, p, len);
678
- }
679
- ptr[len] = '\0';
680
- str_decref(mrb, shared);
681
- }
682
- RSTR_UNSET_SHARED_FLAG(s);
683
- return;
684
- }
685
- if (RSTR_NOFREE_P(s) || RSTR_FSHARED_P(s)) {
686
- char *p = s->as.heap.ptr;
687
- mrb_int len = s->as.heap.len;
835
+ mrb_check_frozen(mrb, s);
836
+ str_modify_keep_ascii(mrb, s);
837
+ }
688
838
 
689
- RSTR_UNSET_FSHARED_FLAG(s);
690
- RSTR_UNSET_NOFREE_FLAG(s);
691
- RSTR_UNSET_FSHARED_FLAG(s);
692
- if (len < RSTRING_EMBED_LEN_MAX) {
693
- RSTR_SET_EMBED_FLAG(s);
694
- RSTR_SET_EMBED_LEN(s, len);
695
- }
696
- else {
697
- s->as.heap.ptr = (char *)mrb_malloc(mrb, (size_t)len+1);
698
- s->as.heap.aux.capa = len;
699
- }
700
- if (p) {
701
- memcpy(RSTR_PTR(s), p, len);
702
- }
703
- RSTR_PTR(s)[len] = '\0';
704
- return;
705
- }
839
+ MRB_API void
840
+ mrb_str_modify(mrb_state *mrb, struct RString *s)
841
+ {
842
+ mrb_str_modify_keep_ascii(mrb, s);
843
+ RSTR_UNSET_ASCII_FLAG(s);
706
844
  }
707
845
 
708
846
  MRB_API mrb_value
@@ -731,14 +869,8 @@ mrb_str_to_cstr(mrb_state *mrb, mrb_value str0)
731
869
  {
732
870
  struct RString *s;
733
871
 
734
- if (!mrb_string_p(str0)) {
735
- mrb_raise(mrb, E_TYPE_ERROR, "expected String");
736
- }
737
-
872
+ check_null_byte(mrb, str0);
738
873
  s = str_new(mrb, RSTRING_PTR(str0), RSTRING_LEN(str0));
739
- if ((strlen(RSTR_PTR(s)) ^ RSTR_LEN(s)) != 0) {
740
- mrb_raise(mrb, E_ARGUMENT_ERROR, "string contains null byte");
741
- }
742
874
  return RSTR_PTR(s);
743
875
  }
744
876
 
@@ -826,13 +958,13 @@ mrb_str_times(mrb_state *mrb, mrb_value self)
826
958
  if (times < 0) {
827
959
  mrb_raise(mrb, E_ARGUMENT_ERROR, "negative argument");
828
960
  }
829
- if (times && MRB_INT_MAX / times < RSTRING_LEN(self)) {
961
+ if (times && MRB_SSIZE_MAX / times < RSTRING_LEN(self)) {
830
962
  mrb_raise(mrb, E_ARGUMENT_ERROR, "argument too big");
831
963
  }
832
964
 
833
965
  len = RSTRING_LEN(self)*times;
834
966
  str2 = str_new(mrb, 0, len);
835
- str_with_class(mrb, str2, self);
967
+ str_with_class(str2, self);
836
968
  p = RSTR_PTR(str2);
837
969
  if (len > 0) {
838
970
  n = RSTRING_LEN(self);
@@ -844,6 +976,7 @@ mrb_str_times(mrb_state *mrb, mrb_value self)
844
976
  memcpy(p + n, p, len-n);
845
977
  }
846
978
  p[RSTR_LEN(str2)] = '\0';
979
+ RSTR_COPY_ASCII_FLAG(str2, mrb_str_ptr(self));
847
980
 
848
981
  return mrb_obj_value(str2);
849
982
  }
@@ -912,21 +1045,7 @@ mrb_str_cmp_m(mrb_state *mrb, mrb_value str1)
912
1045
 
913
1046
  mrb_get_args(mrb, "o", &str2);
914
1047
  if (!mrb_string_p(str2)) {
915
- if (!mrb_respond_to(mrb, str2, mrb_intern_lit(mrb, "to_s"))) {
916
- return mrb_nil_value();
917
- }
918
- else if (!mrb_respond_to(mrb, str2, mrb_intern_lit(mrb, "<=>"))) {
919
- return mrb_nil_value();
920
- }
921
- else {
922
- mrb_value tmp = mrb_funcall(mrb, str2, "<=>", 1, str1);
923
-
924
- if (mrb_nil_p(tmp)) return mrb_nil_value();
925
- if (!mrb_fixnum_p(tmp)) {
926
- return mrb_funcall(mrb, mrb_fixnum_value(0), "-", 1, tmp);
927
- }
928
- result = -mrb_fixnum(tmp);
929
- }
1048
+ return mrb_nil_value();
930
1049
  }
931
1050
  else {
932
1051
  result = mrb_str_cmp(mrb, str1, str2);
@@ -973,7 +1092,6 @@ mrb_str_equal_m(mrb_state *mrb, mrb_value str1)
973
1092
  return mrb_bool_value(mrb_str_equal(mrb, str1, str2));
974
1093
  }
975
1094
  /* ---------------------------------- */
976
- mrb_value mrb_mod_to_s(mrb_state *mrb, mrb_value klass);
977
1095
 
978
1096
  MRB_API mrb_value
979
1097
  mrb_str_to_str(mrb_state *mrb, mrb_value str)
@@ -981,6 +1099,8 @@ mrb_str_to_str(mrb_state *mrb, mrb_value str)
981
1099
  switch (mrb_type(str)) {
982
1100
  case MRB_TT_STRING:
983
1101
  return str;
1102
+ case MRB_TT_SYMBOL:
1103
+ return mrb_sym_str(mrb, mrb_symbol(str));
984
1104
  case MRB_TT_FIXNUM:
985
1105
  return mrb_fixnum_to_str(mrb, str, 10);
986
1106
  case MRB_TT_CLASS:
@@ -991,6 +1111,7 @@ mrb_str_to_str(mrb_state *mrb, mrb_value str)
991
1111
  }
992
1112
  }
993
1113
 
1114
+ /* obslete: use RSTRING_PTR() */
994
1115
  MRB_API const char*
995
1116
  mrb_string_value_ptr(mrb_state *mrb, mrb_value str)
996
1117
  {
@@ -998,6 +1119,7 @@ mrb_string_value_ptr(mrb_state *mrb, mrb_value str)
998
1119
  return RSTRING_PTR(str);
999
1120
  }
1000
1121
 
1122
+ /* obslete: use RSTRING_LEN() */
1001
1123
  MRB_API mrb_int
1002
1124
  mrb_string_value_len(mrb_state *mrb, mrb_value ptr)
1003
1125
  {
@@ -1005,87 +1127,110 @@ mrb_string_value_len(mrb_state *mrb, mrb_value ptr)
1005
1127
  return RSTRING_LEN(ptr);
1006
1128
  }
1007
1129
 
1008
- void
1009
- mrb_noregexp(mrb_state *mrb, mrb_value self)
1010
- {
1011
- mrb_raise(mrb, E_NOTIMP_ERROR, "Regexp class not implemented");
1012
- }
1013
-
1014
- void
1015
- mrb_regexp_check(mrb_state *mrb, mrb_value obj)
1016
- {
1017
- if (mrb_regexp_p(mrb, obj)) {
1018
- mrb_noregexp(mrb, obj);
1019
- }
1020
- }
1021
-
1022
1130
  MRB_API mrb_value
1023
1131
  mrb_str_dup(mrb_state *mrb, mrb_value str)
1024
1132
  {
1025
1133
  struct RString *s = mrb_str_ptr(str);
1026
1134
  struct RString *dup = str_new(mrb, 0, 0);
1027
1135
 
1028
- str_with_class(mrb, dup, str);
1136
+ str_with_class(dup, str);
1029
1137
  return str_replace(mrb, dup, s);
1030
1138
  }
1031
1139
 
1032
- static mrb_value
1033
- mrb_str_aref(mrb_state *mrb, mrb_value str, mrb_value indx)
1034
- {
1035
- mrb_int idx;
1140
+ enum str_convert_range {
1141
+ /* `beg` and `len` are byte unit in `0 ... str.bytesize` */
1142
+ STR_BYTE_RANGE_CORRECTED = 1,
1036
1143
 
1037
- mrb_regexp_check(mrb, indx);
1038
- switch (mrb_type(indx)) {
1039
- case MRB_TT_FIXNUM:
1040
- idx = mrb_fixnum(indx);
1144
+ /* `beg` and `len` are char unit in any range */
1145
+ STR_CHAR_RANGE = 2,
1041
1146
 
1042
- num_index:
1043
- str = str_substr(mrb, str, idx, 1);
1044
- if (!mrb_nil_p(str) && RSTRING_LEN(str) == 0) return mrb_nil_value();
1045
- return str;
1147
+ /* `beg` and `len` are char unit in `0 ... str.size` */
1148
+ STR_CHAR_RANGE_CORRECTED = 3,
1046
1149
 
1047
- case MRB_TT_STRING:
1048
- if (str_index_str(mrb, str, indx, 0) != -1)
1049
- return mrb_str_dup(mrb, indx);
1050
- return mrb_nil_value();
1150
+ /* `beg` is out of range */
1151
+ STR_OUT_OF_RANGE = -1
1152
+ };
1153
+
1154
+ static enum str_convert_range
1155
+ str_convert_range(mrb_state *mrb, mrb_value str, mrb_value indx, mrb_value alen, mrb_int *beg, mrb_int *len)
1156
+ {
1157
+ if (!mrb_undef_p(alen)) {
1158
+ *beg = mrb_int(mrb, indx);
1159
+ *len = mrb_int(mrb, alen);
1160
+ return STR_CHAR_RANGE;
1161
+ }
1162
+ else {
1163
+ switch (mrb_type(indx)) {
1164
+ case MRB_TT_FIXNUM:
1165
+ *beg = mrb_fixnum(indx);
1166
+ *len = 1;
1167
+ return STR_CHAR_RANGE;
1051
1168
 
1052
- case MRB_TT_RANGE:
1053
- goto range_arg;
1169
+ case MRB_TT_STRING:
1170
+ *beg = str_index_str(mrb, str, indx, 0);
1171
+ if (*beg < 0) { break; }
1172
+ *len = RSTRING_LEN(indx);
1173
+ return STR_BYTE_RANGE_CORRECTED;
1054
1174
 
1055
- default:
1056
- indx = mrb_Integer(mrb, indx);
1057
- if (mrb_nil_p(indx)) {
1058
- range_arg:
1059
- {
1060
- mrb_int beg, len;
1061
-
1062
- len = RSTRING_CHAR_LEN(str);
1063
- switch (mrb_range_beg_len(mrb, indx, &beg, &len, len, TRUE)) {
1064
- case 1:
1065
- return str_subseq(mrb, str, beg, len);
1066
- case 2:
1067
- return mrb_nil_value();
1175
+ case MRB_TT_RANGE:
1176
+ goto range_arg;
1177
+
1178
+ default:
1179
+ indx = mrb_to_int(mrb, indx);
1180
+ if (mrb_fixnum_p(indx)) {
1181
+ *beg = mrb_fixnum(indx);
1182
+ *len = 1;
1183
+ return STR_CHAR_RANGE;
1184
+ }
1185
+ range_arg:
1186
+ *len = RSTRING_CHAR_LEN(str);
1187
+ switch (mrb_range_beg_len(mrb, indx, beg, len, *len, TRUE)) {
1188
+ case MRB_RANGE_OK:
1189
+ return STR_CHAR_RANGE_CORRECTED;
1190
+ case MRB_RANGE_OUT:
1191
+ return STR_OUT_OF_RANGE;
1068
1192
  default:
1069
1193
  break;
1070
- }
1071
1194
  }
1195
+
1072
1196
  mrb_raise(mrb, E_TYPE_ERROR, "can't convert to Fixnum");
1073
- }
1074
- idx = mrb_fixnum(indx);
1075
- goto num_index;
1197
+ }
1076
1198
  }
1077
- return mrb_nil_value(); /* not reached */
1199
+ return STR_OUT_OF_RANGE;
1078
1200
  }
1079
1201
 
1080
- /* 15.2.10.5.6 */
1081
- /* 15.2.10.5.34 */
1082
- /*
1202
+ static mrb_value
1203
+ mrb_str_aref(mrb_state *mrb, mrb_value str, mrb_value indx, mrb_value alen)
1204
+ {
1205
+ mrb_int beg, len;
1206
+
1207
+ switch (str_convert_range(mrb, str, indx, alen, &beg, &len)) {
1208
+ case STR_CHAR_RANGE_CORRECTED:
1209
+ return str_subseq(mrb, str, beg, len);
1210
+ case STR_CHAR_RANGE:
1211
+ str = str_substr(mrb, str, beg, len);
1212
+ if (mrb_undef_p(alen) && !mrb_nil_p(str) && RSTRING_LEN(str) == 0) return mrb_nil_value();
1213
+ return str;
1214
+ case STR_BYTE_RANGE_CORRECTED:
1215
+ if (mrb_string_p(indx)) {
1216
+ return mrb_str_dup(mrb, indx);
1217
+ }
1218
+ else {
1219
+ return mrb_str_byte_subseq(mrb, str, beg, len);
1220
+ }
1221
+ case STR_OUT_OF_RANGE:
1222
+ default:
1223
+ return mrb_nil_value();
1224
+ }
1225
+ }
1226
+
1227
+ /* 15.2.10.5.6 */
1228
+ /* 15.2.10.5.34 */
1229
+ /*
1083
1230
  * call-seq:
1084
1231
  * str[fixnum] => fixnum or nil
1085
1232
  * str[fixnum, fixnum] => new_str or nil
1086
1233
  * str[range] => new_str or nil
1087
- * str[regexp] => new_str or nil
1088
- * str[regexp, fixnum] => new_str or nil
1089
1234
  * str[other_str] => new_str or nil
1090
1235
  * str.slice(fixnum) => fixnum or nil
1091
1236
  * str.slice(fixnum, fixnum) => new_str or nil
@@ -1121,20 +1266,198 @@ static mrb_value
1121
1266
  mrb_str_aref_m(mrb_state *mrb, mrb_value str)
1122
1267
  {
1123
1268
  mrb_value a1, a2;
1124
- mrb_int argc;
1125
1269
 
1126
- argc = mrb_get_args(mrb, "o|o", &a1, &a2);
1127
- if (argc == 2) {
1128
- mrb_int n1, n2;
1270
+ if (mrb_get_args(mrb, "o|o", &a1, &a2) == 1) {
1271
+ a2 = mrb_undef_value();
1272
+ }
1273
+
1274
+ return mrb_str_aref(mrb, str, a1, a2);
1275
+ }
1276
+
1277
+ static mrb_noreturn void
1278
+ str_out_of_index(mrb_state *mrb, mrb_value index)
1279
+ {
1280
+ mrb_raisef(mrb, E_INDEX_ERROR, "index %v out of string", index);
1281
+ }
1282
+
1283
+ static mrb_value
1284
+ str_replace_partial(mrb_state *mrb, mrb_value src, mrb_int pos, mrb_int end, mrb_value rep)
1285
+ {
1286
+ const mrb_int shrink_threshold = 256;
1287
+ struct RString *str = mrb_str_ptr(src);
1288
+ mrb_int len = RSTR_LEN(str);
1289
+ mrb_int replen, newlen;
1290
+ char *strp;
1129
1291
 
1130
- mrb_regexp_check(mrb, a1);
1131
- mrb_get_args(mrb, "ii", &n1, &n2);
1132
- return str_substr(mrb, str, n1, n2);
1292
+ if (end > len) { end = len; }
1293
+
1294
+ if (pos < 0 || pos > len) {
1295
+ str_out_of_index(mrb, mrb_fixnum_value(pos));
1133
1296
  }
1134
- if (argc != 1) {
1135
- mrb_raisef(mrb, E_ARGUMENT_ERROR, "wrong number of arguments (%S for 1)", mrb_fixnum_value(argc));
1297
+
1298
+ replen = (mrb_nil_p(rep) ? 0 : RSTRING_LEN(rep));
1299
+ newlen = replen + len - (end - pos);
1300
+
1301
+ if (newlen >= MRB_SSIZE_MAX || newlen < replen /* overflowed */) {
1302
+ mrb_raise(mrb, E_RUNTIME_ERROR, "string size too big");
1136
1303
  }
1137
- return mrb_str_aref(mrb, str, a1);
1304
+
1305
+ mrb_str_modify(mrb, str);
1306
+
1307
+ if (len < newlen) {
1308
+ resize_capa(mrb, str, newlen);
1309
+ }
1310
+
1311
+ strp = RSTR_PTR(str);
1312
+
1313
+ memmove(strp + newlen - (len - end), strp + end, len - end);
1314
+ if (!mrb_nil_p(rep)) {
1315
+ memmove(strp + pos, RSTRING_PTR(rep), replen);
1316
+ }
1317
+ RSTR_SET_LEN(str, newlen);
1318
+ strp[newlen] = '\0';
1319
+
1320
+ if (len - newlen >= shrink_threshold) {
1321
+ resize_capa(mrb, str, newlen);
1322
+ }
1323
+
1324
+ return src;
1325
+ }
1326
+
1327
+ #define IS_EVSTR(p,e) ((p) < (e) && (*(p) == '$' || *(p) == '@' || *(p) == '{'))
1328
+
1329
+ static mrb_value
1330
+ str_escape(mrb_state *mrb, mrb_value str, mrb_bool inspect)
1331
+ {
1332
+ const char *p, *pend;
1333
+ char buf[4]; /* `\x??` or UTF-8 character */
1334
+ mrb_value result = mrb_str_new_lit(mrb, "\"");
1335
+ #ifdef MRB_UTF8_STRING
1336
+ uint32_t ascii_flag = MRB_STR_ASCII;
1337
+ #endif
1338
+
1339
+ p = RSTRING_PTR(str); pend = RSTRING_END(str);
1340
+ for (;p < pend; p++) {
1341
+ unsigned char c, cc;
1342
+ #ifdef MRB_UTF8_STRING
1343
+ if (inspect) {
1344
+ mrb_int clen = utf8len(p, pend);
1345
+ if (clen > 1) {
1346
+ mrb_int i;
1347
+
1348
+ for (i=0; i<clen; i++) {
1349
+ buf[i] = p[i];
1350
+ }
1351
+ mrb_str_cat(mrb, result, buf, clen);
1352
+ p += clen-1;
1353
+ ascii_flag = 0;
1354
+ continue;
1355
+ }
1356
+ }
1357
+ #endif
1358
+ c = *p;
1359
+ if (c == '"'|| c == '\\' || (c == '#' && IS_EVSTR(p+1, pend))) {
1360
+ buf[0] = '\\'; buf[1] = c;
1361
+ mrb_str_cat(mrb, result, buf, 2);
1362
+ continue;
1363
+ }
1364
+ if (ISPRINT(c)) {
1365
+ buf[0] = c;
1366
+ mrb_str_cat(mrb, result, buf, 1);
1367
+ continue;
1368
+ }
1369
+ switch (c) {
1370
+ case '\n': cc = 'n'; break;
1371
+ case '\r': cc = 'r'; break;
1372
+ case '\t': cc = 't'; break;
1373
+ case '\f': cc = 'f'; break;
1374
+ case '\013': cc = 'v'; break;
1375
+ case '\010': cc = 'b'; break;
1376
+ case '\007': cc = 'a'; break;
1377
+ case 033: cc = 'e'; break;
1378
+ default: cc = 0; break;
1379
+ }
1380
+ if (cc) {
1381
+ buf[0] = '\\';
1382
+ buf[1] = (char)cc;
1383
+ mrb_str_cat(mrb, result, buf, 2);
1384
+ continue;
1385
+ }
1386
+ else {
1387
+ buf[0] = '\\';
1388
+ buf[1] = 'x';
1389
+ buf[3] = mrb_digitmap[c % 16]; c /= 16;
1390
+ buf[2] = mrb_digitmap[c % 16];
1391
+ mrb_str_cat(mrb, result, buf, 4);
1392
+ continue;
1393
+ }
1394
+ }
1395
+ mrb_str_cat_lit(mrb, result, "\"");
1396
+ #ifdef MRB_UTF8_STRING
1397
+ if (inspect) {
1398
+ mrb_str_ptr(str)->flags |= ascii_flag;
1399
+ mrb_str_ptr(result)->flags |= ascii_flag;
1400
+ }
1401
+ else {
1402
+ RSTR_SET_ASCII_FLAG(mrb_str_ptr(result));
1403
+ }
1404
+ #endif
1405
+
1406
+ return result;
1407
+ }
1408
+
1409
+ static void
1410
+ mrb_str_aset(mrb_state *mrb, mrb_value str, mrb_value indx, mrb_value alen, mrb_value replace)
1411
+ {
1412
+ mrb_int beg, len, charlen;
1413
+
1414
+ mrb_to_str(mrb, replace);
1415
+
1416
+ switch (str_convert_range(mrb, str, indx, alen, &beg, &len)) {
1417
+ case STR_OUT_OF_RANGE:
1418
+ default:
1419
+ mrb_raise(mrb, E_INDEX_ERROR, "string not matched");
1420
+ case STR_CHAR_RANGE:
1421
+ if (len < 0) {
1422
+ mrb_raisef(mrb, E_INDEX_ERROR, "negative length %v", alen);
1423
+ }
1424
+ charlen = RSTRING_CHAR_LEN(str);
1425
+ if (beg < 0) { beg += charlen; }
1426
+ if (beg < 0 || beg > charlen) { str_out_of_index(mrb, indx); }
1427
+ /* fall through */
1428
+ case STR_CHAR_RANGE_CORRECTED:
1429
+ str_range_to_bytes(str, &beg, &len);
1430
+ /* fall through */
1431
+ case STR_BYTE_RANGE_CORRECTED:
1432
+ str_replace_partial(mrb, str, beg, beg + len, replace);
1433
+ }
1434
+ }
1435
+
1436
+ /*
1437
+ * call-seq:
1438
+ * str[fixnum] = replace
1439
+ * str[fixnum, fixnum] = replace
1440
+ * str[range] = replace
1441
+ * str[other_str] = replace
1442
+ *
1443
+ * Modify +self+ by replacing the content of +self+.
1444
+ * The portion of the string affected is determined using the same criteria as +String#[]+.
1445
+ */
1446
+ static mrb_value
1447
+ mrb_str_aset_m(mrb_state *mrb, mrb_value str)
1448
+ {
1449
+ mrb_value indx, alen, replace;
1450
+
1451
+ switch (mrb_get_args(mrb, "oo|S!", &indx, &alen, &replace)) {
1452
+ case 2:
1453
+ replace = alen;
1454
+ alen = mrb_undef_value();
1455
+ break;
1456
+ case 3:
1457
+ break;
1458
+ }
1459
+ mrb_str_aset(mrb, str, indx, alen, replace);
1460
+ return str;
1138
1461
  }
1139
1462
 
1140
1463
  /* 15.2.10.5.8 */
@@ -1157,7 +1480,7 @@ mrb_str_capitalize_bang(mrb_state *mrb, mrb_value str)
1157
1480
  mrb_bool modify = FALSE;
1158
1481
  struct RString *s = mrb_str_ptr(str);
1159
1482
 
1160
- mrb_str_modify(mrb, s);
1483
+ mrb_str_modify_keep_ascii(mrb, s);
1161
1484
  if (RSTR_LEN(s) == 0 || !RSTR_PTR(s)) return mrb_nil_value();
1162
1485
  p = RSTR_PTR(s); pend = RSTR_PTR(s) + RSTR_LEN(s);
1163
1486
  if (ISLOWER(*p)) {
@@ -1216,7 +1539,7 @@ mrb_str_chomp_bang(mrb_state *mrb, mrb_value str)
1216
1539
  struct RString *s = mrb_str_ptr(str);
1217
1540
 
1218
1541
  argc = mrb_get_args(mrb, "|S", &rs);
1219
- mrb_str_modify(mrb, s);
1542
+ mrb_str_modify_keep_ascii(mrb, s);
1220
1543
  len = RSTR_LEN(s);
1221
1544
  if (argc == 0) {
1222
1545
  if (len == 0) return mrb_nil_value();
@@ -1278,9 +1601,8 @@ mrb_str_chomp_bang(mrb_state *mrb, mrb_value str)
1278
1601
  * str.chomp(separator="\n") => new_str
1279
1602
  *
1280
1603
  * Returns a new <code>String</code> with the given record separator removed
1281
- * from the end of <i>str</i> (if present). If <code>$/</code> has not been
1282
- * changed from the default Ruby record separator, then <code>chomp</code> also
1283
- * removes carriage return characters (that is it will remove <code>\n</code>,
1604
+ * from the end of <i>str</i> (if present). <code>chomp</code> also removes
1605
+ * carriage return characters (that is it will remove <code>\n</code>,
1284
1606
  * <code>\r</code>, and <code>\r\n</code>).
1285
1607
  *
1286
1608
  * "hello".chomp #=> "hello"
@@ -1315,7 +1637,7 @@ mrb_str_chop_bang(mrb_state *mrb, mrb_value str)
1315
1637
  {
1316
1638
  struct RString *s = mrb_str_ptr(str);
1317
1639
 
1318
- mrb_str_modify(mrb, s);
1640
+ mrb_str_modify_keep_ascii(mrb, s);
1319
1641
  if (RSTR_LEN(s) > 0) {
1320
1642
  mrb_int len;
1321
1643
  #ifdef MRB_UTF8_STRING
@@ -1384,7 +1706,7 @@ mrb_str_downcase_bang(mrb_state *mrb, mrb_value str)
1384
1706
  mrb_bool modify = FALSE;
1385
1707
  struct RString *s = mrb_str_ptr(str);
1386
1708
 
1387
- mrb_str_modify(mrb, s);
1709
+ mrb_str_modify_keep_ascii(mrb, s);
1388
1710
  p = RSTR_PTR(s);
1389
1711
  pend = RSTR_PTR(s) + RSTR_LEN(s);
1390
1712
  while (p < pend) {
@@ -1452,7 +1774,7 @@ mrb_str_eql(mrb_state *mrb, mrb_value self)
1452
1774
  mrb_bool eql_p;
1453
1775
 
1454
1776
  mrb_get_args(mrb, "o", &str2);
1455
- eql_p = (mrb_type(str2) == MRB_TT_STRING) && str_eql(mrb, self, str2);
1777
+ eql_p = (mrb_string_p(str2)) && str_eql(mrb, self, str2);
1456
1778
 
1457
1779
  return mrb_bool_value(eql_p);
1458
1780
  }
@@ -1521,71 +1843,36 @@ mrb_str_include(mrb_state *mrb, mrb_value self)
1521
1843
  /*
1522
1844
  * call-seq:
1523
1845
  * str.index(substring [, offset]) => fixnum or nil
1524
- * str.index(fixnum [, offset]) => fixnum or nil
1525
- * str.index(regexp [, offset]) => fixnum or nil
1526
1846
  *
1527
1847
  * Returns the index of the first occurrence of the given
1528
- * <i>substring</i>,
1529
- * character (<i>fixnum</i>), or pattern (<i>regexp</i>) in <i>str</i>.
1530
- * Returns
1531
- * <code>nil</code> if not found.
1848
+ * <i>substring</i>. Returns <code>nil</code> if not found.
1532
1849
  * If the second parameter is present, it
1533
1850
  * specifies the position in the string to begin the search.
1534
1851
  *
1535
- * "hello".index('e') #=> 1
1852
+ * "hello".index('l') #=> 2
1536
1853
  * "hello".index('lo') #=> 3
1537
1854
  * "hello".index('a') #=> nil
1538
- * "hello".index(101) #=> 1(101=0x65='e')
1539
- * "hello".index(/[aeiou]/, -3) #=> 4
1855
+ * "hello".index('l', -2) #=> 3
1540
1856
  */
1541
1857
  static mrb_value
1542
1858
  mrb_str_index_m(mrb_state *mrb, mrb_value str)
1543
1859
  {
1544
- mrb_value *argv;
1545
- mrb_int argc;
1546
1860
  mrb_value sub;
1547
- mrb_int pos, clen;
1861
+ mrb_int pos;
1548
1862
 
1549
- mrb_get_args(mrb, "*!", &argv, &argc);
1550
- if (argc == 2) {
1551
- mrb_get_args(mrb, "oi", &sub, &pos);
1552
- }
1553
- else {
1863
+ if (mrb_get_args(mrb, "S|i", &sub, &pos) == 1) {
1554
1864
  pos = 0;
1555
- if (argc > 0)
1556
- sub = argv[0];
1557
- else
1558
- sub = mrb_nil_value();
1559
1865
  }
1560
- mrb_regexp_check(mrb, sub);
1561
- clen = RSTRING_CHAR_LEN(str);
1562
- if (pos < 0) {
1866
+ else if (pos < 0) {
1867
+ mrb_int clen = RSTRING_CHAR_LEN(str);
1563
1868
  pos += clen;
1564
1869
  if (pos < 0) {
1565
1870
  return mrb_nil_value();
1566
1871
  }
1567
1872
  }
1568
- if (pos > clen) return mrb_nil_value();
1569
- pos = chars2bytes(str, 0, pos);
1570
-
1571
- switch (mrb_type(sub)) {
1572
- default: {
1573
- mrb_value tmp;
1574
-
1575
- tmp = mrb_check_string_type(mrb, sub);
1576
- if (mrb_nil_p(tmp)) {
1577
- mrb_raisef(mrb, E_TYPE_ERROR, "type mismatch: %S given", sub);
1578
- }
1579
- sub = tmp;
1580
- }
1581
- /* fall through */
1582
- case MRB_TT_STRING:
1583
- pos = str_index_str(mrb, str, sub, pos);
1584
- break;
1585
- }
1873
+ pos = str_index_str_by_char(mrb, str, sub, pos);
1586
1874
 
1587
1875
  if (pos == -1) return mrb_nil_value();
1588
- pos = bytes2chars(RSTRING_PTR(str), pos);
1589
1876
  BYTES_ALIGN_CHECK(pos);
1590
1877
  return mrb_fixnum_value(pos);
1591
1878
  }
@@ -1658,15 +1945,10 @@ mrb_str_intern(mrb_state *mrb, mrb_value self)
1658
1945
  MRB_API mrb_value
1659
1946
  mrb_obj_as_string(mrb_state *mrb, mrb_value obj)
1660
1947
  {
1661
- mrb_value str;
1662
-
1663
1948
  if (mrb_string_p(obj)) {
1664
1949
  return obj;
1665
1950
  }
1666
- str = mrb_funcall(mrb, obj, "to_s", 0);
1667
- if (!mrb_string_p(str))
1668
- return mrb_any_to_s(mrb, obj);
1669
- return str;
1951
+ return mrb_str_to_str(mrb, obj);
1670
1952
  }
1671
1953
 
1672
1954
  MRB_API mrb_value
@@ -1699,6 +1981,18 @@ mrb_ptr_to_str(mrb_state *mrb, void *p)
1699
1981
  return mrb_obj_value(p_str);
1700
1982
  }
1701
1983
 
1984
+ static inline void
1985
+ str_reverse(char *p, char *e)
1986
+ {
1987
+ char c;
1988
+
1989
+ while (p < e) {
1990
+ c = *p;
1991
+ *p++ = *e;
1992
+ *e-- = c;
1993
+ }
1994
+ }
1995
+
1702
1996
  /* 15.2.10.5.30 */
1703
1997
  /*
1704
1998
  * call-seq:
@@ -1709,53 +2003,38 @@ mrb_ptr_to_str(mrb_state *mrb, void *p)
1709
2003
  static mrb_value
1710
2004
  mrb_str_reverse_bang(mrb_state *mrb, mrb_value str)
1711
2005
  {
2006
+ struct RString *s = mrb_str_ptr(str);
2007
+ char *p, *e;
2008
+
1712
2009
  #ifdef MRB_UTF8_STRING
1713
2010
  mrb_int utf8_len = RSTRING_CHAR_LEN(str);
1714
- mrb_int len = RSTRING_LEN(str);
1715
-
1716
- if (utf8_len == len) goto bytes;
1717
- if (utf8_len > 1) {
1718
- char *buf;
1719
- char *p, *e, *r;
1720
-
1721
- mrb_str_modify(mrb, mrb_str_ptr(str));
1722
- len = RSTRING_LEN(str);
1723
- buf = (char*)mrb_malloc(mrb, (size_t)len);
1724
- p = buf;
1725
- e = buf + len;
1726
-
1727
- memcpy(buf, RSTRING_PTR(str), len);
1728
- r = RSTRING_PTR(str) + len;
2011
+ mrb_int len = RSTR_LEN(s);
1729
2012
 
2013
+ if (utf8_len < 2) return str;
2014
+ if (utf8_len < len) {
2015
+ mrb_str_modify(mrb, s);
2016
+ p = RSTR_PTR(s);
2017
+ e = p + RSTR_LEN(s);
1730
2018
  while (p<e) {
1731
2019
  mrb_int clen = utf8len(p, e);
1732
- r -= clen;
1733
- memcpy(r, p, clen);
2020
+ str_reverse(p, p + clen - 1);
1734
2021
  p += clen;
1735
2022
  }
1736
- mrb_free(mrb, buf);
2023
+ goto bytes;
1737
2024
  }
1738
- return str;
1739
-
1740
- bytes:
1741
2025
  #endif
1742
- {
1743
- struct RString *s = mrb_str_ptr(str);
1744
- char *p, *e;
1745
- char c;
1746
2026
 
2027
+ if (RSTR_LEN(s) > 1) {
1747
2028
  mrb_str_modify(mrb, s);
1748
- if (RSTR_LEN(s) > 1) {
1749
- p = RSTR_PTR(s);
1750
- e = p + RSTR_LEN(s) - 1;
1751
- while (p < e) {
1752
- c = *p;
1753
- *p++ = *e;
1754
- *e-- = c;
1755
- }
1756
- }
1757
- return str;
2029
+ goto bytes;
1758
2030
  }
2031
+ return str;
2032
+
2033
+ bytes:
2034
+ p = RSTR_PTR(s);
2035
+ e = p + RSTR_LEN(s) - 1;
2036
+ str_reverse(p, e);
2037
+ return str;
1759
2038
  }
1760
2039
 
1761
2040
  /* ---------------------------------- */
@@ -1779,73 +2058,43 @@ mrb_str_reverse(mrb_state *mrb, mrb_value str)
1779
2058
  /* 15.2.10.5.31 */
1780
2059
  /*
1781
2060
  * call-seq:
1782
- * str.rindex(substring [, fixnum]) => fixnum or nil
1783
- * str.rindex(fixnum [, fixnum]) => fixnum or nil
1784
- * str.rindex(regexp [, fixnum]) => fixnum or nil
2061
+ * str.rindex(substring [, offset]) => fixnum or nil
1785
2062
  *
1786
- * Returns the index of the last occurrence of the given <i>substring</i>,
1787
- * character (<i>fixnum</i>), or pattern (<i>regexp</i>) in <i>str</i>. Returns
1788
- * <code>nil</code> if not found. If the second parameter is present, it
1789
- * specifies the position in the string to end the search---characters beyond
1790
- * this point will not be considered.
2063
+ * Returns the index of the last occurrence of the given <i>substring</i>.
2064
+ * Returns <code>nil</code> if not found. If the second parameter is
2065
+ * present, it specifies the position in the string to end the
2066
+ * search---characters beyond this point will not be considered.
1791
2067
  *
1792
2068
  * "hello".rindex('e') #=> 1
1793
2069
  * "hello".rindex('l') #=> 3
1794
2070
  * "hello".rindex('a') #=> nil
1795
- * "hello".rindex(101) #=> 1
1796
- * "hello".rindex(/[aeiou]/, -2) #=> 1
2071
+ * "hello".rindex('l', 2) #=> 2
1797
2072
  */
1798
2073
  static mrb_value
1799
2074
  mrb_str_rindex(mrb_state *mrb, mrb_value str)
1800
2075
  {
1801
- mrb_value *argv;
1802
- mrb_int argc;
1803
2076
  mrb_value sub;
1804
2077
  mrb_int pos, len = RSTRING_CHAR_LEN(str);
1805
2078
 
1806
- mrb_get_args(mrb, "*!", &argv, &argc);
1807
- if (argc == 2) {
1808
- mrb_get_args(mrb, "oi", &sub, &pos);
2079
+ if (mrb_get_args(mrb, "S|i", &sub, &pos) == 1) {
2080
+ pos = len;
2081
+ }
2082
+ else {
1809
2083
  if (pos < 0) {
1810
2084
  pos += len;
1811
2085
  if (pos < 0) {
1812
- mrb_regexp_check(mrb, sub);
1813
2086
  return mrb_nil_value();
1814
2087
  }
1815
2088
  }
1816
2089
  if (pos > len) pos = len;
1817
2090
  }
1818
- else {
1819
- pos = len;
1820
- if (argc > 0)
1821
- sub = argv[0];
1822
- else
1823
- sub = mrb_nil_value();
1824
- }
1825
2091
  pos = chars2bytes(str, 0, pos);
1826
- mrb_regexp_check(mrb, sub);
1827
-
1828
- switch (mrb_type(sub)) {
1829
- default: {
1830
- mrb_value tmp;
1831
-
1832
- tmp = mrb_check_string_type(mrb, sub);
1833
- if (mrb_nil_p(tmp)) {
1834
- mrb_raisef(mrb, E_TYPE_ERROR, "type mismatch: %S given", sub);
1835
- }
1836
- sub = tmp;
1837
- }
1838
- /* fall through */
1839
- case MRB_TT_STRING:
1840
- pos = str_rindex(mrb, str, sub, pos);
1841
- if (pos >= 0) {
1842
- pos = bytes2chars(RSTRING_PTR(str), pos);
1843
- BYTES_ALIGN_CHECK(pos);
1844
- return mrb_fixnum_value(pos);
1845
- }
1846
- break;
1847
-
1848
- } /* end of switch (TYPE(sub)) */
2092
+ pos = str_rindex(mrb, str, sub, pos);
2093
+ if (pos >= 0) {
2094
+ pos = bytes2chars(RSTRING_PTR(str), RSTRING_LEN(str), pos);
2095
+ BYTES_ALIGN_CHECK(pos);
2096
+ return mrb_fixnum_value(pos);
2097
+ }
1849
2098
  return mrb_nil_value();
1850
2099
  }
1851
2100
 
@@ -1853,23 +2102,18 @@ mrb_str_rindex(mrb_state *mrb, mrb_value str)
1853
2102
 
1854
2103
  /*
1855
2104
  * call-seq:
1856
- * str.split(pattern="\n", [limit]) => anArray
2105
+ * str.split(separator=nil, [limit]) => anArray
1857
2106
  *
1858
2107
  * Divides <i>str</i> into substrings based on a delimiter, returning an array
1859
2108
  * of these substrings.
1860
2109
  *
1861
- * If <i>pattern</i> is a <code>String</code>, then its contents are used as
1862
- * the delimiter when splitting <i>str</i>. If <i>pattern</i> is a single
2110
+ * If <i>separator</i> is a <code>String</code>, then its contents are used as
2111
+ * the delimiter when splitting <i>str</i>. If <i>separator</i> is a single
1863
2112
  * space, <i>str</i> is split on whitespace, with leading whitespace and runs
1864
2113
  * of contiguous whitespace characters ignored.
1865
2114
  *
1866
- * If <i>pattern</i> is a <code>Regexp</code>, <i>str</i> is divided where the
1867
- * pattern matches. Whenever the pattern matches a zero-length string,
1868
- * <i>str</i> is split into individual characters.
1869
- *
1870
- * If <i>pattern</i> is omitted, the value of <code>$;</code> is used. If
1871
- * <code>$;</code> is <code>nil</code> (which is the default), <i>str</i> is
1872
- * split on whitespace as if ' ' were specified.
2115
+ * If <i>separator</i> is omitted or <code>nil</code> (which is the default),
2116
+ * <i>str</i> is split on whitespace as if ' ' were specified.
1873
2117
  *
1874
2118
  * If the <i>limit</i> parameter is omitted, trailing null fields are
1875
2119
  * suppressed. If <i>limit</i> is a positive number, at most that number of
@@ -1880,9 +2124,6 @@ mrb_str_rindex(mrb_state *mrb, mrb_value str)
1880
2124
  *
1881
2125
  * " now's the time".split #=> ["now's", "the", "time"]
1882
2126
  * " now's the time".split(' ') #=> ["now's", "the", "time"]
1883
- * " now's the time".split(/ /) #=> ["", "now's", "", "the", "time"]
1884
- * "hello".split(//) #=> ["h", "e", "l", "l", "o"]
1885
- * "hello".split(//, 3) #=> ["h", "e", "llo"]
1886
2127
  *
1887
2128
  * "mellow yellow".split("ello") #=> ["m", "w y", "w"]
1888
2129
  * "1,2,,3,4,,".split(',') #=> ["1", "2", "", "3", "4"]
@@ -1895,7 +2136,7 @@ mrb_str_split_m(mrb_state *mrb, mrb_value str)
1895
2136
  {
1896
2137
  mrb_int argc;
1897
2138
  mrb_value spat = mrb_nil_value();
1898
- enum {awk, string, regexp} split_type = string;
2139
+ enum {awk, string} split_type = string;
1899
2140
  mrb_int i = 0;
1900
2141
  mrb_int beg;
1901
2142
  mrb_int end;
@@ -1917,16 +2158,11 @@ mrb_str_split_m(mrb_state *mrb, mrb_value str)
1917
2158
  if (argc == 0 || mrb_nil_p(spat)) {
1918
2159
  split_type = awk;
1919
2160
  }
1920
- else {
1921
- if (mrb_string_p(spat)) {
1922
- split_type = string;
1923
- if (RSTRING_LEN(spat) == 1 && RSTRING_PTR(spat)[0] == ' ') {
1924
- split_type = awk;
1925
- }
1926
- }
1927
- else {
1928
- mrb_noregexp(mrb, str);
1929
- }
2161
+ else if (!mrb_string_p(spat)) {
2162
+ mrb_raise(mrb, E_TYPE_ERROR, "expected String");
2163
+ }
2164
+ else if (RSTRING_LEN(spat) == 1 && RSTRING_PTR(spat)[0] == ' ') {
2165
+ split_type = awk;
1930
2166
  }
1931
2167
 
1932
2168
  result = mrb_ary_new(mrb);
@@ -1952,7 +2188,7 @@ mrb_str_split_m(mrb_state *mrb, mrb_value str)
1952
2188
  }
1953
2189
  }
1954
2190
  else if (ISSPACE(c)) {
1955
- mrb_ary_push(mrb, result, byte_subseq(mrb, str, beg, end-beg));
2191
+ mrb_ary_push(mrb, result, mrb_str_byte_subseq(mrb, str, beg, end-beg));
1956
2192
  mrb_gc_arena_restore(mrb, ai);
1957
2193
  skip = TRUE;
1958
2194
  beg = idx;
@@ -1963,7 +2199,7 @@ mrb_str_split_m(mrb_state *mrb, mrb_value str)
1963
2199
  }
1964
2200
  }
1965
2201
  }
1966
- else if (split_type == string) {
2202
+ else { /* split_type == string */
1967
2203
  mrb_int str_len = RSTRING_LEN(str);
1968
2204
  mrb_int pat_len = RSTRING_LEN(spat);
1969
2205
  mrb_int idx = 0;
@@ -1977,22 +2213,19 @@ mrb_str_split_m(mrb_state *mrb, mrb_value str)
1977
2213
  else {
1978
2214
  end = chars2bytes(str, idx, 1);
1979
2215
  }
1980
- mrb_ary_push(mrb, result, byte_subseq(mrb, str, idx, end));
2216
+ mrb_ary_push(mrb, result, mrb_str_byte_subseq(mrb, str, idx, end));
1981
2217
  mrb_gc_arena_restore(mrb, ai);
1982
2218
  idx += end + pat_len;
1983
2219
  if (lim_p && lim <= ++i) break;
1984
2220
  }
1985
2221
  beg = idx;
1986
2222
  }
1987
- else {
1988
- mrb_noregexp(mrb, str);
1989
- }
1990
2223
  if (RSTRING_LEN(str) > 0 && (lim_p || RSTRING_LEN(str) > beg || lim < 0)) {
1991
2224
  if (RSTRING_LEN(str) == beg) {
1992
2225
  tmp = mrb_str_new_empty(mrb, str);
1993
2226
  }
1994
2227
  else {
1995
- tmp = byte_subseq(mrb, str, beg, RSTRING_LEN(str)-beg);
2228
+ tmp = mrb_str_byte_subseq(mrb, str, beg, RSTRING_LEN(str)-beg);
1996
2229
  }
1997
2230
  mrb_ary_push(mrb, result, tmp);
1998
2231
  }
@@ -2006,7 +2239,7 @@ mrb_str_split_m(mrb_state *mrb, mrb_value str)
2006
2239
  return result;
2007
2240
  }
2008
2241
 
2009
- static mrb_value
2242
+ mrb_value
2010
2243
  mrb_str_len_to_inum(mrb_state *mrb, const char *str, mrb_int len, mrb_int base, int badcheck)
2011
2244
  {
2012
2245
  const char *p = str;
@@ -2090,7 +2323,7 @@ mrb_str_len_to_inum(mrb_state *mrb, const char *str, mrb_int len, mrb_int base,
2090
2323
  break;
2091
2324
  default:
2092
2325
  if (base < 2 || 36 < base) {
2093
- mrb_raisef(mrb, E_ARGUMENT_ERROR, "illegal radix %S", mrb_fixnum_value(base));
2326
+ mrb_raisef(mrb, E_ARGUMENT_ERROR, "illegal radix %i", base);
2094
2327
  }
2095
2328
  break;
2096
2329
  } /* end of switch (base) { */
@@ -2117,7 +2350,7 @@ mrb_str_len_to_inum(mrb_state *mrb, const char *str, mrb_int len, mrb_int base,
2117
2350
  if (*(p - 1) == '0')
2118
2351
  p--;
2119
2352
  }
2120
- if (p == pend) {
2353
+ if (p == pend || *p == '_') {
2121
2354
  if (badcheck) goto bad;
2122
2355
  return mrb_fixnum_value(0);
2123
2356
  }
@@ -2150,16 +2383,16 @@ mrb_str_len_to_inum(mrb_state *mrb, const char *str, mrb_int len, mrb_int base,
2150
2383
  else
2151
2384
  #endif
2152
2385
  {
2153
- mrb_raisef(mrb, E_ARGUMENT_ERROR, "string (%S) too big for integer",
2154
- mrb_str_new(mrb, str, pend-str));
2386
+ mrb_raisef(mrb, E_RANGE_ERROR, "string (%l) too big for integer", str, pend-str);
2155
2387
  }
2156
2388
  }
2157
2389
  }
2158
2390
  val = (mrb_int)n;
2159
2391
  if (badcheck) {
2160
- if (p == str) goto bad; /* no number */
2392
+ if (p == str) goto bad; /* no number */
2393
+ if (*(p - 1) == '_') goto bad; /* trailing '_' */
2161
2394
  while (p<pend && ISSPACE(*p)) p++;
2162
- if (p<pend) goto bad; /* trailing garbage */
2395
+ if (p<pend) goto bad; /* trailing garbage */
2163
2396
  }
2164
2397
 
2165
2398
  return mrb_fixnum_value(sign ? val : -val);
@@ -2167,8 +2400,7 @@ mrb_str_len_to_inum(mrb_state *mrb, const char *str, mrb_int len, mrb_int base,
2167
2400
  mrb_raise(mrb, E_ARGUMENT_ERROR, "string contains null byte");
2168
2401
  /* not reached */
2169
2402
  bad:
2170
- mrb_raisef(mrb, E_ARGUMENT_ERROR, "invalid string for number(%S)",
2171
- mrb_inspect(mrb, mrb_str_new(mrb, str, pend-str)));
2403
+ mrb_raisef(mrb, E_ARGUMENT_ERROR, "invalid string for number(%!l)", str, pend-str);
2172
2404
  /* not reached */
2173
2405
  return mrb_fixnum_value(0);
2174
2406
  }
@@ -2179,23 +2411,35 @@ mrb_cstr_to_inum(mrb_state *mrb, const char *str, mrb_int base, mrb_bool badchec
2179
2411
  return mrb_str_len_to_inum(mrb, str, strlen(str), base, badcheck);
2180
2412
  }
2181
2413
 
2414
+ /* obslete: use RSTRING_CSTR() or mrb_string_cstr() */
2182
2415
  MRB_API const char*
2183
2416
  mrb_string_value_cstr(mrb_state *mrb, mrb_value *ptr)
2184
2417
  {
2185
- mrb_value str = mrb_to_str(mrb, *ptr);
2186
- struct RString *ps = mrb_str_ptr(str);
2187
- mrb_int len = mrb_str_strlen(mrb, ps);
2188
- char *p = RSTR_PTR(ps);
2418
+ struct RString *ps;
2419
+ const char *p;
2420
+ mrb_int len;
2189
2421
 
2190
- if (!p || p[len] != '\0') {
2191
- if (MRB_FROZEN_P(ps)) {
2192
- *ptr = str = mrb_str_dup(mrb, str);
2193
- ps = mrb_str_ptr(str);
2194
- }
2195
- mrb_str_modify(mrb, ps);
2196
- return RSTR_PTR(ps);
2422
+ check_null_byte(mrb, *ptr);
2423
+ ps = mrb_str_ptr(*ptr);
2424
+ p = RSTR_PTR(ps);
2425
+ len = RSTR_LEN(ps);
2426
+ if (p[len] == '\0') {
2427
+ return p;
2197
2428
  }
2198
- return p;
2429
+
2430
+ /*
2431
+ * Even after str_modify_keep_ascii(), NULL termination is not ensured if
2432
+ * RSTR_SET_LEN() is used explicitly (e.g. String#delete_suffix!).
2433
+ */
2434
+ str_modify_keep_ascii(mrb, ps);
2435
+ RSTR_PTR(ps)[len] = '\0';
2436
+ return RSTR_PTR(ps);
2437
+ }
2438
+
2439
+ MRB_API const char*
2440
+ mrb_string_cstr(mrb_state *mrb, mrb_value str)
2441
+ {
2442
+ return mrb_string_value_cstr(mrb, &str);
2199
2443
  }
2200
2444
 
2201
2445
  MRB_API mrb_value
@@ -2204,7 +2448,8 @@ mrb_str_to_inum(mrb_state *mrb, mrb_value str, mrb_int base, mrb_bool badcheck)
2204
2448
  const char *s;
2205
2449
  mrb_int len;
2206
2450
 
2207
- s = mrb_string_value_ptr(mrb, str);
2451
+ mrb_to_str(mrb, str);
2452
+ s = RSTRING_PTR(str);
2208
2453
  len = RSTRING_LEN(str);
2209
2454
  return mrb_str_len_to_inum(mrb, s, len, base, badcheck);
2210
2455
  }
@@ -2237,94 +2482,98 @@ mrb_str_to_i(mrb_state *mrb, mrb_value self)
2237
2482
 
2238
2483
  mrb_get_args(mrb, "|i", &base);
2239
2484
  if (base < 0) {
2240
- mrb_raisef(mrb, E_ARGUMENT_ERROR, "illegal radix %S", mrb_fixnum_value(base));
2485
+ mrb_raisef(mrb, E_ARGUMENT_ERROR, "illegal radix %i", base);
2241
2486
  }
2242
2487
  return mrb_str_to_inum(mrb, self, base, FALSE);
2243
2488
  }
2244
2489
 
2245
2490
  #ifndef MRB_WITHOUT_FLOAT
2246
- MRB_API double
2247
- mrb_cstr_to_dbl(mrb_state *mrb, const char * p, mrb_bool badcheck)
2491
+ double
2492
+ mrb_str_len_to_dbl(mrb_state *mrb, const char *s, size_t len, mrb_bool badcheck)
2248
2493
  {
2249
- char *end;
2250
2494
  char buf[DBL_DIG * 4 + 10];
2495
+ const char *p = s;
2496
+ const char *pend = p + len;
2497
+ char *end;
2498
+ char *n;
2499
+ char prev = 0;
2251
2500
  double d;
2252
2501
 
2253
- enum {max_width = 20};
2254
-
2255
2502
  if (!p) return 0.0;
2256
2503
  while (ISSPACE(*p)) p++;
2257
2504
 
2258
- if (!badcheck && p[0] == '0' && (p[1] == 'x' || p[1] == 'X')) {
2259
- return 0.0;
2505
+ if (pend - p > 2 && p[0] == '0' && (p[1] == 'x' || p[1] == 'X')) {
2506
+ mrb_value x;
2507
+
2508
+ if (!badcheck) return 0.0;
2509
+ x = mrb_str_len_to_inum(mrb, p, pend-p, 0, badcheck);
2510
+ if (mrb_fixnum_p(x))
2511
+ d = (double)mrb_fixnum(x);
2512
+ else /* if (mrb_float_p(x)) */
2513
+ d = mrb_float(x);
2514
+ return d;
2515
+ }
2516
+ while (p < pend) {
2517
+ if (!*p) {
2518
+ if (badcheck && p < pend) {
2519
+ mrb_raise(mrb, E_ARGUMENT_ERROR, "string for Float contains null byte");
2520
+ /* not reached */
2521
+ }
2522
+ pend = p;
2523
+ p = s;
2524
+ goto nocopy;
2525
+ }
2526
+ if (*p == '_') break;
2527
+ p++;
2528
+ }
2529
+ p = s;
2530
+ n = buf;
2531
+ while (p < pend) {
2532
+ char c = *p++;
2533
+ if (c == '_') {
2534
+ /* remove an underscore between digits */
2535
+ if (n == buf || !ISDIGIT(prev) || p == pend) {
2536
+ if (badcheck) goto bad;
2537
+ break;
2538
+ }
2539
+ }
2540
+ else if (badcheck && prev == '_' && !ISDIGIT(c)) goto bad;
2541
+ else {
2542
+ *n++ = c;
2543
+ }
2544
+ prev = c;
2260
2545
  }
2546
+ *n = '\0';
2547
+ p = buf;
2548
+ pend = n;
2549
+ nocopy:
2261
2550
  d = mrb_float_read(p, &end);
2262
2551
  if (p == end) {
2263
2552
  if (badcheck) {
2264
2553
  bad:
2265
- mrb_raisef(mrb, E_ARGUMENT_ERROR, "invalid string for float(%S)", mrb_str_new_cstr(mrb, p));
2554
+ mrb_raisef(mrb, E_ARGUMENT_ERROR, "invalid string for float(%!s)", s);
2266
2555
  /* not reached */
2267
2556
  }
2268
2557
  return d;
2269
2558
  }
2270
- if (*end) {
2271
- char *n = buf;
2272
- char *e = buf + sizeof(buf) - 1;
2273
- char prev = 0;
2274
-
2275
- while (p < end && n < e) prev = *n++ = *p++;
2276
- while (*p) {
2277
- if (*p == '_') {
2278
- /* remove underscores between digits */
2279
- if (badcheck) {
2280
- if (n == buf || !ISDIGIT(prev)) goto bad;
2281
- ++p;
2282
- if (!ISDIGIT(*p)) goto bad;
2283
- }
2284
- else {
2285
- while (*++p == '_');
2286
- continue;
2287
- }
2288
- }
2289
- prev = *p++;
2290
- if (n < e) *n++ = prev;
2291
- }
2292
- *n = '\0';
2293
- p = buf;
2294
-
2295
- if (!badcheck && p[0] == '0' && (p[1] == 'x' || p[1] == 'X')) {
2296
- return 0.0;
2297
- }
2298
-
2299
- d = mrb_float_read(p, &end);
2300
- if (badcheck) {
2301
- if (!end || p == end) goto bad;
2302
- while (*end && ISSPACE(*end)) end++;
2303
- if (*end) goto bad;
2304
- }
2559
+ if (badcheck) {
2560
+ if (!end || p == end) goto bad;
2561
+ while (end<pend && ISSPACE(*end)) end++;
2562
+ if (end<pend) goto bad;
2305
2563
  }
2306
2564
  return d;
2307
2565
  }
2308
2566
 
2309
2567
  MRB_API double
2310
- mrb_str_to_dbl(mrb_state *mrb, mrb_value str, mrb_bool badcheck)
2568
+ mrb_cstr_to_dbl(mrb_state *mrb, const char *s, mrb_bool badcheck)
2311
2569
  {
2312
- char *s;
2313
- mrb_int len;
2570
+ return mrb_str_len_to_dbl(mrb, s, strlen(s), badcheck);
2571
+ }
2314
2572
 
2315
- mrb_to_str(mrb, str);
2316
- s = RSTRING_PTR(str);
2317
- len = RSTRING_LEN(str);
2318
- if (s) {
2319
- if (badcheck && memchr(s, '\0', len)) {
2320
- mrb_raise(mrb, E_ARGUMENT_ERROR, "string for Float contains null byte");
2321
- }
2322
- if (s[len]) { /* no sentinel somehow */
2323
- struct RString *temp_str = str_new(mrb, s, len);
2324
- s = RSTR_PTR(temp_str);
2325
- }
2326
- }
2327
- return mrb_cstr_to_dbl(mrb, s, badcheck);
2573
+ MRB_API double
2574
+ mrb_str_to_dbl(mrb_state *mrb, mrb_value str, mrb_bool badcheck)
2575
+ {
2576
+ return mrb_str_len_to_dbl(mrb, RSTRING_PTR(str), RSTRING_LEN(str), badcheck);
2328
2577
  }
2329
2578
 
2330
2579
  /* 15.2.10.5.39 */
@@ -2379,7 +2628,7 @@ mrb_str_upcase_bang(mrb_state *mrb, mrb_value str)
2379
2628
  char *p, *pend;
2380
2629
  mrb_bool modify = FALSE;
2381
2630
 
2382
- mrb_str_modify(mrb, s);
2631
+ mrb_str_modify_keep_ascii(mrb, s);
2383
2632
  p = RSTRING_PTR(str);
2384
2633
  pend = RSTRING_END(str);
2385
2634
  while (p < pend) {
@@ -2415,8 +2664,6 @@ mrb_str_upcase(mrb_state *mrb, mrb_value self)
2415
2664
  return str;
2416
2665
  }
2417
2666
 
2418
- #define IS_EVSTR(p,e) ((p) < (e) && (*(p) == '$' || *(p) == '@' || *(p) == '{'))
2419
-
2420
2667
  /*
2421
2668
  * call-seq:
2422
2669
  * str.dump -> new_str
@@ -2427,113 +2674,7 @@ mrb_str_upcase(mrb_state *mrb, mrb_value self)
2427
2674
  mrb_value
2428
2675
  mrb_str_dump(mrb_state *mrb, mrb_value str)
2429
2676
  {
2430
- mrb_int len;
2431
- const char *p, *pend;
2432
- char *q;
2433
- struct RString *result;
2434
-
2435
- len = 2; /* "" */
2436
- p = RSTRING_PTR(str); pend = p + RSTRING_LEN(str);
2437
- while (p < pend) {
2438
- unsigned char c = *p++;
2439
- switch (c) {
2440
- case '"': case '\\':
2441
- case '\n': case '\r':
2442
- case '\t': case '\f':
2443
- case '\013': case '\010': case '\007': case '\033':
2444
- len += 2;
2445
- break;
2446
-
2447
- case '#':
2448
- len += IS_EVSTR(p, pend) ? 2 : 1;
2449
- break;
2450
-
2451
- default:
2452
- if (ISPRINT(c)) {
2453
- len++;
2454
- }
2455
- else {
2456
- len += 4; /* \NNN */
2457
- }
2458
- break;
2459
- }
2460
- }
2461
-
2462
- result = str_new(mrb, 0, len);
2463
- str_with_class(mrb, result, str);
2464
- p = RSTRING_PTR(str); pend = p + RSTRING_LEN(str);
2465
- q = RSTR_PTR(result);
2466
- *q++ = '"';
2467
- while (p < pend) {
2468
- unsigned char c = *p++;
2469
-
2470
- switch (c) {
2471
- case '"':
2472
- case '\\':
2473
- *q++ = '\\';
2474
- *q++ = c;
2475
- break;
2476
-
2477
- case '\n':
2478
- *q++ = '\\';
2479
- *q++ = 'n';
2480
- break;
2481
-
2482
- case '\r':
2483
- *q++ = '\\';
2484
- *q++ = 'r';
2485
- break;
2486
-
2487
- case '\t':
2488
- *q++ = '\\';
2489
- *q++ = 't';
2490
- break;
2491
-
2492
- case '\f':
2493
- *q++ = '\\';
2494
- *q++ = 'f';
2495
- break;
2496
-
2497
- case '\013':
2498
- *q++ = '\\';
2499
- *q++ = 'v';
2500
- break;
2501
-
2502
- case '\010':
2503
- *q++ = '\\';
2504
- *q++ = 'b';
2505
- break;
2506
-
2507
- case '\007':
2508
- *q++ = '\\';
2509
- *q++ = 'a';
2510
- break;
2511
-
2512
- case '\033':
2513
- *q++ = '\\';
2514
- *q++ = 'e';
2515
- break;
2516
-
2517
- case '#':
2518
- if (IS_EVSTR(p, pend)) *q++ = '\\';
2519
- *q++ = '#';
2520
- break;
2521
-
2522
- default:
2523
- if (ISPRINT(c)) {
2524
- *q++ = c;
2525
- }
2526
- else {
2527
- *q++ = '\\';
2528
- *q++ = 'x';
2529
- q[1] = mrb_digitmap[c % 16]; c /= 16;
2530
- q[0] = mrb_digitmap[c % 16];
2531
- q += 2;
2532
- }
2533
- }
2534
- }
2535
- *q = '"';
2536
- return mrb_obj_value(result);
2677
+ return str_escape(mrb, str, FALSE);
2537
2678
  }
2538
2679
 
2539
2680
  MRB_API mrb_value
@@ -2552,21 +2693,21 @@ mrb_str_cat(mrb_state *mrb, mrb_value str, const char *ptr, size_t len)
2552
2693
 
2553
2694
  capa = RSTR_CAPA(s);
2554
2695
  total = RSTR_LEN(s)+len;
2555
- if (total >= MRB_INT_MAX) {
2696
+ if (total >= MRB_SSIZE_MAX) {
2556
2697
  size_error:
2557
2698
  mrb_raise(mrb, E_ARGUMENT_ERROR, "string size too big");
2558
2699
  }
2559
2700
  if (capa <= total) {
2560
2701
  if (capa == 0) capa = 1;
2561
2702
  while (capa <= total) {
2562
- if (capa <= MRB_INT_MAX / 2) {
2703
+ if (capa <= MRB_SSIZE_MAX / 2) {
2563
2704
  capa *= 2;
2564
2705
  }
2565
2706
  else {
2566
2707
  capa = total+1;
2567
2708
  }
2568
2709
  }
2569
- if (capa <= total || capa > MRB_INT_MAX) {
2710
+ if (capa <= total || capa > MRB_SSIZE_MAX) {
2570
2711
  goto size_error;
2571
2712
  }
2572
2713
  resize_capa(mrb, s, capa);
@@ -2575,7 +2716,7 @@ mrb_str_cat(mrb_state *mrb, mrb_value str, const char *ptr, size_t len)
2575
2716
  ptr = RSTR_PTR(s) + off;
2576
2717
  }
2577
2718
  memcpy(RSTR_PTR(s) + RSTR_LEN(s), ptr, len);
2578
- mrb_assert_int_fit(size_t, total, mrb_int, MRB_INT_MAX);
2719
+ mrb_assert_int_fit(size_t, total, mrb_ssize, MRB_SSIZE_MAX);
2579
2720
  RSTR_SET_LEN(s, total);
2580
2721
  RSTR_PTR(s)[total] = '\0'; /* sentinel */
2581
2722
  return str;
@@ -2603,8 +2744,6 @@ mrb_str_append(mrb_state *mrb, mrb_value str1, mrb_value str2)
2603
2744
  return mrb_str_cat_str(mrb, str1, str2);
2604
2745
  }
2605
2746
 
2606
- #define CHAR_ESC_LEN 13 /* sizeof(\x{ hex of 32bit unsigned int } \0) */
2607
-
2608
2747
  /*
2609
2748
  * call-seq:
2610
2749
  * str.inspect -> string
@@ -2619,68 +2758,7 @@ mrb_str_append(mrb_state *mrb, mrb_value str1, mrb_value str2)
2619
2758
  mrb_value
2620
2759
  mrb_str_inspect(mrb_state *mrb, mrb_value str)
2621
2760
  {
2622
- const char *p, *pend;
2623
- char buf[CHAR_ESC_LEN + 1];
2624
- mrb_value result = mrb_str_new_lit(mrb, "\"");
2625
-
2626
- p = RSTRING_PTR(str); pend = RSTRING_END(str);
2627
- for (;p < pend; p++) {
2628
- unsigned char c, cc;
2629
- #ifdef MRB_UTF8_STRING
2630
- mrb_int clen;
2631
-
2632
- clen = utf8len(p, pend);
2633
- if (clen > 1) {
2634
- mrb_int i;
2635
-
2636
- for (i=0; i<clen; i++) {
2637
- buf[i] = p[i];
2638
- }
2639
- mrb_str_cat(mrb, result, buf, clen);
2640
- p += clen-1;
2641
- continue;
2642
- }
2643
- #endif
2644
- c = *p;
2645
- if (c == '"'|| c == '\\' || (c == '#' && IS_EVSTR(p+1, pend))) {
2646
- buf[0] = '\\'; buf[1] = c;
2647
- mrb_str_cat(mrb, result, buf, 2);
2648
- continue;
2649
- }
2650
- if (ISPRINT(c)) {
2651
- buf[0] = c;
2652
- mrb_str_cat(mrb, result, buf, 1);
2653
- continue;
2654
- }
2655
- switch (c) {
2656
- case '\n': cc = 'n'; break;
2657
- case '\r': cc = 'r'; break;
2658
- case '\t': cc = 't'; break;
2659
- case '\f': cc = 'f'; break;
2660
- case '\013': cc = 'v'; break;
2661
- case '\010': cc = 'b'; break;
2662
- case '\007': cc = 'a'; break;
2663
- case 033: cc = 'e'; break;
2664
- default: cc = 0; break;
2665
- }
2666
- if (cc) {
2667
- buf[0] = '\\';
2668
- buf[1] = (char)cc;
2669
- mrb_str_cat(mrb, result, buf, 2);
2670
- continue;
2671
- }
2672
- else {
2673
- buf[0] = '\\';
2674
- buf[1] = 'x';
2675
- buf[3] = mrb_digitmap[c % 16]; c /= 16;
2676
- buf[2] = mrb_digitmap[c % 16];
2677
- mrb_str_cat(mrb, result, buf, 4);
2678
- continue;
2679
- }
2680
- }
2681
- mrb_str_cat_lit(mrb, result, "\"");
2682
-
2683
- return result;
2761
+ return str_escape(mrb, str, TRUE);
2684
2762
  }
2685
2763
 
2686
2764
  /*
@@ -2706,13 +2784,112 @@ mrb_str_bytes(mrb_state *mrb, mrb_value str)
2706
2784
  return a;
2707
2785
  }
2708
2786
 
2787
+ /*
2788
+ * call-seq:
2789
+ * str.getbyte(index) -> 0 .. 255
2790
+ *
2791
+ * returns the <i>index</i>th byte as an integer.
2792
+ */
2793
+ static mrb_value
2794
+ mrb_str_getbyte(mrb_state *mrb, mrb_value str)
2795
+ {
2796
+ mrb_int pos;
2797
+ mrb_get_args(mrb, "i", &pos);
2798
+
2799
+ if (pos < 0)
2800
+ pos += RSTRING_LEN(str);
2801
+ if (pos < 0 || RSTRING_LEN(str) <= pos)
2802
+ return mrb_nil_value();
2803
+
2804
+ return mrb_fixnum_value((unsigned char)RSTRING_PTR(str)[pos]);
2805
+ }
2806
+
2807
+ /*
2808
+ * call-seq:
2809
+ * str.setbyte(index, integer) -> integer
2810
+ *
2811
+ * modifies the <i>index</i>th byte as <i>integer</i>.
2812
+ */
2813
+ static mrb_value
2814
+ mrb_str_setbyte(mrb_state *mrb, mrb_value str)
2815
+ {
2816
+ mrb_int pos, byte;
2817
+ mrb_int len;
2818
+
2819
+ mrb_get_args(mrb, "ii", &pos, &byte);
2820
+
2821
+ len = RSTRING_LEN(str);
2822
+ if (pos < -len || len <= pos)
2823
+ mrb_raisef(mrb, E_INDEX_ERROR, "index %i out of string", pos);
2824
+ if (pos < 0)
2825
+ pos += len;
2826
+
2827
+ mrb_str_modify(mrb, mrb_str_ptr(str));
2828
+ byte &= 0xff;
2829
+ RSTRING_PTR(str)[pos] = (unsigned char)byte;
2830
+ return mrb_fixnum_value((unsigned char)byte);
2831
+ }
2832
+
2833
+ /*
2834
+ * call-seq:
2835
+ * str.byteslice(integer) -> new_str or nil
2836
+ * str.byteslice(integer, integer) -> new_str or nil
2837
+ * str.byteslice(range) -> new_str or nil
2838
+ *
2839
+ * Byte Reference---If passed a single Integer, returns a
2840
+ * substring of one byte at that position. If passed two Integer
2841
+ * objects, returns a substring starting at the offset given by the first, and
2842
+ * a length given by the second. If given a Range, a substring containing
2843
+ * bytes at offsets given by the range is returned. In all three cases, if
2844
+ * an offset is negative, it is counted from the end of <i>str</i>. Returns
2845
+ * <code>nil</code> if the initial offset falls outside the string, the length
2846
+ * is negative, or the beginning of the range is greater than the end.
2847
+ * The encoding of the resulted string keeps original encoding.
2848
+ *
2849
+ * "hello".byteslice(1) #=> "e"
2850
+ * "hello".byteslice(-1) #=> "o"
2851
+ * "hello".byteslice(1, 2) #=> "el"
2852
+ * "\x80\u3042".byteslice(1, 3) #=> "\u3042"
2853
+ * "\x03\u3042\xff".byteslice(1..3) #=> "\u3042"
2854
+ */
2855
+ static mrb_value
2856
+ mrb_str_byteslice(mrb_state *mrb, mrb_value str)
2857
+ {
2858
+ mrb_value a1, a2;
2859
+ mrb_int str_len = RSTRING_LEN(str), beg, len;
2860
+ mrb_bool empty = TRUE;
2861
+
2862
+ if (mrb_get_args(mrb, "o|o", &a1, &a2) == 2) {
2863
+ beg = mrb_fixnum(mrb_to_int(mrb, a1));
2864
+ len = mrb_fixnum(mrb_to_int(mrb, a2));
2865
+ }
2866
+ else if (mrb_range_p(a1)) {
2867
+ if (mrb_range_beg_len(mrb, a1, &beg, &len, str_len, TRUE) != MRB_RANGE_OK) {
2868
+ return mrb_nil_value();
2869
+ }
2870
+ }
2871
+ else {
2872
+ beg = mrb_fixnum(mrb_to_int(mrb, a1));
2873
+ len = 1;
2874
+ empty = FALSE;
2875
+ }
2876
+
2877
+ if (mrb_str_beg_len(str_len, &beg, &len) && (empty || len != 0)) {
2878
+ return mrb_str_byte_subseq(mrb, str, beg, len);
2879
+ }
2880
+ else {
2881
+ return mrb_nil_value();
2882
+ }
2883
+ }
2884
+
2709
2885
  /* ---------------------------*/
2710
2886
  void
2711
2887
  mrb_init_string(mrb_state *mrb)
2712
2888
  {
2713
2889
  struct RClass *s;
2714
2890
 
2715
- mrb_static_assert(RSTRING_EMBED_LEN_MAX < (1 << 5), "pointer size too big for embedded string");
2891
+ mrb_static_assert(RSTRING_EMBED_LEN_MAX < (1 << MRB_STR_EMBED_LEN_BIT),
2892
+ "pointer size too big for embedded string");
2716
2893
 
2717
2894
  mrb->string_class = s = mrb_define_class(mrb, "String", mrb->object_class); /* 15.2.10 */
2718
2895
  MRB_SET_INSTANCE_TT(s, MRB_TT_STRING);
@@ -2724,6 +2901,7 @@ mrb_init_string(mrb_state *mrb)
2724
2901
  mrb_define_method(mrb, s, "+", mrb_str_plus_m, MRB_ARGS_REQ(1)); /* 15.2.10.5.4 */
2725
2902
  mrb_define_method(mrb, s, "*", mrb_str_times, MRB_ARGS_REQ(1)); /* 15.2.10.5.5 */
2726
2903
  mrb_define_method(mrb, s, "[]", mrb_str_aref_m, MRB_ARGS_ANY()); /* 15.2.10.5.6 */
2904
+ mrb_define_method(mrb, s, "[]=", mrb_str_aset_m, MRB_ARGS_ANY());
2727
2905
  mrb_define_method(mrb, s, "capitalize", mrb_str_capitalize, MRB_ARGS_NONE()); /* 15.2.10.5.7 */
2728
2906
  mrb_define_method(mrb, s, "capitalize!", mrb_str_capitalize_bang, MRB_ARGS_NONE()); /* 15.2.10.5.8 */
2729
2907
  mrb_define_method(mrb, s, "chomp", mrb_str_chomp, MRB_ARGS_ANY()); /* 15.2.10.5.9 */
@@ -2737,7 +2915,7 @@ mrb_init_string(mrb_state *mrb)
2737
2915
 
2738
2916
  mrb_define_method(mrb, s, "hash", mrb_str_hash_m, MRB_ARGS_NONE()); /* 15.2.10.5.20 */
2739
2917
  mrb_define_method(mrb, s, "include?", mrb_str_include, MRB_ARGS_REQ(1)); /* 15.2.10.5.21 */
2740
- mrb_define_method(mrb, s, "index", mrb_str_index_m, MRB_ARGS_ANY()); /* 15.2.10.5.22 */
2918
+ mrb_define_method(mrb, s, "index", mrb_str_index_m, MRB_ARGS_ARG(1,1)); /* 15.2.10.5.22 */
2741
2919
  mrb_define_method(mrb, s, "initialize", mrb_str_init, MRB_ARGS_REQ(1)); /* 15.2.10.5.23 */
2742
2920
  mrb_define_method(mrb, s, "initialize_copy", mrb_str_replace, MRB_ARGS_REQ(1)); /* 15.2.10.5.24 */
2743
2921
  mrb_define_method(mrb, s, "intern", mrb_str_intern, MRB_ARGS_NONE()); /* 15.2.10.5.25 */
@@ -2761,6 +2939,10 @@ mrb_init_string(mrb_state *mrb)
2761
2939
  mrb_define_method(mrb, s, "upcase!", mrb_str_upcase_bang, MRB_ARGS_NONE()); /* 15.2.10.5.43 */
2762
2940
  mrb_define_method(mrb, s, "inspect", mrb_str_inspect, MRB_ARGS_NONE()); /* 15.2.10.5.46(x) */
2763
2941
  mrb_define_method(mrb, s, "bytes", mrb_str_bytes, MRB_ARGS_NONE());
2942
+
2943
+ mrb_define_method(mrb, s, "getbyte", mrb_str_getbyte, MRB_ARGS_REQ(1));
2944
+ mrb_define_method(mrb, s, "setbyte", mrb_str_setbyte, MRB_ARGS_REQ(2));
2945
+ mrb_define_method(mrb, s, "byteslice", mrb_str_byteslice, MRB_ARGS_ARG(1,1));
2764
2946
  }
2765
2947
 
2766
2948
  #ifndef MRB_WITHOUT_FLOAT