@proteinjs/reflection-build 1.4.5 → 1.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/{test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/LICENSE → LICENSE} +5 -6
  3. package/dist/src/runWatch.js +3 -30
  4. package/dist/src/runWatch.js.map +1 -1
  5. package/dist/src/watch.d.ts +1 -1
  6. package/dist/src/watch.js +39 -28
  7. package/dist/src/watch.js.map +1 -1
  8. package/dist/test/examples/source-repository/a/generated/index.js +1 -1
  9. package/dist/test/examples/source-repository/a/generated/index.js.map +1 -1
  10. package/dist/test/examples/source-repository/b/generated/index.js +1 -1
  11. package/dist/test/examples/source-repository/b/generated/index.js.map +1 -1
  12. package/package.json +5 -4
  13. package/src/runWatch.ts +3 -8
  14. package/src/watch.ts +44 -35
  15. package/test/examples/source-repository/a/dist/generated/index.js +1 -1
  16. package/test/examples/source-repository/a/dist/generated/index.js.map +1 -1
  17. package/test/examples/source-repository/a/generated/index.ts +38 -33
  18. package/test/examples/source-repository/a/node_modules/.package-lock.json +6 -63
  19. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/CHANGELOG.md +22 -0
  20. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js +102 -20
  21. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js.map +1 -1
  22. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/package.json +4 -3
  23. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/src/PackageUtil.ts +88 -2
  24. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/test/PackageUtil.symlinkDependencies.test.ts +254 -0
  25. package/test/examples/source-repository/a/node_modules/@proteinjs/util-node/tsconfig.json +1 -1
  26. package/test/examples/source-repository/a/package-lock.json +8 -12
  27. package/test/examples/source-repository/a/package.json +3 -3
  28. package/test/examples/source-repository/b/dist/generated/index.js +1 -1
  29. package/test/examples/source-repository/b/dist/generated/index.js.map +1 -1
  30. package/test/examples/source-repository/b/generated/index.ts +10 -11
  31. package/test/examples/source-repository/b/node_modules/.package-lock.json +4 -61
  32. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/CHANGELOG.md +22 -0
  33. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js +102 -20
  34. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/dist/src/PackageUtil.js.map +1 -1
  35. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/package.json +4 -3
  36. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/src/PackageUtil.ts +88 -2
  37. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/test/PackageUtil.symlinkDependencies.test.ts +254 -0
  38. package/test/examples/source-repository/b/node_modules/@proteinjs/util-node/tsconfig.json +1 -1
  39. package/test/examples/source-repository/b/package-lock.json +6 -10
  40. package/test/examples/source-repository/b/package.json +3 -3
  41. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/.eslintrc.js +0 -20
  42. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/.prettierignore +0 -4
  43. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/.prettierrc +0 -8
  44. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/CHANGELOG.md +0 -58
  45. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/index.d.ts +0 -5
  46. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/index.js +0 -18
  47. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/index.js.map +0 -1
  48. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.d.ts +0 -19
  49. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js +0 -555
  50. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js.map +0 -1
  51. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/Loadable.d.ts +0 -3
  52. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/Loadable.js +0 -5
  53. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/Loadable.js.map +0 -1
  54. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepository.d.ts +0 -45
  55. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js +0 -176
  56. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js.map +0 -1
  57. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.d.ts +0 -11
  58. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js +0 -9
  59. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js.map +0 -1
  60. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.d.ts +0 -13
  61. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js +0 -19
  62. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js.map +0 -1
  63. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/types.d.ts +0 -221
  64. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/types.js +0 -234
  65. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/dist/src/types.js.map +0 -1
  66. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/index.ts +0 -5
  67. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/package.json +0 -42
  68. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/FlattenedSourceGraph.ts +0 -702
  69. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/Loadable.ts +0 -2
  70. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/SourceRepository.ts +0 -250
  71. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/SourceRepositoryFilter.ts +0 -15
  72. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/sourceGraphTypes.ts +0 -14
  73. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/src/types.ts +0 -236
  74. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/tsconfig.json +0 -19
  75. package/test/examples/source-repository/a/node_modules/@proteinjs/reflection/types/@dagrejs/graphlib.d.ts +0 -1
  76. package/test/examples/source-repository/a/node_modules/bindings/LICENSE.md +0 -22
  77. package/test/examples/source-repository/a/node_modules/bindings/README.md +0 -98
  78. package/test/examples/source-repository/a/node_modules/bindings/bindings.js +0 -221
  79. package/test/examples/source-repository/a/node_modules/bindings/package.json +0 -28
  80. package/test/examples/source-repository/a/node_modules/file-uri-to-path/.travis.yml +0 -30
  81. package/test/examples/source-repository/a/node_modules/file-uri-to-path/History.md +0 -21
  82. package/test/examples/source-repository/a/node_modules/file-uri-to-path/LICENSE +0 -20
  83. package/test/examples/source-repository/a/node_modules/file-uri-to-path/README.md +0 -74
  84. package/test/examples/source-repository/a/node_modules/file-uri-to-path/index.d.ts +0 -2
  85. package/test/examples/source-repository/a/node_modules/file-uri-to-path/index.js +0 -66
  86. package/test/examples/source-repository/a/node_modules/file-uri-to-path/package.json +0 -32
  87. package/test/examples/source-repository/a/node_modules/file-uri-to-path/test/test.js +0 -24
  88. package/test/examples/source-repository/a/node_modules/file-uri-to-path/test/tests.json +0 -13
  89. package/test/examples/source-repository/a/node_modules/fsevents/LICENSE +0 -22
  90. package/test/examples/source-repository/a/node_modules/fsevents/README.md +0 -89
  91. package/test/examples/source-repository/a/node_modules/fsevents/fsevents.d.ts +0 -46
  92. package/test/examples/source-repository/a/node_modules/fsevents/fsevents.js +0 -83
  93. package/test/examples/source-repository/a/node_modules/fsevents/fsevents.node +0 -0
  94. package/test/examples/source-repository/a/node_modules/fsevents/package.json +0 -62
  95. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/.travis.yml +0 -103
  96. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/ISSUE_TEMPLATE.md +0 -8
  97. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/Readme.md +0 -78
  98. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/binding.gyp +0 -21
  99. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/.target.mk +0 -53
  100. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Makefile +0 -352
  101. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/.node.d +0 -1
  102. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/obj.target/fse/fsevents.o.d.raw +0 -79
  103. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/Release/.node +0 -0
  104. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/binding.Makefile +0 -6
  105. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/fse.target.mk +0 -191
  106. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/build/gyp-mac-tool +0 -766
  107. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/fsevents.cc +0 -88
  108. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/fsevents.js +0 -106
  109. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/install.js +0 -13
  110. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/package.json +0 -34
  111. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/async.cc +0 -43
  112. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/constants.cc +0 -110
  113. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/methods.cc +0 -44
  114. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/storage.cc +0 -27
  115. package/test/examples/source-repository/a/node_modules/glob-watcher/node_modules/fsevents/src/thread.cc +0 -71
  116. package/test/examples/source-repository/a/node_modules/nan/CHANGELOG.md +0 -557
  117. package/test/examples/source-repository/a/node_modules/nan/CMakeLists.txt +0 -138
  118. package/test/examples/source-repository/a/node_modules/nan/LICENSE.md +0 -9
  119. package/test/examples/source-repository/a/node_modules/nan/README.md +0 -456
  120. package/test/examples/source-repository/a/node_modules/nan/doc/asyncworker.md +0 -146
  121. package/test/examples/source-repository/a/node_modules/nan/doc/buffers.md +0 -54
  122. package/test/examples/source-repository/a/node_modules/nan/doc/callback.md +0 -76
  123. package/test/examples/source-repository/a/node_modules/nan/doc/converters.md +0 -41
  124. package/test/examples/source-repository/a/node_modules/nan/doc/errors.md +0 -226
  125. package/test/examples/source-repository/a/node_modules/nan/doc/json.md +0 -62
  126. package/test/examples/source-repository/a/node_modules/nan/doc/maybe_types.md +0 -583
  127. package/test/examples/source-repository/a/node_modules/nan/doc/methods.md +0 -672
  128. package/test/examples/source-repository/a/node_modules/nan/doc/new.md +0 -147
  129. package/test/examples/source-repository/a/node_modules/nan/doc/node_misc.md +0 -123
  130. package/test/examples/source-repository/a/node_modules/nan/doc/object_wrappers.md +0 -263
  131. package/test/examples/source-repository/a/node_modules/nan/doc/persistent.md +0 -296
  132. package/test/examples/source-repository/a/node_modules/nan/doc/scopes.md +0 -73
  133. package/test/examples/source-repository/a/node_modules/nan/doc/script.md +0 -58
  134. package/test/examples/source-repository/a/node_modules/nan/doc/string_bytes.md +0 -62
  135. package/test/examples/source-repository/a/node_modules/nan/doc/v8_internals.md +0 -199
  136. package/test/examples/source-repository/a/node_modules/nan/doc/v8_misc.md +0 -85
  137. package/test/examples/source-repository/a/node_modules/nan/include_dirs.js +0 -1
  138. package/test/examples/source-repository/a/node_modules/nan/nan.h +0 -2958
  139. package/test/examples/source-repository/a/node_modules/nan/nan_callbacks.h +0 -92
  140. package/test/examples/source-repository/a/node_modules/nan/nan_callbacks_12_inl.h +0 -520
  141. package/test/examples/source-repository/a/node_modules/nan/nan_callbacks_pre_12_inl.h +0 -520
  142. package/test/examples/source-repository/a/node_modules/nan/nan_converters.h +0 -72
  143. package/test/examples/source-repository/a/node_modules/nan/nan_converters_43_inl.h +0 -68
  144. package/test/examples/source-repository/a/node_modules/nan/nan_converters_pre_43_inl.h +0 -42
  145. package/test/examples/source-repository/a/node_modules/nan/nan_define_own_property_helper.h +0 -29
  146. package/test/examples/source-repository/a/node_modules/nan/nan_implementation_12_inl.h +0 -430
  147. package/test/examples/source-repository/a/node_modules/nan/nan_implementation_pre_12_inl.h +0 -263
  148. package/test/examples/source-repository/a/node_modules/nan/nan_json.h +0 -166
  149. package/test/examples/source-repository/a/node_modules/nan/nan_maybe_43_inl.h +0 -356
  150. package/test/examples/source-repository/a/node_modules/nan/nan_maybe_pre_43_inl.h +0 -268
  151. package/test/examples/source-repository/a/node_modules/nan/nan_new.h +0 -340
  152. package/test/examples/source-repository/a/node_modules/nan/nan_object_wrap.h +0 -156
  153. package/test/examples/source-repository/a/node_modules/nan/nan_persistent_12_inl.h +0 -132
  154. package/test/examples/source-repository/a/node_modules/nan/nan_persistent_pre_12_inl.h +0 -242
  155. package/test/examples/source-repository/a/node_modules/nan/nan_private.h +0 -73
  156. package/test/examples/source-repository/a/node_modules/nan/nan_scriptorigin.h +0 -76
  157. package/test/examples/source-repository/a/node_modules/nan/nan_string_bytes.h +0 -305
  158. package/test/examples/source-repository/a/node_modules/nan/nan_typedarray_contents.h +0 -96
  159. package/test/examples/source-repository/a/node_modules/nan/nan_weak.h +0 -437
  160. package/test/examples/source-repository/a/node_modules/nan/package.json +0 -38
  161. package/test/examples/source-repository/a/node_modules/nan/tools/1to2.js +0 -412
  162. package/test/examples/source-repository/a/node_modules/nan/tools/README.md +0 -14
  163. package/test/examples/source-repository/a/node_modules/nan/tools/package.json +0 -19
  164. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/.eslintrc.js +0 -20
  165. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/.prettierignore +0 -4
  166. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/.prettierrc +0 -8
  167. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/CHANGELOG.md +0 -58
  168. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/index.d.ts +0 -5
  169. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/index.js +0 -18
  170. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/index.js.map +0 -1
  171. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.d.ts +0 -19
  172. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js +0 -555
  173. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/FlattenedSourceGraph.js.map +0 -1
  174. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/Loadable.d.ts +0 -3
  175. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/Loadable.js +0 -5
  176. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/Loadable.js.map +0 -1
  177. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepository.d.ts +0 -45
  178. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js +0 -176
  179. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepository.js.map +0 -1
  180. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.d.ts +0 -11
  181. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js +0 -9
  182. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/SourceRepositoryFilter.js.map +0 -1
  183. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.d.ts +0 -13
  184. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js +0 -19
  185. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/sourceGraphTypes.js.map +0 -1
  186. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/types.d.ts +0 -221
  187. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/types.js +0 -234
  188. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/dist/src/types.js.map +0 -1
  189. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/index.ts +0 -5
  190. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/package.json +0 -42
  191. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/FlattenedSourceGraph.ts +0 -702
  192. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/Loadable.ts +0 -2
  193. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/SourceRepository.ts +0 -250
  194. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/SourceRepositoryFilter.ts +0 -15
  195. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/sourceGraphTypes.ts +0 -14
  196. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/src/types.ts +0 -236
  197. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/tsconfig.json +0 -19
  198. package/test/examples/source-repository/b/node_modules/@proteinjs/reflection/types/@dagrejs/graphlib.d.ts +0 -1
  199. package/test/examples/source-repository/b/node_modules/bindings/LICENSE.md +0 -22
  200. package/test/examples/source-repository/b/node_modules/bindings/README.md +0 -98
  201. package/test/examples/source-repository/b/node_modules/bindings/bindings.js +0 -221
  202. package/test/examples/source-repository/b/node_modules/bindings/package.json +0 -28
  203. package/test/examples/source-repository/b/node_modules/file-uri-to-path/.travis.yml +0 -30
  204. package/test/examples/source-repository/b/node_modules/file-uri-to-path/History.md +0 -21
  205. package/test/examples/source-repository/b/node_modules/file-uri-to-path/LICENSE +0 -20
  206. package/test/examples/source-repository/b/node_modules/file-uri-to-path/README.md +0 -74
  207. package/test/examples/source-repository/b/node_modules/file-uri-to-path/index.d.ts +0 -2
  208. package/test/examples/source-repository/b/node_modules/file-uri-to-path/index.js +0 -66
  209. package/test/examples/source-repository/b/node_modules/file-uri-to-path/package.json +0 -32
  210. package/test/examples/source-repository/b/node_modules/file-uri-to-path/test/test.js +0 -24
  211. package/test/examples/source-repository/b/node_modules/file-uri-to-path/test/tests.json +0 -13
  212. package/test/examples/source-repository/b/node_modules/fsevents/LICENSE +0 -22
  213. package/test/examples/source-repository/b/node_modules/fsevents/README.md +0 -89
  214. package/test/examples/source-repository/b/node_modules/fsevents/fsevents.d.ts +0 -46
  215. package/test/examples/source-repository/b/node_modules/fsevents/fsevents.js +0 -83
  216. package/test/examples/source-repository/b/node_modules/fsevents/fsevents.node +0 -0
  217. package/test/examples/source-repository/b/node_modules/fsevents/package.json +0 -62
  218. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/.travis.yml +0 -103
  219. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/ISSUE_TEMPLATE.md +0 -8
  220. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/LICENSE +0 -22
  221. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/Readme.md +0 -78
  222. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/binding.gyp +0 -21
  223. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/.target.mk +0 -53
  224. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Makefile +0 -352
  225. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/.node.d +0 -1
  226. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Release/.deps/Release/obj.target/fse/fsevents.o.d.raw +0 -79
  227. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/Release/.node +0 -0
  228. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/binding.Makefile +0 -6
  229. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/fse.target.mk +0 -191
  230. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/build/gyp-mac-tool +0 -766
  231. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/fsevents.cc +0 -88
  232. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/fsevents.js +0 -106
  233. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/install.js +0 -13
  234. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/package.json +0 -34
  235. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/async.cc +0 -43
  236. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/constants.cc +0 -110
  237. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/methods.cc +0 -44
  238. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/storage.cc +0 -27
  239. package/test/examples/source-repository/b/node_modules/glob-watcher/node_modules/fsevents/src/thread.cc +0 -71
  240. package/test/examples/source-repository/b/node_modules/nan/CHANGELOG.md +0 -557
  241. package/test/examples/source-repository/b/node_modules/nan/CMakeLists.txt +0 -138
  242. package/test/examples/source-repository/b/node_modules/nan/LICENSE.md +0 -9
  243. package/test/examples/source-repository/b/node_modules/nan/README.md +0 -456
  244. package/test/examples/source-repository/b/node_modules/nan/doc/asyncworker.md +0 -146
  245. package/test/examples/source-repository/b/node_modules/nan/doc/buffers.md +0 -54
  246. package/test/examples/source-repository/b/node_modules/nan/doc/callback.md +0 -76
  247. package/test/examples/source-repository/b/node_modules/nan/doc/converters.md +0 -41
  248. package/test/examples/source-repository/b/node_modules/nan/doc/errors.md +0 -226
  249. package/test/examples/source-repository/b/node_modules/nan/doc/json.md +0 -62
  250. package/test/examples/source-repository/b/node_modules/nan/doc/maybe_types.md +0 -583
  251. package/test/examples/source-repository/b/node_modules/nan/doc/methods.md +0 -672
  252. package/test/examples/source-repository/b/node_modules/nan/doc/new.md +0 -147
  253. package/test/examples/source-repository/b/node_modules/nan/doc/node_misc.md +0 -123
  254. package/test/examples/source-repository/b/node_modules/nan/doc/object_wrappers.md +0 -263
  255. package/test/examples/source-repository/b/node_modules/nan/doc/persistent.md +0 -296
  256. package/test/examples/source-repository/b/node_modules/nan/doc/scopes.md +0 -73
  257. package/test/examples/source-repository/b/node_modules/nan/doc/script.md +0 -58
  258. package/test/examples/source-repository/b/node_modules/nan/doc/string_bytes.md +0 -62
  259. package/test/examples/source-repository/b/node_modules/nan/doc/v8_internals.md +0 -199
  260. package/test/examples/source-repository/b/node_modules/nan/doc/v8_misc.md +0 -85
  261. package/test/examples/source-repository/b/node_modules/nan/include_dirs.js +0 -1
  262. package/test/examples/source-repository/b/node_modules/nan/nan.h +0 -2958
  263. package/test/examples/source-repository/b/node_modules/nan/nan_callbacks.h +0 -92
  264. package/test/examples/source-repository/b/node_modules/nan/nan_callbacks_12_inl.h +0 -520
  265. package/test/examples/source-repository/b/node_modules/nan/nan_callbacks_pre_12_inl.h +0 -520
  266. package/test/examples/source-repository/b/node_modules/nan/nan_converters.h +0 -72
  267. package/test/examples/source-repository/b/node_modules/nan/nan_converters_43_inl.h +0 -68
  268. package/test/examples/source-repository/b/node_modules/nan/nan_converters_pre_43_inl.h +0 -42
  269. package/test/examples/source-repository/b/node_modules/nan/nan_define_own_property_helper.h +0 -29
  270. package/test/examples/source-repository/b/node_modules/nan/nan_implementation_12_inl.h +0 -430
  271. package/test/examples/source-repository/b/node_modules/nan/nan_implementation_pre_12_inl.h +0 -263
  272. package/test/examples/source-repository/b/node_modules/nan/nan_json.h +0 -166
  273. package/test/examples/source-repository/b/node_modules/nan/nan_maybe_43_inl.h +0 -356
  274. package/test/examples/source-repository/b/node_modules/nan/nan_maybe_pre_43_inl.h +0 -268
  275. package/test/examples/source-repository/b/node_modules/nan/nan_new.h +0 -340
  276. package/test/examples/source-repository/b/node_modules/nan/nan_object_wrap.h +0 -156
  277. package/test/examples/source-repository/b/node_modules/nan/nan_persistent_12_inl.h +0 -132
  278. package/test/examples/source-repository/b/node_modules/nan/nan_persistent_pre_12_inl.h +0 -242
  279. package/test/examples/source-repository/b/node_modules/nan/nan_private.h +0 -73
  280. package/test/examples/source-repository/b/node_modules/nan/nan_scriptorigin.h +0 -76
  281. package/test/examples/source-repository/b/node_modules/nan/nan_string_bytes.h +0 -305
  282. package/test/examples/source-repository/b/node_modules/nan/nan_typedarray_contents.h +0 -96
  283. package/test/examples/source-repository/b/node_modules/nan/nan_weak.h +0 -437
  284. package/test/examples/source-repository/b/node_modules/nan/package.json +0 -38
  285. package/test/examples/source-repository/b/node_modules/nan/tools/1to2.js +0 -412
  286. package/test/examples/source-repository/b/node_modules/nan/tools/README.md +0 -14
  287. package/test/examples/source-repository/b/node_modules/nan/tools/package.json +0 -19
  288. /package/test/examples/source-repository/a/node_modules/@proteinjs/{reflection → util-node}/jest.config.js +0 -0
  289. /package/test/examples/source-repository/b/node_modules/@proteinjs/{reflection → util-node}/jest.config.js +0 -0
@@ -1,242 +0,0 @@
1
- /*********************************************************************
2
- * NAN - Native Abstractions for Node.js
3
- *
4
- * Copyright (c) 2018 NAN contributors
5
- *
6
- * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
7
- ********************************************************************/
8
-
9
- #ifndef NAN_PERSISTENT_PRE_12_INL_H_
10
- #define NAN_PERSISTENT_PRE_12_INL_H_
11
-
12
- template<typename T>
13
- class PersistentBase {
14
- v8::Persistent<T> persistent;
15
- template<typename U>
16
- friend v8::Local<U> New(const PersistentBase<U> &p);
17
- template<typename U, typename M>
18
- friend v8::Local<U> New(const Persistent<U, M> &p);
19
- template<typename U>
20
- friend v8::Local<U> New(const Global<U> &p);
21
- template<typename S> friend class ReturnValue;
22
-
23
- public:
24
- inline PersistentBase() :
25
- persistent() {}
26
-
27
- inline void Reset() {
28
- persistent.Dispose();
29
- persistent.Clear();
30
- }
31
-
32
- template<typename S>
33
- inline void Reset(const v8::Local<S> &other) {
34
- TYPE_CHECK(T, S);
35
-
36
- if (!persistent.IsEmpty()) {
37
- persistent.Dispose();
38
- }
39
-
40
- if (other.IsEmpty()) {
41
- persistent.Clear();
42
- } else {
43
- persistent = v8::Persistent<T>::New(other);
44
- }
45
- }
46
-
47
- template<typename S>
48
- inline void Reset(const PersistentBase<S> &other) {
49
- TYPE_CHECK(T, S);
50
-
51
- if (!persistent.IsEmpty()) {
52
- persistent.Dispose();
53
- }
54
-
55
- if (other.IsEmpty()) {
56
- persistent.Clear();
57
- } else {
58
- persistent = v8::Persistent<T>::New(other.persistent);
59
- }
60
- }
61
-
62
- inline bool IsEmpty() const { return persistent.IsEmpty(); }
63
-
64
- inline void Empty() { persistent.Clear(); }
65
-
66
- template<typename S>
67
- inline bool operator==(const PersistentBase<S> &that) const {
68
- return this->persistent == that.persistent;
69
- }
70
-
71
- template<typename S>
72
- inline bool operator==(const v8::Local<S> &that) const {
73
- return this->persistent == that;
74
- }
75
-
76
- template<typename S>
77
- inline bool operator!=(const PersistentBase<S> &that) const {
78
- return !operator==(that);
79
- }
80
-
81
- template<typename S>
82
- inline bool operator!=(const v8::Local<S> &that) const {
83
- return !operator==(that);
84
- }
85
-
86
- template<typename P>
87
- inline void SetWeak(
88
- P *parameter
89
- , typename WeakCallbackInfo<P>::Callback callback
90
- , WeakCallbackType type);
91
-
92
- inline void ClearWeak() { persistent.ClearWeak(); }
93
-
94
- inline void MarkIndependent() { persistent.MarkIndependent(); }
95
-
96
- inline bool IsIndependent() const { return persistent.IsIndependent(); }
97
-
98
- inline bool IsNearDeath() const { return persistent.IsNearDeath(); }
99
-
100
- inline bool IsWeak() const { return persistent.IsWeak(); }
101
-
102
- private:
103
- inline explicit PersistentBase(v8::Persistent<T> that) :
104
- persistent(that) { }
105
- inline explicit PersistentBase(T *val) : persistent(val) {}
106
- template<typename S, typename M> friend class Persistent;
107
- template<typename S> friend class Global;
108
- friend class ObjectWrap;
109
- };
110
-
111
- template<typename T>
112
- class NonCopyablePersistentTraits {
113
- public:
114
- typedef Persistent<T, NonCopyablePersistentTraits<T> >
115
- NonCopyablePersistent;
116
- static const bool kResetInDestructor = false;
117
- template<typename S, typename M>
118
- inline static void Copy(const Persistent<S, M> &source,
119
- NonCopyablePersistent *dest) {
120
- Uncompilable<v8::Object>();
121
- }
122
-
123
- template<typename O> inline static void Uncompilable() {
124
- TYPE_CHECK(O, v8::Primitive);
125
- }
126
- };
127
-
128
- template<typename T>
129
- struct CopyablePersistentTraits {
130
- typedef Persistent<T, CopyablePersistentTraits<T> > CopyablePersistent;
131
- static const bool kResetInDestructor = true;
132
- template<typename S, typename M>
133
- static inline void Copy(const Persistent<S, M> &source,
134
- CopyablePersistent *dest) {}
135
- };
136
-
137
- template<typename T, typename M> class Persistent :
138
- public PersistentBase<T> {
139
- public:
140
- inline Persistent() {}
141
-
142
- template<typename S> inline Persistent(v8::Handle<S> that)
143
- : PersistentBase<T>(v8::Persistent<T>::New(that)) {
144
- TYPE_CHECK(T, S);
145
- }
146
-
147
- inline Persistent(const Persistent &that) : PersistentBase<T>() {
148
- Copy(that);
149
- }
150
-
151
- template<typename S, typename M2>
152
- inline Persistent(const Persistent<S, M2> &that) :
153
- PersistentBase<T>() {
154
- Copy(that);
155
- }
156
-
157
- inline Persistent &operator=(const Persistent &that) {
158
- Copy(that);
159
- return *this;
160
- }
161
-
162
- template <class S, class M2>
163
- inline Persistent &operator=(const Persistent<S, M2> &that) {
164
- Copy(that);
165
- return *this;
166
- }
167
-
168
- inline ~Persistent() {
169
- if (M::kResetInDestructor) this->Reset();
170
- }
171
-
172
- private:
173
- inline T *operator*() const { return *PersistentBase<T>::persistent; }
174
-
175
- template<typename S, typename M2>
176
- inline void Copy(const Persistent<S, M2> &that) {
177
- TYPE_CHECK(T, S);
178
-
179
- this->Reset();
180
-
181
- if (!that.IsEmpty()) {
182
- this->persistent = v8::Persistent<T>::New(that.persistent);
183
- M::Copy(that, this);
184
- }
185
- }
186
- };
187
-
188
- template<typename T>
189
- class Global : public PersistentBase<T> {
190
- struct RValue {
191
- inline explicit RValue(Global* obj) : object(obj) {}
192
- Global* object;
193
- };
194
-
195
- public:
196
- inline Global() : PersistentBase<T>(0) { }
197
-
198
- template <typename S>
199
- inline Global(v8::Local<S> that) // NOLINT(runtime/explicit)
200
- : PersistentBase<T>(v8::Persistent<T>::New(that)) {
201
- TYPE_CHECK(T, S);
202
- }
203
-
204
- template <typename S>
205
- inline Global(const PersistentBase<S> &that) // NOLINT(runtime/explicit)
206
- : PersistentBase<T>(that) {
207
- TYPE_CHECK(T, S);
208
- }
209
- /**
210
- * Move constructor.
211
- */
212
- inline Global(RValue rvalue) // NOLINT(runtime/explicit)
213
- : PersistentBase<T>(rvalue.object->persistent) {
214
- rvalue.object->Reset();
215
- }
216
- inline ~Global() { this->Reset(); }
217
- /**
218
- * Move via assignment.
219
- */
220
- template<typename S>
221
- inline Global &operator=(Global<S> rhs) {
222
- TYPE_CHECK(T, S);
223
- this->Reset(rhs.persistent);
224
- rhs.Reset();
225
- return *this;
226
- }
227
- /**
228
- * Cast operator for moves.
229
- */
230
- inline operator RValue() { return RValue(this); }
231
- /**
232
- * Pass allows returning uniques from functions, etc.
233
- */
234
- Global Pass() { return Global(RValue(this)); }
235
-
236
- private:
237
- Global(Global &);
238
- void operator=(Global &);
239
- template<typename S> friend class ReturnValue;
240
- };
241
-
242
- #endif // NAN_PERSISTENT_PRE_12_INL_H_
@@ -1,73 +0,0 @@
1
- /*********************************************************************
2
- * NAN - Native Abstractions for Node.js
3
- *
4
- * Copyright (c) 2018 NAN contributors
5
- *
6
- * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
7
- ********************************************************************/
8
-
9
- #ifndef NAN_PRIVATE_H_
10
- #define NAN_PRIVATE_H_
11
-
12
- inline Maybe<bool>
13
- HasPrivate(v8::Local<v8::Object> object, v8::Local<v8::String> key) {
14
- HandleScope scope;
15
- #if NODE_MODULE_VERSION >= NODE_6_0_MODULE_VERSION
16
- v8::Isolate *isolate = v8::Isolate::GetCurrent();
17
- v8::Local<v8::Context> context = isolate->GetCurrentContext();
18
- v8::Local<v8::Private> private_key = v8::Private::ForApi(isolate, key);
19
- return object->HasPrivate(context, private_key);
20
- #else
21
- return Just(!object->GetHiddenValue(key).IsEmpty());
22
- #endif
23
- }
24
-
25
- inline MaybeLocal<v8::Value>
26
- GetPrivate(v8::Local<v8::Object> object, v8::Local<v8::String> key) {
27
- #if NODE_MODULE_VERSION >= NODE_6_0_MODULE_VERSION
28
- v8::Isolate *isolate = v8::Isolate::GetCurrent();
29
- v8::EscapableHandleScope scope(isolate);
30
- v8::Local<v8::Context> context = isolate->GetCurrentContext();
31
- v8::Local<v8::Private> private_key = v8::Private::ForApi(isolate, key);
32
- v8::MaybeLocal<v8::Value> v = object->GetPrivate(context, private_key);
33
- return scope.Escape(v.ToLocalChecked());
34
- #else
35
- EscapableHandleScope scope;
36
- v8::Local<v8::Value> v = object->GetHiddenValue(key);
37
- if (v.IsEmpty()) {
38
- v = Undefined();
39
- }
40
- return scope.Escape(v);
41
- #endif
42
- }
43
-
44
- inline Maybe<bool> SetPrivate(
45
- v8::Local<v8::Object> object,
46
- v8::Local<v8::String> key,
47
- v8::Local<v8::Value> value) {
48
- #if NODE_MODULE_VERSION >= NODE_6_0_MODULE_VERSION
49
- HandleScope scope;
50
- v8::Isolate *isolate = v8::Isolate::GetCurrent();
51
- v8::Local<v8::Context> context = isolate->GetCurrentContext();
52
- v8::Local<v8::Private> private_key = v8::Private::ForApi(isolate, key);
53
- return object->SetPrivate(context, private_key, value);
54
- #else
55
- return Just(object->SetHiddenValue(key, value));
56
- #endif
57
- }
58
-
59
- inline Maybe<bool> DeletePrivate(
60
- v8::Local<v8::Object> object,
61
- v8::Local<v8::String> key) {
62
- #if NODE_MODULE_VERSION >= NODE_6_0_MODULE_VERSION
63
- HandleScope scope;
64
- v8::Isolate *isolate = v8::Isolate::GetCurrent();
65
- v8::Local<v8::Private> private_key = v8::Private::ForApi(isolate, key);
66
- return object->DeletePrivate(isolate->GetCurrentContext(), private_key);
67
- #else
68
- return Just(object->DeleteHiddenValue(key));
69
- #endif
70
- }
71
-
72
- #endif // NAN_PRIVATE_H_
73
-
@@ -1,76 +0,0 @@
1
- /*********************************************************************
2
- * NAN - Native Abstractions for Node.js
3
- *
4
- * Copyright (c) 2021 NAN contributors
5
- *
6
- * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
7
- ********************************************************************/
8
-
9
- #ifndef NAN_SCRIPTORIGIN_H_
10
- #define NAN_SCRIPTORIGIN_H_
11
-
12
- class ScriptOrigin : public v8::ScriptOrigin {
13
- public:
14
- #if defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 9 || \
15
- (V8_MAJOR_VERSION == 9 && (defined(V8_MINOR_VERSION) && (V8_MINOR_VERSION > 0\
16
- || (V8_MINOR_VERSION == 0 && defined(V8_BUILD_NUMBER) \
17
- && V8_BUILD_NUMBER >= 1)))))
18
- explicit ScriptOrigin(v8::Local<v8::Value> name) :
19
- v8::ScriptOrigin(v8::Isolate::GetCurrent(), name) {}
20
-
21
- ScriptOrigin(v8::Local<v8::Value> name
22
- , v8::Local<v8::Integer> line) :
23
- v8::ScriptOrigin(v8::Isolate::GetCurrent()
24
- , name
25
- , To<int32_t>(line).FromMaybe(0)) {}
26
-
27
- ScriptOrigin(v8::Local<v8::Value> name
28
- , v8::Local<v8::Integer> line
29
- , v8::Local<v8::Integer> column) :
30
- v8::ScriptOrigin(v8::Isolate::GetCurrent()
31
- , name
32
- , To<int32_t>(line).FromMaybe(0)
33
- , To<int32_t>(column).FromMaybe(0)) {}
34
- #elif defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 8 || \
35
- (V8_MAJOR_VERSION == 8 && (defined(V8_MINOR_VERSION) && (V8_MINOR_VERSION > 9\
36
- || (V8_MINOR_VERSION == 9 && defined(V8_BUILD_NUMBER) \
37
- && V8_BUILD_NUMBER >= 45)))))
38
- explicit ScriptOrigin(v8::Local<v8::Value> name) : v8::ScriptOrigin(name) {}
39
-
40
- ScriptOrigin(v8::Local<v8::Value> name
41
- , v8::Local<v8::Integer> line) :
42
- v8::ScriptOrigin(name, To<int32_t>(line).FromMaybe(0)) {}
43
-
44
- ScriptOrigin(v8::Local<v8::Value> name
45
- , v8::Local<v8::Integer> line
46
- , v8::Local<v8::Integer> column) :
47
- v8::ScriptOrigin(name
48
- , To<int32_t>(line).FromMaybe(0)
49
- , To<int32_t>(column).FromMaybe(0)) {}
50
- #else
51
- explicit ScriptOrigin(v8::Local<v8::Value> name) : v8::ScriptOrigin(name) {}
52
-
53
- ScriptOrigin(v8::Local<v8::Value> name
54
- , v8::Local<v8::Integer> line) : v8::ScriptOrigin(name, line) {}
55
-
56
- ScriptOrigin(v8::Local<v8::Value> name
57
- , v8::Local<v8::Integer> line
58
- , v8::Local<v8::Integer> column) :
59
- v8::ScriptOrigin(name, line, column) {}
60
- #endif
61
-
62
- #if defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 8 || \
63
- (V8_MAJOR_VERSION == 8 && (defined(V8_MINOR_VERSION) && (V8_MINOR_VERSION > 9\
64
- || (V8_MINOR_VERSION == 9 && defined(V8_BUILD_NUMBER) \
65
- && V8_BUILD_NUMBER >= 45)))))
66
- v8::Local<v8::Integer> ResourceLineOffset() const {
67
- return New(LineOffset());
68
- }
69
-
70
- v8::Local<v8::Integer> ResourceColumnOffset() const {
71
- return New(ColumnOffset());
72
- }
73
- #endif
74
- };
75
-
76
- #endif // NAN_SCRIPTORIGIN_H_
@@ -1,305 +0,0 @@
1
- // Copyright Joyent, Inc. and other Node contributors.
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a
4
- // copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to permit
8
- // persons to whom the Software is furnished to do so, subject to the
9
- // following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be included
12
- // in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
- // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
- // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
- // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
- // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
22
- #ifndef NAN_STRING_BYTES_H_
23
- #define NAN_STRING_BYTES_H_
24
-
25
- // Decodes a v8::Local<v8::String> or Buffer to a raw char*
26
-
27
- namespace imp {
28
-
29
- using v8::Local;
30
- using v8::Object;
31
- using v8::String;
32
- using v8::Value;
33
-
34
-
35
- //// Base 64 ////
36
-
37
- #define base64_encoded_size(size) ((size + 2 - ((size + 2) % 3)) / 3 * 4)
38
-
39
-
40
-
41
- //// HEX ////
42
-
43
- static bool contains_non_ascii_slow(const char* buf, size_t len) {
44
- for (size_t i = 0; i < len; ++i) {
45
- if (buf[i] & 0x80) return true;
46
- }
47
- return false;
48
- }
49
-
50
-
51
- static bool contains_non_ascii(const char* src, size_t len) {
52
- if (len < 16) {
53
- return contains_non_ascii_slow(src, len);
54
- }
55
-
56
- const unsigned bytes_per_word = sizeof(void*);
57
- const unsigned align_mask = bytes_per_word - 1;
58
- const unsigned unaligned = reinterpret_cast<uintptr_t>(src) & align_mask;
59
-
60
- if (unaligned > 0) {
61
- const unsigned n = bytes_per_word - unaligned;
62
- if (contains_non_ascii_slow(src, n)) return true;
63
- src += n;
64
- len -= n;
65
- }
66
-
67
-
68
- #if defined(__x86_64__) || defined(_WIN64)
69
- const uintptr_t mask = 0x8080808080808080ll;
70
- #else
71
- const uintptr_t mask = 0x80808080l;
72
- #endif
73
-
74
- const uintptr_t* srcw = reinterpret_cast<const uintptr_t*>(src);
75
-
76
- for (size_t i = 0, n = len / bytes_per_word; i < n; ++i) {
77
- if (srcw[i] & mask) return true;
78
- }
79
-
80
- const unsigned remainder = len & align_mask;
81
- if (remainder > 0) {
82
- const size_t offset = len - remainder;
83
- if (contains_non_ascii_slow(src + offset, remainder)) return true;
84
- }
85
-
86
- return false;
87
- }
88
-
89
-
90
- static void force_ascii_slow(const char* src, char* dst, size_t len) {
91
- for (size_t i = 0; i < len; ++i) {
92
- dst[i] = src[i] & 0x7f;
93
- }
94
- }
95
-
96
-
97
- static void force_ascii(const char* src, char* dst, size_t len) {
98
- if (len < 16) {
99
- force_ascii_slow(src, dst, len);
100
- return;
101
- }
102
-
103
- const unsigned bytes_per_word = sizeof(void*);
104
- const unsigned align_mask = bytes_per_word - 1;
105
- const unsigned src_unalign = reinterpret_cast<uintptr_t>(src) & align_mask;
106
- const unsigned dst_unalign = reinterpret_cast<uintptr_t>(dst) & align_mask;
107
-
108
- if (src_unalign > 0) {
109
- if (src_unalign == dst_unalign) {
110
- const unsigned unalign = bytes_per_word - src_unalign;
111
- force_ascii_slow(src, dst, unalign);
112
- src += unalign;
113
- dst += unalign;
114
- len -= src_unalign;
115
- } else {
116
- force_ascii_slow(src, dst, len);
117
- return;
118
- }
119
- }
120
-
121
- #if defined(__x86_64__) || defined(_WIN64)
122
- const uintptr_t mask = ~0x8080808080808080ll;
123
- #else
124
- const uintptr_t mask = ~0x80808080l;
125
- #endif
126
-
127
- const uintptr_t* srcw = reinterpret_cast<const uintptr_t*>(src);
128
- uintptr_t* dstw = reinterpret_cast<uintptr_t*>(dst);
129
-
130
- for (size_t i = 0, n = len / bytes_per_word; i < n; ++i) {
131
- dstw[i] = srcw[i] & mask;
132
- }
133
-
134
- const unsigned remainder = len & align_mask;
135
- if (remainder > 0) {
136
- const size_t offset = len - remainder;
137
- force_ascii_slow(src + offset, dst + offset, remainder);
138
- }
139
- }
140
-
141
-
142
- static size_t base64_encode(const char* src,
143
- size_t slen,
144
- char* dst,
145
- size_t dlen) {
146
- // We know how much we'll write, just make sure that there's space.
147
- assert(dlen >= base64_encoded_size(slen) &&
148
- "not enough space provided for base64 encode");
149
-
150
- dlen = base64_encoded_size(slen);
151
-
152
- unsigned a;
153
- unsigned b;
154
- unsigned c;
155
- unsigned i;
156
- unsigned k;
157
- unsigned n;
158
-
159
- static const char table[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
160
- "abcdefghijklmnopqrstuvwxyz"
161
- "0123456789+/";
162
-
163
- i = 0;
164
- k = 0;
165
- n = slen / 3 * 3;
166
-
167
- while (i < n) {
168
- a = src[i + 0] & 0xff;
169
- b = src[i + 1] & 0xff;
170
- c = src[i + 2] & 0xff;
171
-
172
- dst[k + 0] = table[a >> 2];
173
- dst[k + 1] = table[((a & 3) << 4) | (b >> 4)];
174
- dst[k + 2] = table[((b & 0x0f) << 2) | (c >> 6)];
175
- dst[k + 3] = table[c & 0x3f];
176
-
177
- i += 3;
178
- k += 4;
179
- }
180
-
181
- if (n != slen) {
182
- switch (slen - n) {
183
- case 1:
184
- a = src[i + 0] & 0xff;
185
- dst[k + 0] = table[a >> 2];
186
- dst[k + 1] = table[(a & 3) << 4];
187
- dst[k + 2] = '=';
188
- dst[k + 3] = '=';
189
- break;
190
-
191
- case 2:
192
- a = src[i + 0] & 0xff;
193
- b = src[i + 1] & 0xff;
194
- dst[k + 0] = table[a >> 2];
195
- dst[k + 1] = table[((a & 3) << 4) | (b >> 4)];
196
- dst[k + 2] = table[(b & 0x0f) << 2];
197
- dst[k + 3] = '=';
198
- break;
199
- }
200
- }
201
-
202
- return dlen;
203
- }
204
-
205
-
206
- static size_t hex_encode(const char* src, size_t slen, char* dst, size_t dlen) {
207
- // We know how much we'll write, just make sure that there's space.
208
- assert(dlen >= slen * 2 &&
209
- "not enough space provided for hex encode");
210
-
211
- dlen = slen * 2;
212
- for (uint32_t i = 0, k = 0; k < dlen; i += 1, k += 2) {
213
- static const char hex[] = "0123456789abcdef";
214
- uint8_t val = static_cast<uint8_t>(src[i]);
215
- dst[k + 0] = hex[val >> 4];
216
- dst[k + 1] = hex[val & 15];
217
- }
218
-
219
- return dlen;
220
- }
221
-
222
-
223
-
224
- static Local<Value> Encode(const char* buf,
225
- size_t buflen,
226
- enum Encoding encoding) {
227
- assert(buflen <= node::Buffer::kMaxLength);
228
- if (!buflen && encoding != BUFFER)
229
- return New("").ToLocalChecked();
230
-
231
- Local<String> val;
232
- switch (encoding) {
233
- case BUFFER:
234
- return CopyBuffer(buf, buflen).ToLocalChecked();
235
-
236
- case ASCII:
237
- if (contains_non_ascii(buf, buflen)) {
238
- char* out = new char[buflen];
239
- force_ascii(buf, out, buflen);
240
- val = New<String>(out, buflen).ToLocalChecked();
241
- delete[] out;
242
- } else {
243
- val = New<String>(buf, buflen).ToLocalChecked();
244
- }
245
- break;
246
-
247
- case UTF8:
248
- val = New<String>(buf, buflen).ToLocalChecked();
249
- break;
250
-
251
- case BINARY: {
252
- // TODO(isaacs) use ExternalTwoByteString?
253
- const unsigned char *cbuf = reinterpret_cast<const unsigned char*>(buf);
254
- uint16_t * twobytebuf = new uint16_t[buflen];
255
- for (size_t i = 0; i < buflen; i++) {
256
- // XXX is the following line platform independent?
257
- twobytebuf[i] = cbuf[i];
258
- }
259
- val = New<String>(twobytebuf, buflen).ToLocalChecked();
260
- delete[] twobytebuf;
261
- break;
262
- }
263
-
264
- case BASE64: {
265
- size_t dlen = base64_encoded_size(buflen);
266
- char* dst = new char[dlen];
267
-
268
- size_t written = base64_encode(buf, buflen, dst, dlen);
269
- assert(written == dlen);
270
-
271
- val = New<String>(dst, dlen).ToLocalChecked();
272
- delete[] dst;
273
- break;
274
- }
275
-
276
- case UCS2: {
277
- const uint16_t* data = reinterpret_cast<const uint16_t*>(buf);
278
- val = New<String>(data, buflen / 2).ToLocalChecked();
279
- break;
280
- }
281
-
282
- case HEX: {
283
- size_t dlen = buflen * 2;
284
- char* dst = new char[dlen];
285
- size_t written = hex_encode(buf, buflen, dst, dlen);
286
- assert(written == dlen);
287
-
288
- val = New<String>(dst, dlen).ToLocalChecked();
289
- delete[] dst;
290
- break;
291
- }
292
-
293
- default:
294
- assert(0 && "unknown encoding");
295
- break;
296
- }
297
-
298
- return val;
299
- }
300
-
301
- #undef base64_encoded_size
302
-
303
- } // end of namespace imp
304
-
305
- #endif // NAN_STRING_BYTES_H_