protobufjs 6.11.1 → 7.0.0

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 (254) hide show
  1. package/README.md +7 -174
  2. package/dist/light/protobuf.js +40 -16
  3. package/dist/light/protobuf.js.map +1 -1
  4. package/dist/light/protobuf.min.js +3 -3
  5. package/dist/light/protobuf.min.js.map +1 -1
  6. package/dist/minimal/protobuf.js +27 -10
  7. package/dist/minimal/protobuf.js.map +1 -1
  8. package/dist/minimal/protobuf.min.js +3 -3
  9. package/dist/minimal/protobuf.min.js.map +1 -1
  10. package/dist/protobuf.js +109 -46
  11. package/dist/protobuf.js.map +1 -1
  12. package/dist/protobuf.min.js +3 -3
  13. package/dist/protobuf.min.js.map +1 -1
  14. package/index.d.ts +1 -1
  15. package/package.json +11 -30
  16. package/scripts/postinstall.js +0 -3
  17. package/src/converter.js +1 -1
  18. package/src/decoder.js +4 -3
  19. package/src/field.js +3 -0
  20. package/src/namespace.js +1 -2
  21. package/src/parse.js +38 -14
  22. package/src/roots.js +1 -1
  23. package/src/tokenize.js +31 -16
  24. package/src/util/minimal.js +24 -7
  25. package/src/util.js +3 -0
  26. package/src/wrappers.js +2 -2
  27. package/CHANGELOG.md +0 -1014
  28. package/bin/pbjs +0 -6
  29. package/bin/pbts +0 -6
  30. package/cli/LICENSE +0 -33
  31. package/cli/README.md +0 -174
  32. package/cli/bin/pbjs +0 -6
  33. package/cli/bin/pbts +0 -6
  34. package/cli/index.d.ts +0 -3
  35. package/cli/index.js +0 -3
  36. package/cli/lib/tsd-jsdoc/LICENSE +0 -21
  37. package/cli/lib/tsd-jsdoc/README.md +0 -23
  38. package/cli/lib/tsd-jsdoc/plugin.js +0 -21
  39. package/cli/lib/tsd-jsdoc/publish.js +0 -705
  40. package/cli/lib/tsd-jsdoc.json +0 -18
  41. package/cli/node_modules/.package-lock.json +0 -256
  42. package/cli/node_modules/acorn/CHANGELOG.md +0 -620
  43. package/cli/node_modules/acorn/LICENSE +0 -21
  44. package/cli/node_modules/acorn/README.md +0 -269
  45. package/cli/node_modules/acorn/bin/acorn +0 -4
  46. package/cli/node_modules/acorn/dist/acorn.d.ts +0 -209
  47. package/cli/node_modules/acorn/dist/acorn.js +0 -5186
  48. package/cli/node_modules/acorn/dist/acorn.js.map +0 -1
  49. package/cli/node_modules/acorn/dist/acorn.mjs +0 -5155
  50. package/cli/node_modules/acorn/dist/acorn.mjs.d.ts +0 -2
  51. package/cli/node_modules/acorn/dist/acorn.mjs.map +0 -1
  52. package/cli/node_modules/acorn/dist/bin.js +0 -64
  53. package/cli/node_modules/acorn/package.json +0 -35
  54. package/cli/node_modules/acorn-jsx/LICENSE +0 -19
  55. package/cli/node_modules/acorn-jsx/README.md +0 -40
  56. package/cli/node_modules/acorn-jsx/index.js +0 -488
  57. package/cli/node_modules/acorn-jsx/package.json +0 -27
  58. package/cli/node_modules/acorn-jsx/xhtml.js +0 -255
  59. package/cli/node_modules/balanced-match/.npmignore +0 -5
  60. package/cli/node_modules/balanced-match/LICENSE.md +0 -21
  61. package/cli/node_modules/balanced-match/README.md +0 -91
  62. package/cli/node_modules/balanced-match/index.js +0 -59
  63. package/cli/node_modules/balanced-match/package.json +0 -49
  64. package/cli/node_modules/brace-expansion/LICENSE +0 -21
  65. package/cli/node_modules/brace-expansion/README.md +0 -129
  66. package/cli/node_modules/brace-expansion/index.js +0 -201
  67. package/cli/node_modules/brace-expansion/package.json +0 -47
  68. package/cli/node_modules/concat-map/.travis.yml +0 -4
  69. package/cli/node_modules/concat-map/LICENSE +0 -18
  70. package/cli/node_modules/concat-map/README.markdown +0 -62
  71. package/cli/node_modules/concat-map/example/map.js +0 -6
  72. package/cli/node_modules/concat-map/index.js +0 -13
  73. package/cli/node_modules/concat-map/package.json +0 -43
  74. package/cli/node_modules/concat-map/test/map.js +0 -39
  75. package/cli/node_modules/deep-is/.npmignore +0 -1
  76. package/cli/node_modules/deep-is/.travis.yml +0 -6
  77. package/cli/node_modules/deep-is/LICENSE +0 -22
  78. package/cli/node_modules/deep-is/README.markdown +0 -70
  79. package/cli/node_modules/deep-is/example/cmp.js +0 -11
  80. package/cli/node_modules/deep-is/index.js +0 -102
  81. package/cli/node_modules/deep-is/package.json +0 -61
  82. package/cli/node_modules/deep-is/test/NaN.js +0 -16
  83. package/cli/node_modules/deep-is/test/cmp.js +0 -23
  84. package/cli/node_modules/deep-is/test/neg-vs-pos-0.js +0 -15
  85. package/cli/node_modules/escodegen/LICENSE.BSD +0 -21
  86. package/cli/node_modules/escodegen/README.md +0 -84
  87. package/cli/node_modules/escodegen/bin/escodegen.js +0 -77
  88. package/cli/node_modules/escodegen/bin/esgenerate.js +0 -64
  89. package/cli/node_modules/escodegen/escodegen.js +0 -2647
  90. package/cli/node_modules/escodegen/package.json +0 -62
  91. package/cli/node_modules/eslint-visitor-keys/CHANGELOG.md +0 -25
  92. package/cli/node_modules/eslint-visitor-keys/LICENSE +0 -201
  93. package/cli/node_modules/eslint-visitor-keys/README.md +0 -98
  94. package/cli/node_modules/eslint-visitor-keys/lib/index.js +0 -81
  95. package/cli/node_modules/eslint-visitor-keys/lib/visitor-keys.json +0 -284
  96. package/cli/node_modules/eslint-visitor-keys/package.json +0 -40
  97. package/cli/node_modules/espree/CHANGELOG.md +0 -509
  98. package/cli/node_modules/espree/LICENSE +0 -25
  99. package/cli/node_modules/espree/README.md +0 -233
  100. package/cli/node_modules/espree/espree.js +0 -177
  101. package/cli/node_modules/espree/lib/ast-node-types.js +0 -96
  102. package/cli/node_modules/espree/lib/espree.js +0 -286
  103. package/cli/node_modules/espree/lib/features.js +0 -29
  104. package/cli/node_modules/espree/lib/options.js +0 -106
  105. package/cli/node_modules/espree/lib/token-translator.js +0 -263
  106. package/cli/node_modules/espree/lib/visitor-keys.js +0 -123
  107. package/cli/node_modules/espree/package.json +0 -64
  108. package/cli/node_modules/esprima/ChangeLog +0 -235
  109. package/cli/node_modules/esprima/LICENSE.BSD +0 -21
  110. package/cli/node_modules/esprima/README.md +0 -46
  111. package/cli/node_modules/esprima/bin/esparse.js +0 -139
  112. package/cli/node_modules/esprima/bin/esvalidate.js +0 -236
  113. package/cli/node_modules/esprima/dist/esprima.js +0 -6709
  114. package/cli/node_modules/esprima/package.json +0 -112
  115. package/cli/node_modules/estraverse/.jshintrc +0 -16
  116. package/cli/node_modules/estraverse/LICENSE.BSD +0 -19
  117. package/cli/node_modules/estraverse/README.md +0 -153
  118. package/cli/node_modules/estraverse/estraverse.js +0 -801
  119. package/cli/node_modules/estraverse/gulpfile.js +0 -70
  120. package/cli/node_modules/estraverse/package.json +0 -40
  121. package/cli/node_modules/esutils/LICENSE.BSD +0 -19
  122. package/cli/node_modules/esutils/README.md +0 -174
  123. package/cli/node_modules/esutils/lib/ast.js +0 -144
  124. package/cli/node_modules/esutils/lib/code.js +0 -135
  125. package/cli/node_modules/esutils/lib/keyword.js +0 -165
  126. package/cli/node_modules/esutils/lib/utils.js +0 -33
  127. package/cli/node_modules/esutils/package.json +0 -44
  128. package/cli/node_modules/fast-levenshtein/LICENSE.md +0 -25
  129. package/cli/node_modules/fast-levenshtein/README.md +0 -104
  130. package/cli/node_modules/fast-levenshtein/levenshtein.js +0 -136
  131. package/cli/node_modules/fast-levenshtein/package.json +0 -39
  132. package/cli/node_modules/fs.realpath/LICENSE +0 -43
  133. package/cli/node_modules/fs.realpath/README.md +0 -33
  134. package/cli/node_modules/fs.realpath/index.js +0 -66
  135. package/cli/node_modules/fs.realpath/old.js +0 -303
  136. package/cli/node_modules/fs.realpath/package.json +0 -26
  137. package/cli/node_modules/glob/LICENSE +0 -21
  138. package/cli/node_modules/glob/README.md +0 -375
  139. package/cli/node_modules/glob/changelog.md +0 -67
  140. package/cli/node_modules/glob/common.js +0 -240
  141. package/cli/node_modules/glob/glob.js +0 -790
  142. package/cli/node_modules/glob/package.json +0 -46
  143. package/cli/node_modules/glob/sync.js +0 -486
  144. package/cli/node_modules/inflight/LICENSE +0 -15
  145. package/cli/node_modules/inflight/README.md +0 -37
  146. package/cli/node_modules/inflight/inflight.js +0 -54
  147. package/cli/node_modules/inflight/package.json +0 -29
  148. package/cli/node_modules/inherits/LICENSE +0 -16
  149. package/cli/node_modules/inherits/README.md +0 -42
  150. package/cli/node_modules/inherits/inherits.js +0 -9
  151. package/cli/node_modules/inherits/inherits_browser.js +0 -27
  152. package/cli/node_modules/inherits/package.json +0 -29
  153. package/cli/node_modules/levn/LICENSE +0 -22
  154. package/cli/node_modules/levn/README.md +0 -196
  155. package/cli/node_modules/levn/lib/cast.js +0 -298
  156. package/cli/node_modules/levn/lib/coerce.js +0 -285
  157. package/cli/node_modules/levn/lib/index.js +0 -22
  158. package/cli/node_modules/levn/lib/parse-string.js +0 -113
  159. package/cli/node_modules/levn/lib/parse.js +0 -102
  160. package/cli/node_modules/levn/package.json +0 -47
  161. package/cli/node_modules/minimatch/LICENSE +0 -15
  162. package/cli/node_modules/minimatch/README.md +0 -209
  163. package/cli/node_modules/minimatch/minimatch.js +0 -923
  164. package/cli/node_modules/minimatch/package.json +0 -30
  165. package/cli/node_modules/once/LICENSE +0 -15
  166. package/cli/node_modules/once/README.md +0 -79
  167. package/cli/node_modules/once/once.js +0 -42
  168. package/cli/node_modules/once/package.json +0 -33
  169. package/cli/node_modules/optionator/CHANGELOG.md +0 -56
  170. package/cli/node_modules/optionator/LICENSE +0 -22
  171. package/cli/node_modules/optionator/README.md +0 -238
  172. package/cli/node_modules/optionator/lib/help.js +0 -260
  173. package/cli/node_modules/optionator/lib/index.js +0 -465
  174. package/cli/node_modules/optionator/lib/util.js +0 -54
  175. package/cli/node_modules/optionator/package.json +0 -44
  176. package/cli/node_modules/path-is-absolute/index.js +0 -20
  177. package/cli/node_modules/path-is-absolute/license +0 -21
  178. package/cli/node_modules/path-is-absolute/package.json +0 -43
  179. package/cli/node_modules/path-is-absolute/readme.md +0 -59
  180. package/cli/node_modules/prelude-ls/CHANGELOG.md +0 -99
  181. package/cli/node_modules/prelude-ls/LICENSE +0 -22
  182. package/cli/node_modules/prelude-ls/README.md +0 -15
  183. package/cli/node_modules/prelude-ls/lib/Func.js +0 -65
  184. package/cli/node_modules/prelude-ls/lib/List.js +0 -686
  185. package/cli/node_modules/prelude-ls/lib/Num.js +0 -130
  186. package/cli/node_modules/prelude-ls/lib/Obj.js +0 -154
  187. package/cli/node_modules/prelude-ls/lib/Str.js +0 -92
  188. package/cli/node_modules/prelude-ls/lib/index.js +0 -178
  189. package/cli/node_modules/prelude-ls/package.json +0 -52
  190. package/cli/node_modules/rimraf/CHANGELOG.md +0 -65
  191. package/cli/node_modules/rimraf/LICENSE +0 -15
  192. package/cli/node_modules/rimraf/README.md +0 -101
  193. package/cli/node_modules/rimraf/bin.js +0 -68
  194. package/cli/node_modules/rimraf/package.json +0 -32
  195. package/cli/node_modules/rimraf/rimraf.js +0 -360
  196. package/cli/node_modules/source-map/CHANGELOG.md +0 -301
  197. package/cli/node_modules/source-map/LICENSE +0 -28
  198. package/cli/node_modules/source-map/README.md +0 -742
  199. package/cli/node_modules/source-map/dist/source-map.debug.js +0 -3234
  200. package/cli/node_modules/source-map/dist/source-map.js +0 -3233
  201. package/cli/node_modules/source-map/dist/source-map.min.js +0 -2
  202. package/cli/node_modules/source-map/dist/source-map.min.js.map +0 -1
  203. package/cli/node_modules/source-map/lib/array-set.js +0 -121
  204. package/cli/node_modules/source-map/lib/base64-vlq.js +0 -140
  205. package/cli/node_modules/source-map/lib/base64.js +0 -67
  206. package/cli/node_modules/source-map/lib/binary-search.js +0 -111
  207. package/cli/node_modules/source-map/lib/mapping-list.js +0 -79
  208. package/cli/node_modules/source-map/lib/quick-sort.js +0 -114
  209. package/cli/node_modules/source-map/lib/source-map-consumer.js +0 -1145
  210. package/cli/node_modules/source-map/lib/source-map-generator.js +0 -425
  211. package/cli/node_modules/source-map/lib/source-node.js +0 -413
  212. package/cli/node_modules/source-map/lib/util.js +0 -488
  213. package/cli/node_modules/source-map/package.json +0 -73
  214. package/cli/node_modules/source-map/source-map.d.ts +0 -98
  215. package/cli/node_modules/source-map/source-map.js +0 -8
  216. package/cli/node_modules/tmp/CHANGELOG.md +0 -288
  217. package/cli/node_modules/tmp/LICENSE +0 -21
  218. package/cli/node_modules/tmp/README.md +0 -365
  219. package/cli/node_modules/tmp/lib/tmp.js +0 -780
  220. package/cli/node_modules/tmp/package.json +0 -58
  221. package/cli/node_modules/type-check/LICENSE +0 -22
  222. package/cli/node_modules/type-check/README.md +0 -210
  223. package/cli/node_modules/type-check/lib/check.js +0 -126
  224. package/cli/node_modules/type-check/lib/index.js +0 -16
  225. package/cli/node_modules/type-check/lib/parse-type.js +0 -196
  226. package/cli/node_modules/type-check/package.json +0 -40
  227. package/cli/node_modules/word-wrap/LICENSE +0 -21
  228. package/cli/node_modules/word-wrap/README.md +0 -182
  229. package/cli/node_modules/word-wrap/index.d.ts +0 -50
  230. package/cli/node_modules/word-wrap/index.js +0 -46
  231. package/cli/node_modules/word-wrap/package.json +0 -77
  232. package/cli/node_modules/wrappy/LICENSE +0 -15
  233. package/cli/node_modules/wrappy/README.md +0 -36
  234. package/cli/node_modules/wrappy/package.json +0 -29
  235. package/cli/node_modules/wrappy/wrappy.js +0 -33
  236. package/cli/package.json +0 -8
  237. package/cli/package.standalone.json +0 -32
  238. package/cli/pbjs.d.ts +0 -9
  239. package/cli/pbjs.js +0 -330
  240. package/cli/pbts.d.ts +0 -9
  241. package/cli/pbts.js +0 -197
  242. package/cli/targets/json-module.js +0 -38
  243. package/cli/targets/json.js +0 -8
  244. package/cli/targets/proto.js +0 -326
  245. package/cli/targets/proto2.js +0 -10
  246. package/cli/targets/proto3.js +0 -10
  247. package/cli/targets/static-module.js +0 -29
  248. package/cli/targets/static.js +0 -711
  249. package/cli/util.js +0 -183
  250. package/cli/wrappers/amd.js +0 -7
  251. package/cli/wrappers/closure.js +0 -7
  252. package/cli/wrappers/commonjs.js +0 -7
  253. package/cli/wrappers/default.js +0 -15
  254. package/cli/wrappers/es6.js +0 -5
@@ -1,112 +0,0 @@
1
- {
2
- "name": "esprima",
3
- "description": "ECMAScript parsing infrastructure for multipurpose analysis",
4
- "homepage": "http://esprima.org",
5
- "main": "dist/esprima.js",
6
- "bin": {
7
- "esparse": "./bin/esparse.js",
8
- "esvalidate": "./bin/esvalidate.js"
9
- },
10
- "version": "4.0.1",
11
- "files": [
12
- "bin",
13
- "dist/esprima.js"
14
- ],
15
- "engines": {
16
- "node": ">=4"
17
- },
18
- "author": {
19
- "name": "Ariya Hidayat",
20
- "email": "ariya.hidayat@gmail.com"
21
- },
22
- "maintainers": [
23
- {
24
- "name": "Ariya Hidayat",
25
- "email": "ariya.hidayat@gmail.com",
26
- "web": "http://ariya.ofilabs.com"
27
- }
28
- ],
29
- "repository": {
30
- "type": "git",
31
- "url": "https://github.com/jquery/esprima.git"
32
- },
33
- "bugs": {
34
- "url": "https://github.com/jquery/esprima/issues"
35
- },
36
- "license": "BSD-2-Clause",
37
- "devDependencies": {
38
- "codecov.io": "~0.1.6",
39
- "escomplex-js": "1.2.0",
40
- "everything.js": "~1.0.3",
41
- "glob": "~7.1.0",
42
- "istanbul": "~0.4.0",
43
- "json-diff": "~0.3.1",
44
- "karma": "~1.3.0",
45
- "karma-chrome-launcher": "~2.0.0",
46
- "karma-detect-browsers": "~2.2.3",
47
- "karma-edge-launcher": "~0.2.0",
48
- "karma-firefox-launcher": "~1.0.0",
49
- "karma-ie-launcher": "~1.0.0",
50
- "karma-mocha": "~1.3.0",
51
- "karma-safari-launcher": "~1.0.0",
52
- "karma-safaritechpreview-launcher": "~0.0.4",
53
- "karma-sauce-launcher": "~1.1.0",
54
- "lodash": "~3.10.1",
55
- "mocha": "~3.2.0",
56
- "node-tick-processor": "~0.0.2",
57
- "regenerate": "~1.3.2",
58
- "temp": "~0.8.3",
59
- "tslint": "~5.1.0",
60
- "typescript": "~2.3.2",
61
- "typescript-formatter": "~5.1.3",
62
- "unicode-8.0.0": "~0.7.0",
63
- "webpack": "~1.14.0"
64
- },
65
- "keywords": [
66
- "ast",
67
- "ecmascript",
68
- "esprima",
69
- "javascript",
70
- "parser",
71
- "syntax"
72
- ],
73
- "scripts": {
74
- "check-version": "node test/check-version.js",
75
- "tslint": "tslint src/*.ts",
76
- "code-style": "tsfmt --verify src/*.ts && tsfmt --verify test/*.js",
77
- "format-code": "tsfmt -r src/*.ts && tsfmt -r test/*.js",
78
- "complexity": "node test/check-complexity.js",
79
- "static-analysis": "npm run check-version && npm run tslint && npm run code-style && npm run complexity",
80
- "hostile-env-tests": "node test/hostile-environment-tests.js",
81
- "unit-tests": "node test/unit-tests.js",
82
- "api-tests": "mocha -R dot test/api-tests.js",
83
- "grammar-tests": "node test/grammar-tests.js",
84
- "regression-tests": "node test/regression-tests.js",
85
- "all-tests": "npm run verify-line-ending && npm run generate-fixtures && npm run unit-tests && npm run api-tests && npm run grammar-tests && npm run regression-tests && npm run hostile-env-tests",
86
- "verify-line-ending": "node test/verify-line-ending.js",
87
- "generate-fixtures": "node tools/generate-fixtures.js",
88
- "browser-tests": "npm run compile && npm run generate-fixtures && cd test && karma start --single-run",
89
- "saucelabs-evergreen": "cd test && karma start saucelabs-evergreen.conf.js",
90
- "saucelabs-safari": "cd test && karma start saucelabs-safari.conf.js",
91
- "saucelabs-ie": "cd test && karma start saucelabs-ie.conf.js",
92
- "saucelabs": "npm run saucelabs-evergreen && npm run saucelabs-ie && npm run saucelabs-safari",
93
- "analyze-coverage": "istanbul cover test/unit-tests.js",
94
- "check-coverage": "istanbul check-coverage --statement 100 --branch 100 --function 100",
95
- "dynamic-analysis": "npm run analyze-coverage && npm run check-coverage",
96
- "compile": "tsc -p src/ && webpack && node tools/fixupbundle.js",
97
- "test": "npm run compile && npm run all-tests && npm run static-analysis && npm run dynamic-analysis",
98
- "prepublish": "npm run compile",
99
- "profile": "node --prof test/profile.js && mv isolate*.log v8.log && node-tick-processor",
100
- "benchmark-parser": "node -expose_gc test/benchmark-parser.js",
101
- "benchmark-tokenizer": "node --expose_gc test/benchmark-tokenizer.js",
102
- "benchmark": "npm run benchmark-parser && npm run benchmark-tokenizer",
103
- "codecov": "istanbul report cobertura && codecov < ./coverage/cobertura-coverage.xml",
104
- "downstream": "node test/downstream.js",
105
- "travis": "npm test",
106
- "circleci": "npm test && npm run codecov && npm run downstream",
107
- "appveyor": "npm run compile && npm run all-tests && npm run browser-tests",
108
- "droneio": "npm run compile && npm run all-tests && npm run saucelabs",
109
- "generate-regex": "node tools/generate-identifier-regex.js",
110
- "generate-xhtml-entities": "node tools/generate-xhtml-entities.js"
111
- }
112
- }
@@ -1,16 +0,0 @@
1
- {
2
- "curly": true,
3
- "eqeqeq": true,
4
- "immed": true,
5
- "eqnull": true,
6
- "latedef": true,
7
- "noarg": true,
8
- "noempty": true,
9
- "quotmark": "single",
10
- "undef": true,
11
- "unused": true,
12
- "strict": true,
13
- "trailing": true,
14
-
15
- "node": true
16
- }
@@ -1,19 +0,0 @@
1
- Redistribution and use in source and binary forms, with or without
2
- modification, are permitted provided that the following conditions are met:
3
-
4
- * Redistributions of source code must retain the above copyright
5
- notice, this list of conditions and the following disclaimer.
6
- * Redistributions in binary form must reproduce the above copyright
7
- notice, this list of conditions and the following disclaimer in the
8
- documentation and/or other materials provided with the distribution.
9
-
10
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
11
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
12
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
13
- ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
14
- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
15
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
16
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
17
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
18
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
19
- THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -1,153 +0,0 @@
1
- ### Estraverse [![Build Status](https://secure.travis-ci.org/estools/estraverse.svg)](http://travis-ci.org/estools/estraverse)
2
-
3
- Estraverse ([estraverse](http://github.com/estools/estraverse)) is
4
- [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm)
5
- traversal functions from [esmangle project](http://github.com/estools/esmangle).
6
-
7
- ### Documentation
8
-
9
- You can find usage docs at [wiki page](https://github.com/estools/estraverse/wiki/Usage).
10
-
11
- ### Example Usage
12
-
13
- The following code will output all variables declared at the root of a file.
14
-
15
- ```javascript
16
- estraverse.traverse(ast, {
17
- enter: function (node, parent) {
18
- if (node.type == 'FunctionExpression' || node.type == 'FunctionDeclaration')
19
- return estraverse.VisitorOption.Skip;
20
- },
21
- leave: function (node, parent) {
22
- if (node.type == 'VariableDeclarator')
23
- console.log(node.id.name);
24
- }
25
- });
26
- ```
27
-
28
- We can use `this.skip`, `this.remove` and `this.break` functions instead of using Skip, Remove and Break.
29
-
30
- ```javascript
31
- estraverse.traverse(ast, {
32
- enter: function (node) {
33
- this.break();
34
- }
35
- });
36
- ```
37
-
38
- And estraverse provides `estraverse.replace` function. When returning node from `enter`/`leave`, current node is replaced with it.
39
-
40
- ```javascript
41
- result = estraverse.replace(tree, {
42
- enter: function (node) {
43
- // Replace it with replaced.
44
- if (node.type === 'Literal')
45
- return replaced;
46
- }
47
- });
48
- ```
49
-
50
- By passing `visitor.keys` mapping, we can extend estraverse traversing functionality.
51
-
52
- ```javascript
53
- // This tree contains a user-defined `TestExpression` node.
54
- var tree = {
55
- type: 'TestExpression',
56
-
57
- // This 'argument' is the property containing the other **node**.
58
- argument: {
59
- type: 'Literal',
60
- value: 20
61
- },
62
-
63
- // This 'extended' is the property not containing the other **node**.
64
- extended: true
65
- };
66
- estraverse.traverse(tree, {
67
- enter: function (node) { },
68
-
69
- // Extending the existing traversing rules.
70
- keys: {
71
- // TargetNodeName: [ 'keys', 'containing', 'the', 'other', '**node**' ]
72
- TestExpression: ['argument']
73
- }
74
- });
75
- ```
76
-
77
- By passing `visitor.fallback` option, we can control the behavior when encountering unknown nodes.
78
-
79
- ```javascript
80
- // This tree contains a user-defined `TestExpression` node.
81
- var tree = {
82
- type: 'TestExpression',
83
-
84
- // This 'argument' is the property containing the other **node**.
85
- argument: {
86
- type: 'Literal',
87
- value: 20
88
- },
89
-
90
- // This 'extended' is the property not containing the other **node**.
91
- extended: true
92
- };
93
- estraverse.traverse(tree, {
94
- enter: function (node) { },
95
-
96
- // Iterating the child **nodes** of unknown nodes.
97
- fallback: 'iteration'
98
- });
99
- ```
100
-
101
- When `visitor.fallback` is a function, we can determine which keys to visit on each node.
102
-
103
- ```javascript
104
- // This tree contains a user-defined `TestExpression` node.
105
- var tree = {
106
- type: 'TestExpression',
107
-
108
- // This 'argument' is the property containing the other **node**.
109
- argument: {
110
- type: 'Literal',
111
- value: 20
112
- },
113
-
114
- // This 'extended' is the property not containing the other **node**.
115
- extended: true
116
- };
117
- estraverse.traverse(tree, {
118
- enter: function (node) { },
119
-
120
- // Skip the `argument` property of each node
121
- fallback: function(node) {
122
- return Object.keys(node).filter(function(key) {
123
- return key !== 'argument';
124
- });
125
- }
126
- });
127
- ```
128
-
129
- ### License
130
-
131
- Copyright (C) 2012-2016 [Yusuke Suzuki](http://github.com/Constellation)
132
- (twitter: [@Constellation](http://twitter.com/Constellation)) and other contributors.
133
-
134
- Redistribution and use in source and binary forms, with or without
135
- modification, are permitted provided that the following conditions are met:
136
-
137
- * Redistributions of source code must retain the above copyright
138
- notice, this list of conditions and the following disclaimer.
139
-
140
- * Redistributions in binary form must reproduce the above copyright
141
- notice, this list of conditions and the following disclaimer in the
142
- documentation and/or other materials provided with the distribution.
143
-
144
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
145
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
146
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
147
- ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
148
- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
149
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
150
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
151
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
152
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
153
- THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.