script_core 0.1.1 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
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