porffor 0.1.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.
- package/CNAME +1 -0
- package/LICENSE +21 -0
- package/README.md +275 -0
- package/compiler/builtins/base64.js +92 -0
- package/compiler/builtins.js +770 -0
- package/compiler/codeGen.js +2027 -0
- package/compiler/decompile.js +102 -0
- package/compiler/embedding.js +19 -0
- package/compiler/encoding.js +217 -0
- package/compiler/expression.js +70 -0
- package/compiler/index.js +67 -0
- package/compiler/opt.js +436 -0
- package/compiler/parse.js +8 -0
- package/compiler/prototype.js +272 -0
- package/compiler/sections.js +154 -0
- package/compiler/wasmSpec.js +200 -0
- package/compiler/wrap.js +119 -0
- package/index.html +1264 -0
- package/logo.png +0 -0
- package/package.json +23 -0
- package/porf.cmd +2 -0
- package/runner/compare.js +35 -0
- package/runner/index.js +32 -0
- package/runner/info.js +54 -0
- package/runner/profile.js +47 -0
- package/runner/repl.js +99 -0
- package/runner/sizes.js +38 -0
- package/runner/transform.js +36 -0
- package/sw.js +26 -0
- package/test/array_1.js +8 -0
- package/test/array_push.js +8 -0
- package/test/assignop_1.js +15 -0
- package/test/bitwise_1.js +6 -0
- package/test/bool_1.js +3 -0
- package/test/boolean.js +6 -0
- package/test/break_1.js +6 -0
- package/test/break_2.js +12 -0
- package/test/conditional_1.js +3 -0
- package/test/conditional_2.js +4 -0
- package/test/console_1.js +2 -0
- package/test/continue_1.js +6 -0
- package/test/continue_2.js +10 -0
- package/test/empty.js +1 -0
- package/test/ending_exp_1.js +2 -0
- package/test/ending_exp_2.js +6 -0
- package/test/eq_1.js +4 -0
- package/test/eq_2.js +4 -0
- package/test/eq_3.js +5 -0
- package/test/export_1.js +9 -0
- package/test/factorial.js +3 -0
- package/test/fibonacci.js +16 -0
- package/test/float_div0.js +2 -0
- package/test/float_frac.js +2 -0
- package/test/float_isfinite.js +29 -0
- package/test/float_isinteger.js +13 -0
- package/test/float_isnan.js +20 -0
- package/test/float_issafeinteger.js +11 -0
- package/test/float_large.js +2 -0
- package/test/float_math_funcs.js +24 -0
- package/test/float_math_random.js +6 -0
- package/test/float_nan.js +3 -0
- package/test/float_number_values.js +12 -0
- package/test/for_1.js +4 -0
- package/test/for_2.js +4 -0
- package/test/func_1.js +16 -0
- package/test/func_2.js +6 -0
- package/test/func_3.js +10 -0
- package/test/global_1.js +8 -0
- package/test/global_2.js +10 -0
- package/test/if_1.js +6 -0
- package/test/if_2.js +9 -0
- package/test/if_3.js +7 -0
- package/test/iife_1.js +8 -0
- package/test/iife_2.js +8 -0
- package/test/index.js +93 -0
- package/test/int_number_values.js +6 -0
- package/test/logic_1.js +7 -0
- package/test/logic_2.js +7 -0
- package/test/math_1.js +6 -0
- package/test/math_2.js +12 -0
- package/test/math_3.js +6 -0
- package/test/number_func.js +4 -0
- package/test/return_1.js +8 -0
- package/test/return_2.js +11 -0
- package/test/tailcall_1.js +10 -0
- package/test/throw_1.js +2 -0
- package/test/throw_2.js +4 -0
- package/test/throw_3.js +2 -0
- package/test/throw_4.js +3 -0
- package/test/try_1.js +7 -0
- package/test/unary_1.js +4 -0
- package/test/unary_2.js +5 -0
- package/test/unary_3.js +6 -0
- package/test/unary_4.js +12 -0
- package/test/unary_5.js +8 -0
- package/test/undefined_1.js +8 -0
- package/test/undefined_2.js +10 -0
- package/test/updateexp_1.js +9 -0
- package/test/vars_1.js +5 -0
- package/test/vars_2.js +9 -0
- package/test/while_1.js +6 -0
- package/test262/compare.js +30 -0
- package/test262/index.js +314 -0
- package/test262/node_modules/.bin/esparse +12 -0
- package/test262/node_modules/.bin/esparse.cmd +17 -0
- package/test262/node_modules/.bin/esparse.ps1 +28 -0
- package/test262/node_modules/.bin/esvalidate +12 -0
- package/test262/node_modules/.bin/esvalidate.cmd +17 -0
- package/test262/node_modules/.bin/esvalidate.ps1 +28 -0
- package/test262/node_modules/.bin/js-yaml +12 -0
- package/test262/node_modules/.bin/js-yaml.cmd +17 -0
- package/test262/node_modules/.bin/js-yaml.ps1 +28 -0
- package/test262/node_modules/.package-lock.json +0 -0
- package/test262/node_modules/@nodelib/fs.scandir/LICENSE +21 -0
- package/test262/node_modules/@nodelib/fs.scandir/README.md +171 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts +20 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/adapters/fs.js +19 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/constants.d.ts +4 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/constants.js +17 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/index.d.ts +12 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/index.js +26 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts +7 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/providers/async.js +104 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts +1 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/providers/common.js +13 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts +5 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/providers/sync.js +54 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/settings.d.ts +20 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/settings.js +24 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/types/index.d.ts +20 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/types/index.js +2 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts +2 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/utils/fs.js +19 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts +2 -0
- package/test262/node_modules/@nodelib/fs.scandir/out/utils/index.js +5 -0
- package/test262/node_modules/@nodelib/fs.scandir/package.json +44 -0
- package/test262/node_modules/@nodelib/fs.stat/LICENSE +21 -0
- package/test262/node_modules/@nodelib/fs.stat/README.md +126 -0
- package/test262/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts +13 -0
- package/test262/node_modules/@nodelib/fs.stat/out/adapters/fs.js +17 -0
- package/test262/node_modules/@nodelib/fs.stat/out/index.d.ts +12 -0
- package/test262/node_modules/@nodelib/fs.stat/out/index.js +26 -0
- package/test262/node_modules/@nodelib/fs.stat/out/providers/async.d.ts +4 -0
- package/test262/node_modules/@nodelib/fs.stat/out/providers/async.js +36 -0
- package/test262/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts +3 -0
- package/test262/node_modules/@nodelib/fs.stat/out/providers/sync.js +23 -0
- package/test262/node_modules/@nodelib/fs.stat/out/settings.d.ts +16 -0
- package/test262/node_modules/@nodelib/fs.stat/out/settings.js +16 -0
- package/test262/node_modules/@nodelib/fs.stat/out/types/index.d.ts +4 -0
- package/test262/node_modules/@nodelib/fs.stat/out/types/index.js +2 -0
- package/test262/node_modules/@nodelib/fs.stat/package.json +37 -0
- package/test262/node_modules/@nodelib/fs.walk/LICENSE +21 -0
- package/test262/node_modules/@nodelib/fs.walk/README.md +215 -0
- package/test262/node_modules/@nodelib/fs.walk/out/index.d.ts +14 -0
- package/test262/node_modules/@nodelib/fs.walk/out/index.js +34 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/async.d.ts +12 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/async.js +30 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/index.d.ts +4 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/index.js +9 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts +12 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/stream.js +34 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts +10 -0
- package/test262/node_modules/@nodelib/fs.walk/out/providers/sync.js +14 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/async.d.ts +30 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/async.js +97 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/common.d.ts +7 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/common.js +31 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts +6 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/reader.js +11 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts +15 -0
- package/test262/node_modules/@nodelib/fs.walk/out/readers/sync.js +59 -0
- package/test262/node_modules/@nodelib/fs.walk/out/settings.d.ts +30 -0
- package/test262/node_modules/@nodelib/fs.walk/out/settings.js +26 -0
- package/test262/node_modules/@nodelib/fs.walk/out/types/index.d.ts +8 -0
- package/test262/node_modules/@nodelib/fs.walk/out/types/index.js +2 -0
- package/test262/node_modules/@nodelib/fs.walk/package.json +44 -0
- package/test262/node_modules/argparse/CHANGELOG.md +185 -0
- package/test262/node_modules/argparse/LICENSE +21 -0
- package/test262/node_modules/argparse/README.md +257 -0
- package/test262/node_modules/argparse/index.js +3 -0
- package/test262/node_modules/argparse/lib/action/append/constant.js +47 -0
- package/test262/node_modules/argparse/lib/action/append.js +53 -0
- package/test262/node_modules/argparse/lib/action/count.js +40 -0
- package/test262/node_modules/argparse/lib/action/help.js +47 -0
- package/test262/node_modules/argparse/lib/action/store/constant.js +43 -0
- package/test262/node_modules/argparse/lib/action/store/false.js +27 -0
- package/test262/node_modules/argparse/lib/action/store/true.js +26 -0
- package/test262/node_modules/argparse/lib/action/store.js +50 -0
- package/test262/node_modules/argparse/lib/action/subparsers.js +149 -0
- package/test262/node_modules/argparse/lib/action/version.js +47 -0
- package/test262/node_modules/argparse/lib/action.js +146 -0
- package/test262/node_modules/argparse/lib/action_container.js +482 -0
- package/test262/node_modules/argparse/lib/argparse.js +14 -0
- package/test262/node_modules/argparse/lib/argument/error.js +50 -0
- package/test262/node_modules/argparse/lib/argument/exclusive.js +54 -0
- package/test262/node_modules/argparse/lib/argument/group.js +75 -0
- package/test262/node_modules/argparse/lib/argument_parser.js +1161 -0
- package/test262/node_modules/argparse/lib/const.js +21 -0
- package/test262/node_modules/argparse/lib/help/added_formatters.js +87 -0
- package/test262/node_modules/argparse/lib/help/formatter.js +795 -0
- package/test262/node_modules/argparse/lib/namespace.js +76 -0
- package/test262/node_modules/argparse/lib/utils.js +57 -0
- package/test262/node_modules/argparse/package.json +34 -0
- package/test262/node_modules/braces/CHANGELOG.md +184 -0
- package/test262/node_modules/braces/LICENSE +21 -0
- package/test262/node_modules/braces/README.md +593 -0
- package/test262/node_modules/braces/index.js +170 -0
- package/test262/node_modules/braces/lib/compile.js +57 -0
- package/test262/node_modules/braces/lib/constants.js +57 -0
- package/test262/node_modules/braces/lib/expand.js +113 -0
- package/test262/node_modules/braces/lib/parse.js +333 -0
- package/test262/node_modules/braces/lib/stringify.js +32 -0
- package/test262/node_modules/braces/lib/utils.js +112 -0
- package/test262/node_modules/braces/package.json +77 -0
- package/test262/node_modules/esprima/ChangeLog +235 -0
- package/test262/node_modules/esprima/LICENSE.BSD +21 -0
- package/test262/node_modules/esprima/README.md +46 -0
- package/test262/node_modules/esprima/bin/esparse.js +139 -0
- package/test262/node_modules/esprima/bin/esvalidate.js +236 -0
- package/test262/node_modules/esprima/dist/esprima.js +6709 -0
- package/test262/node_modules/esprima/package.json +112 -0
- package/test262/node_modules/fast-glob/LICENSE +21 -0
- package/test262/node_modules/fast-glob/README.md +859 -0
- package/test262/node_modules/fast-glob/out/index.d.ts +40 -0
- package/test262/node_modules/fast-glob/out/index.js +102 -0
- package/test262/node_modules/fast-glob/out/managers/tasks.d.ts +22 -0
- package/test262/node_modules/fast-glob/out/managers/tasks.js +110 -0
- package/test262/node_modules/fast-glob/out/providers/async.d.ts +9 -0
- package/test262/node_modules/fast-glob/out/providers/async.js +23 -0
- package/test262/node_modules/fast-glob/out/providers/filters/deep.d.ts +16 -0
- package/test262/node_modules/fast-glob/out/providers/filters/deep.js +62 -0
- package/test262/node_modules/fast-glob/out/providers/filters/entry.d.ts +16 -0
- package/test262/node_modules/fast-glob/out/providers/filters/entry.js +63 -0
- package/test262/node_modules/fast-glob/out/providers/filters/error.d.ts +8 -0
- package/test262/node_modules/fast-glob/out/providers/filters/error.js +15 -0
- package/test262/node_modules/fast-glob/out/providers/matchers/matcher.d.ts +33 -0
- package/test262/node_modules/fast-glob/out/providers/matchers/matcher.js +45 -0
- package/test262/node_modules/fast-glob/out/providers/matchers/partial.d.ts +4 -0
- package/test262/node_modules/fast-glob/out/providers/matchers/partial.js +38 -0
- package/test262/node_modules/fast-glob/out/providers/provider.d.ts +19 -0
- package/test262/node_modules/fast-glob/out/providers/provider.js +48 -0
- package/test262/node_modules/fast-glob/out/providers/stream.d.ts +11 -0
- package/test262/node_modules/fast-glob/out/providers/stream.js +31 -0
- package/test262/node_modules/fast-glob/out/providers/sync.d.ts +9 -0
- package/test262/node_modules/fast-glob/out/providers/sync.js +23 -0
- package/test262/node_modules/fast-glob/out/providers/transformers/entry.d.ts +8 -0
- package/test262/node_modules/fast-glob/out/providers/transformers/entry.js +26 -0
- package/test262/node_modules/fast-glob/out/readers/async.d.ts +10 -0
- package/test262/node_modules/fast-glob/out/readers/async.js +35 -0
- package/test262/node_modules/fast-glob/out/readers/reader.d.ts +15 -0
- package/test262/node_modules/fast-glob/out/readers/reader.js +33 -0
- package/test262/node_modules/fast-glob/out/readers/stream.d.ts +14 -0
- package/test262/node_modules/fast-glob/out/readers/stream.js +55 -0
- package/test262/node_modules/fast-glob/out/readers/sync.d.ts +12 -0
- package/test262/node_modules/fast-glob/out/readers/sync.js +43 -0
- package/test262/node_modules/fast-glob/out/settings.d.ts +164 -0
- package/test262/node_modules/fast-glob/out/settings.js +57 -0
- package/test262/node_modules/fast-glob/out/types/index.d.ts +31 -0
- package/test262/node_modules/fast-glob/out/types/index.js +2 -0
- package/test262/node_modules/fast-glob/out/utils/array.d.ts +2 -0
- package/test262/node_modules/fast-glob/out/utils/array.js +22 -0
- package/test262/node_modules/fast-glob/out/utils/errno.d.ts +2 -0
- package/test262/node_modules/fast-glob/out/utils/errno.js +7 -0
- package/test262/node_modules/fast-glob/out/utils/fs.d.ts +4 -0
- package/test262/node_modules/fast-glob/out/utils/fs.js +19 -0
- package/test262/node_modules/fast-glob/out/utils/index.d.ts +8 -0
- package/test262/node_modules/fast-glob/out/utils/index.js +17 -0
- package/test262/node_modules/fast-glob/out/utils/path.d.ts +13 -0
- package/test262/node_modules/fast-glob/out/utils/path.js +68 -0
- package/test262/node_modules/fast-glob/out/utils/pattern.d.ts +47 -0
- package/test262/node_modules/fast-glob/out/utils/pattern.js +188 -0
- package/test262/node_modules/fast-glob/out/utils/stream.d.ts +4 -0
- package/test262/node_modules/fast-glob/out/utils/stream.js +17 -0
- package/test262/node_modules/fast-glob/out/utils/string.d.ts +2 -0
- package/test262/node_modules/fast-glob/out/utils/string.js +11 -0
- package/test262/node_modules/fast-glob/package.json +81 -0
- package/test262/node_modules/fastq/.github/dependabot.yml +11 -0
- package/test262/node_modules/fastq/.github/workflows/ci.yml +50 -0
- package/test262/node_modules/fastq/LICENSE +13 -0
- package/test262/node_modules/fastq/README.md +309 -0
- package/test262/node_modules/fastq/bench.js +66 -0
- package/test262/node_modules/fastq/example.js +14 -0
- package/test262/node_modules/fastq/example.mjs +11 -0
- package/test262/node_modules/fastq/index.d.ts +37 -0
- package/test262/node_modules/fastq/package.json +52 -0
- package/test262/node_modules/fastq/queue.js +289 -0
- package/test262/node_modules/fastq/test/example.ts +81 -0
- package/test262/node_modules/fastq/test/promise.js +248 -0
- package/test262/node_modules/fastq/test/test.js +566 -0
- package/test262/node_modules/fastq/test/tsconfig.json +11 -0
- package/test262/node_modules/fill-range/LICENSE +21 -0
- package/test262/node_modules/fill-range/README.md +237 -0
- package/test262/node_modules/fill-range/index.js +249 -0
- package/test262/node_modules/fill-range/package.json +69 -0
- package/test262/node_modules/glob-parent/CHANGELOG.md +110 -0
- package/test262/node_modules/glob-parent/LICENSE +15 -0
- package/test262/node_modules/glob-parent/README.md +137 -0
- package/test262/node_modules/glob-parent/index.js +42 -0
- package/test262/node_modules/glob-parent/package.json +48 -0
- package/test262/node_modules/graceful-fs/LICENSE +15 -0
- package/test262/node_modules/graceful-fs/README.md +143 -0
- package/test262/node_modules/graceful-fs/clone.js +23 -0
- package/test262/node_modules/graceful-fs/graceful-fs.js +448 -0
- package/test262/node_modules/graceful-fs/legacy-streams.js +118 -0
- package/test262/node_modules/graceful-fs/package.json +53 -0
- package/test262/node_modules/graceful-fs/polyfills.js +355 -0
- package/test262/node_modules/is-extglob/LICENSE +21 -0
- package/test262/node_modules/is-extglob/README.md +107 -0
- package/test262/node_modules/is-extglob/index.js +20 -0
- package/test262/node_modules/is-extglob/package.json +69 -0
- package/test262/node_modules/is-glob/LICENSE +21 -0
- package/test262/node_modules/is-glob/README.md +206 -0
- package/test262/node_modules/is-glob/index.js +150 -0
- package/test262/node_modules/is-glob/package.json +81 -0
- package/test262/node_modules/is-number/LICENSE +21 -0
- package/test262/node_modules/is-number/README.md +187 -0
- package/test262/node_modules/is-number/index.js +18 -0
- package/test262/node_modules/is-number/package.json +82 -0
- package/test262/node_modules/js-yaml/CHANGELOG.md +557 -0
- package/test262/node_modules/js-yaml/LICENSE +21 -0
- package/test262/node_modules/js-yaml/README.md +299 -0
- package/test262/node_modules/js-yaml/bin/js-yaml.js +132 -0
- package/test262/node_modules/js-yaml/dist/js-yaml.js +3989 -0
- package/test262/node_modules/js-yaml/dist/js-yaml.min.js +1 -0
- package/test262/node_modules/js-yaml/index.js +7 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/common.js +59 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/dumper.js +850 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/exception.js +43 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/loader.js +1644 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/mark.js +76 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/schema/core.js +18 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +25 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +28 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +17 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/schema/json.js +25 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/schema.js +108 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/binary.js +138 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/bool.js +35 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/float.js +116 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/int.js +173 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/js/function.js +93 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +60 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +28 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/map.js +8 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/merge.js +12 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/null.js +34 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/omap.js +44 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/pairs.js +53 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/seq.js +8 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/set.js +29 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/str.js +8 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +88 -0
- package/test262/node_modules/js-yaml/lib/js-yaml/type.js +61 -0
- package/test262/node_modules/js-yaml/lib/js-yaml.js +39 -0
- package/test262/node_modules/js-yaml/package.json +49 -0
- package/test262/node_modules/klaw/CHANGELOG.md +62 -0
- package/test262/node_modules/klaw/LICENSE +15 -0
- package/test262/node_modules/klaw/README.md +252 -0
- package/test262/node_modules/klaw/package.json +40 -0
- package/test262/node_modules/klaw/src/index.js +56 -0
- package/test262/node_modules/merge2/LICENSE +21 -0
- package/test262/node_modules/merge2/README.md +144 -0
- package/test262/node_modules/merge2/index.js +144 -0
- package/test262/node_modules/merge2/package.json +43 -0
- package/test262/node_modules/micromatch/LICENSE +21 -0
- package/test262/node_modules/micromatch/README.md +1011 -0
- package/test262/node_modules/micromatch/index.js +467 -0
- package/test262/node_modules/micromatch/package.json +119 -0
- package/test262/node_modules/picomatch/CHANGELOG.md +136 -0
- package/test262/node_modules/picomatch/LICENSE +21 -0
- package/test262/node_modules/picomatch/README.md +708 -0
- package/test262/node_modules/picomatch/index.js +3 -0
- package/test262/node_modules/picomatch/lib/constants.js +179 -0
- package/test262/node_modules/picomatch/lib/parse.js +1091 -0
- package/test262/node_modules/picomatch/lib/picomatch.js +342 -0
- package/test262/node_modules/picomatch/lib/scan.js +391 -0
- package/test262/node_modules/picomatch/lib/utils.js +64 -0
- package/test262/node_modules/picomatch/package.json +81 -0
- package/test262/node_modules/queue-microtask/LICENSE +20 -0
- package/test262/node_modules/queue-microtask/README.md +90 -0
- package/test262/node_modules/queue-microtask/index.d.ts +2 -0
- package/test262/node_modules/queue-microtask/index.js +9 -0
- package/test262/node_modules/queue-microtask/package.json +55 -0
- package/test262/node_modules/reusify/.coveralls.yml +1 -0
- package/test262/node_modules/reusify/.travis.yml +28 -0
- package/test262/node_modules/reusify/LICENSE +22 -0
- package/test262/node_modules/reusify/README.md +145 -0
- package/test262/node_modules/reusify/benchmarks/createNoCodeFunction.js +30 -0
- package/test262/node_modules/reusify/benchmarks/fib.js +13 -0
- package/test262/node_modules/reusify/benchmarks/reuseNoCodeFunction.js +38 -0
- package/test262/node_modules/reusify/package.json +45 -0
- package/test262/node_modules/reusify/reusify.js +33 -0
- package/test262/node_modules/reusify/test.js +66 -0
- package/test262/node_modules/run-parallel/LICENSE +20 -0
- package/test262/node_modules/run-parallel/README.md +85 -0
- package/test262/node_modules/run-parallel/index.js +51 -0
- package/test262/node_modules/run-parallel/package.json +58 -0
- package/test262/node_modules/sprintf-js/LICENSE +24 -0
- package/test262/node_modules/sprintf-js/README.md +88 -0
- package/test262/node_modules/sprintf-js/bower.json +14 -0
- package/test262/node_modules/sprintf-js/demo/angular.html +20 -0
- package/test262/node_modules/sprintf-js/dist/angular-sprintf.min.js +4 -0
- package/test262/node_modules/sprintf-js/dist/angular-sprintf.min.js.map +1 -0
- package/test262/node_modules/sprintf-js/dist/angular-sprintf.min.map +1 -0
- package/test262/node_modules/sprintf-js/dist/sprintf.min.js +4 -0
- package/test262/node_modules/sprintf-js/dist/sprintf.min.js.map +1 -0
- package/test262/node_modules/sprintf-js/dist/sprintf.min.map +1 -0
- package/test262/node_modules/sprintf-js/gruntfile.js +36 -0
- package/test262/node_modules/sprintf-js/package.json +22 -0
- package/test262/node_modules/sprintf-js/src/angular-sprintf.js +18 -0
- package/test262/node_modules/sprintf-js/src/sprintf.js +208 -0
- package/test262/node_modules/sprintf-js/test/test.js +82 -0
- package/test262/node_modules/test262-stream/.jshintignore +2 -0
- package/test262/node_modules/test262-stream/.jshintrc +6 -0
- package/test262/node_modules/test262-stream/.travis.yml +5 -0
- package/test262/node_modules/test262-stream/CONTRIBUTING.md +37 -0
- package/test262/node_modules/test262-stream/LICENSE-MICROSOFT.txt +27 -0
- package/test262/node_modules/test262-stream/LICENSE.txt +27 -0
- package/test262/node_modules/test262-stream/README.md +71 -0
- package/test262/node_modules/test262-stream/lib/builder.js +46 -0
- package/test262/node_modules/test262-stream/lib/compile.js +24 -0
- package/test262/node_modules/test262-stream/lib/create-scenarios.js +29 -0
- package/test262/node_modules/test262-stream/lib/index.js +187 -0
- package/test262/node_modules/test262-stream/lib/test-file.js +150 -0
- package/test262/node_modules/test262-stream/package.json +26 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-missing-harness/fake-test262/test/a-test-file.js +16 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-other-accepted/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-other-accepted/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-other-accepted/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-other-accepted/fake-test262/package.json +3 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-other-accepted/fake-test262/test/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-unsupported/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-unsupported/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-unsupported/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-unsupported/fake-test262/package.json +3 -0
- package/test262/node_modules/test262-stream/test/collateral/invalid-version-unsupported/fake-test262/test/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/asyncNegative_default.js +49 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/asyncNegative_strict_mode.js +50 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/async_default.js +48 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/async_strict_mode.js +49 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/bothStrict_default.js +46 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/bothStrict_strict_mode.js +47 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/error_default.js +39 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/error_strict_mode.js +40 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/module_default.js +37 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/module_strict_mode.js +38 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/negative-empty_default.js +37 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/negative-empty_strict_mode.js +38 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/noStrict_default.js +36 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/rawNoStrict_default.js +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/rawStrict_default.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-content/test/strict_strict_mode.js +41 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/asyncNegative_default.json +22 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/asyncNegative_strict_mode.json +22 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/async_default.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/async_strict_mode.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/bothStrict_default.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/bothStrict_strict_mode.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/error_default.json +19 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/error_strict_mode.json +19 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/module_default.json +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/module_strict_mode.json +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/negative-empty_default.json +19 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/negative-empty_strict_mode.json +19 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/noStrict_default.json +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/rawNoStrict_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/rawStrict_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/expected-metadata/test/strict_strict_mode.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/async.js +10 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/asyncNegative.js +11 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/bothStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/error.js +8 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/module.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/module_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/negative-empty.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/noStrict.js +5 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/rawNoStrict.js +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/rawStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-default/fake-test262/test/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/expected-content/test/bothStrict_default.js +46 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/expected-content/test/bothStrict_strict_mode.js +47 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/expected-metadata/test/bothStrict_default.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/expected-metadata/test/bothStrict_strict_mode.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/bothStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-0_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-1_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-2_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-3_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-4_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-5_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-6_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-7_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-8_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-extra-files/fake-test262/test/zzz-9_FIXTURE.txt +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/expected-content/test/raw_default.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/expected-content/test/runtime_default.js +38 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/expected-content/test/runtime_strict_mode.js +39 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/expected-metadata/test/raw_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/expected-metadata/test/runtime_default.json +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/expected-metadata/test/runtime_strict_mode.json +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/fake-test262/test/raw.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-insertionindex-with-copyright/fake-test262/test/runtime.js +7 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/asyncNegative_default.js +11 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/asyncNegative_strict_mode.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/async_default.js +10 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/async_strict_mode.js +11 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/bothStrict_default.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/bothStrict_strict_mode.js +16 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/error_default.js +8 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/error_strict_mode.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/module_default.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/module_strict_mode.js +7 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/negative-empty_default.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/negative-empty_strict_mode.js +7 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/noStrict_default.js +5 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/rawNoStrict_default.js +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/rawStrict_default.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-content/test/strict_strict_mode.js +10 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/asyncNegative_default.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/asyncNegative_strict_mode.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/async_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/async_strict_mode.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/bothStrict_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/bothStrict_strict_mode.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/error_default.json +16 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/error_strict_mode.json +16 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/module_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/module_strict_mode.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/negative-empty_default.json +16 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/negative-empty_strict_mode.json +16 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/noStrict_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/rawNoStrict_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/rawStrict_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/expected-metadata/test/strict_strict_mode.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/async.js +10 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/asyncNegative.js +11 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/bothStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/error.js +8 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/module.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/module_FIXTURE.js +2 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/negative-empty.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/noStrict.js +5 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/rawNoStrict.js +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/rawStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-omit-runtime/fake-test262/test/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/expected-content/test/strict_strict_mode.js +41 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/expected-metadata/test/strict_strict_mode.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/fake-test262/package.json +3 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-ignored/fake-test262/test/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/expected-content/test/strict_strict_mode.js +41 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/expected-metadata/test/strict_strict_mode.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/fake-test262/package.json +3 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-version-supported/fake-test262/test/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/missing-raw-flag_default.js +44 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/missing-raw-flag_strict_mode.js +45 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw-with-ls-and-license-on-same-line_default.js +20 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw-with-ls-multiline-block_default.js +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw-with-ls_default.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw-with-ps-and-license-on-same-line_default.js +20 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw-with-ps-multiline-block_default.js +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw-with-ps_default.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/rawWithLicense_default.js +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-content/test/raw_default.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/missing-raw-flag_default.json +22 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/missing-raw-flag_strict_mode.json +22 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw-with-ls-and-license-on-same-line_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw-with-ls-multiline-block_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw-with-ls_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw-with-ps-and-license-on-same-line_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw-with-ps-multiline-block_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw-with-ps_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/rawWithLicense_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/expected-metadata/test/raw_default.json +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/missing-raw-flag.js +13 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw-with-ls-and-license-on-same-line.js +20 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw-with-ls-multiline-block.js +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw-with-ls.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw-with-ps-and-license-on-same-line.js +20 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw-with-ps-multiline-block.js +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw-with-ps.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/raw.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-hashbang/fake-test262/test/rawWithLicense.js +21 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/custom-includes/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/custom-includes/doneprintHandle.js +9 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/custom-includes/sta.js +13 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-content/test/async_default.js +52 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-content/test/async_strict_mode.js +53 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-content/test/bothStrict_default.js +47 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-content/test/bothStrict_strict_mode.js +48 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-metadata/test/async_default.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-metadata/test/async_strict_mode.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-metadata/test/bothStrict_default.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/expected-metadata/test/bothStrict_strict_mode.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/fake-test262/test/async.js +10 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-includes/fake-test262/test/bothStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/async/asyncNegative_default.js +49 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/async/asyncNegative_strict_mode.js +50 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/async/async_default.js +48 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/async/async_strict_mode.js +49 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/bothStrict_default.js +46 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/bothStrict_strict_mode.js +47 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/strict/no/noStrict_default.js +36 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-content/test/strict/no/rawNoStrict_default.js +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/async/asyncNegative_default.json +22 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/async/asyncNegative_strict_mode.json +22 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/async/async_default.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/async/async_strict_mode.json +18 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/bothStrict_default.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/bothStrict_strict_mode.json +24 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/strict/no/noStrict_default.json +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/expected-metadata/test/strict/no/rawNoStrict_default.json +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/harness/assert.js +17 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/harness/doneprintHandle.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/harness/sta.js +12 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/async/async.js +10 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/async/asyncNegative.js +11 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/bothStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/error.js +8 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/negative-empty.js +6 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/strict/no/noStrict.js +5 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/strict/no/rawNoStrict.js +14 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/strict/rawStrict.js +15 -0
- package/test262/node_modules/test262-stream/test/collateral/valid-with-paths/fake-test262/test/strict/strict.js +9 -0
- package/test262/node_modules/test262-stream/test/test.js +319 -0
- package/test262/node_modules/to-regex-range/LICENSE +21 -0
- package/test262/node_modules/to-regex-range/README.md +305 -0
- package/test262/node_modules/to-regex-range/index.js +288 -0
- package/test262/node_modules/to-regex-range/package.json +88 -0
- package/test262/package-lock.json +279 -0
- package/test262/package.json +6 -0
- package/test262/prelude.js +75 -0
- package/test262/results.json +1 -0
- package/util/enum.js +20 -0
@@ -0,0 +1,173 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var common = require('../common');
|
4
|
+
var Type = require('../type');
|
5
|
+
|
6
|
+
function isHexCode(c) {
|
7
|
+
return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||
|
8
|
+
((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||
|
9
|
+
((0x61/* a */ <= c) && (c <= 0x66/* f */));
|
10
|
+
}
|
11
|
+
|
12
|
+
function isOctCode(c) {
|
13
|
+
return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));
|
14
|
+
}
|
15
|
+
|
16
|
+
function isDecCode(c) {
|
17
|
+
return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));
|
18
|
+
}
|
19
|
+
|
20
|
+
function resolveYamlInteger(data) {
|
21
|
+
if (data === null) return false;
|
22
|
+
|
23
|
+
var max = data.length,
|
24
|
+
index = 0,
|
25
|
+
hasDigits = false,
|
26
|
+
ch;
|
27
|
+
|
28
|
+
if (!max) return false;
|
29
|
+
|
30
|
+
ch = data[index];
|
31
|
+
|
32
|
+
// sign
|
33
|
+
if (ch === '-' || ch === '+') {
|
34
|
+
ch = data[++index];
|
35
|
+
}
|
36
|
+
|
37
|
+
if (ch === '0') {
|
38
|
+
// 0
|
39
|
+
if (index + 1 === max) return true;
|
40
|
+
ch = data[++index];
|
41
|
+
|
42
|
+
// base 2, base 8, base 16
|
43
|
+
|
44
|
+
if (ch === 'b') {
|
45
|
+
// base 2
|
46
|
+
index++;
|
47
|
+
|
48
|
+
for (; index < max; index++) {
|
49
|
+
ch = data[index];
|
50
|
+
if (ch === '_') continue;
|
51
|
+
if (ch !== '0' && ch !== '1') return false;
|
52
|
+
hasDigits = true;
|
53
|
+
}
|
54
|
+
return hasDigits && ch !== '_';
|
55
|
+
}
|
56
|
+
|
57
|
+
|
58
|
+
if (ch === 'x') {
|
59
|
+
// base 16
|
60
|
+
index++;
|
61
|
+
|
62
|
+
for (; index < max; index++) {
|
63
|
+
ch = data[index];
|
64
|
+
if (ch === '_') continue;
|
65
|
+
if (!isHexCode(data.charCodeAt(index))) return false;
|
66
|
+
hasDigits = true;
|
67
|
+
}
|
68
|
+
return hasDigits && ch !== '_';
|
69
|
+
}
|
70
|
+
|
71
|
+
// base 8
|
72
|
+
for (; index < max; index++) {
|
73
|
+
ch = data[index];
|
74
|
+
if (ch === '_') continue;
|
75
|
+
if (!isOctCode(data.charCodeAt(index))) return false;
|
76
|
+
hasDigits = true;
|
77
|
+
}
|
78
|
+
return hasDigits && ch !== '_';
|
79
|
+
}
|
80
|
+
|
81
|
+
// base 10 (except 0) or base 60
|
82
|
+
|
83
|
+
// value should not start with `_`;
|
84
|
+
if (ch === '_') return false;
|
85
|
+
|
86
|
+
for (; index < max; index++) {
|
87
|
+
ch = data[index];
|
88
|
+
if (ch === '_') continue;
|
89
|
+
if (ch === ':') break;
|
90
|
+
if (!isDecCode(data.charCodeAt(index))) {
|
91
|
+
return false;
|
92
|
+
}
|
93
|
+
hasDigits = true;
|
94
|
+
}
|
95
|
+
|
96
|
+
// Should have digits and should not end with `_`
|
97
|
+
if (!hasDigits || ch === '_') return false;
|
98
|
+
|
99
|
+
// if !base60 - done;
|
100
|
+
if (ch !== ':') return true;
|
101
|
+
|
102
|
+
// base60 almost not used, no needs to optimize
|
103
|
+
return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
|
104
|
+
}
|
105
|
+
|
106
|
+
function constructYamlInteger(data) {
|
107
|
+
var value = data, sign = 1, ch, base, digits = [];
|
108
|
+
|
109
|
+
if (value.indexOf('_') !== -1) {
|
110
|
+
value = value.replace(/_/g, '');
|
111
|
+
}
|
112
|
+
|
113
|
+
ch = value[0];
|
114
|
+
|
115
|
+
if (ch === '-' || ch === '+') {
|
116
|
+
if (ch === '-') sign = -1;
|
117
|
+
value = value.slice(1);
|
118
|
+
ch = value[0];
|
119
|
+
}
|
120
|
+
|
121
|
+
if (value === '0') return 0;
|
122
|
+
|
123
|
+
if (ch === '0') {
|
124
|
+
if (value[1] === 'b') return sign * parseInt(value.slice(2), 2);
|
125
|
+
if (value[1] === 'x') return sign * parseInt(value, 16);
|
126
|
+
return sign * parseInt(value, 8);
|
127
|
+
}
|
128
|
+
|
129
|
+
if (value.indexOf(':') !== -1) {
|
130
|
+
value.split(':').forEach(function (v) {
|
131
|
+
digits.unshift(parseInt(v, 10));
|
132
|
+
});
|
133
|
+
|
134
|
+
value = 0;
|
135
|
+
base = 1;
|
136
|
+
|
137
|
+
digits.forEach(function (d) {
|
138
|
+
value += (d * base);
|
139
|
+
base *= 60;
|
140
|
+
});
|
141
|
+
|
142
|
+
return sign * value;
|
143
|
+
|
144
|
+
}
|
145
|
+
|
146
|
+
return sign * parseInt(value, 10);
|
147
|
+
}
|
148
|
+
|
149
|
+
function isInteger(object) {
|
150
|
+
return (Object.prototype.toString.call(object)) === '[object Number]' &&
|
151
|
+
(object % 1 === 0 && !common.isNegativeZero(object));
|
152
|
+
}
|
153
|
+
|
154
|
+
module.exports = new Type('tag:yaml.org,2002:int', {
|
155
|
+
kind: 'scalar',
|
156
|
+
resolve: resolveYamlInteger,
|
157
|
+
construct: constructYamlInteger,
|
158
|
+
predicate: isInteger,
|
159
|
+
represent: {
|
160
|
+
binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); },
|
161
|
+
octal: function (obj) { return obj >= 0 ? '0' + obj.toString(8) : '-0' + obj.toString(8).slice(1); },
|
162
|
+
decimal: function (obj) { return obj.toString(10); },
|
163
|
+
/* eslint-disable max-len */
|
164
|
+
hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); }
|
165
|
+
},
|
166
|
+
defaultStyle: 'decimal',
|
167
|
+
styleAliases: {
|
168
|
+
binary: [ 2, 'bin' ],
|
169
|
+
octal: [ 8, 'oct' ],
|
170
|
+
decimal: [ 10, 'dec' ],
|
171
|
+
hexadecimal: [ 16, 'hex' ]
|
172
|
+
}
|
173
|
+
});
|
@@ -0,0 +1,93 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var esprima;
|
4
|
+
|
5
|
+
// Browserified version does not have esprima
|
6
|
+
//
|
7
|
+
// 1. For node.js just require module as deps
|
8
|
+
// 2. For browser try to require mudule via external AMD system.
|
9
|
+
// If not found - try to fallback to window.esprima. If not
|
10
|
+
// found too - then fail to parse.
|
11
|
+
//
|
12
|
+
try {
|
13
|
+
// workaround to exclude package from browserify list.
|
14
|
+
var _require = require;
|
15
|
+
esprima = _require('esprima');
|
16
|
+
} catch (_) {
|
17
|
+
/* eslint-disable no-redeclare */
|
18
|
+
/* global window */
|
19
|
+
if (typeof window !== 'undefined') esprima = window.esprima;
|
20
|
+
}
|
21
|
+
|
22
|
+
var Type = require('../../type');
|
23
|
+
|
24
|
+
function resolveJavascriptFunction(data) {
|
25
|
+
if (data === null) return false;
|
26
|
+
|
27
|
+
try {
|
28
|
+
var source = '(' + data + ')',
|
29
|
+
ast = esprima.parse(source, { range: true });
|
30
|
+
|
31
|
+
if (ast.type !== 'Program' ||
|
32
|
+
ast.body.length !== 1 ||
|
33
|
+
ast.body[0].type !== 'ExpressionStatement' ||
|
34
|
+
(ast.body[0].expression.type !== 'ArrowFunctionExpression' &&
|
35
|
+
ast.body[0].expression.type !== 'FunctionExpression')) {
|
36
|
+
return false;
|
37
|
+
}
|
38
|
+
|
39
|
+
return true;
|
40
|
+
} catch (err) {
|
41
|
+
return false;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
|
45
|
+
function constructJavascriptFunction(data) {
|
46
|
+
/*jslint evil:true*/
|
47
|
+
|
48
|
+
var source = '(' + data + ')',
|
49
|
+
ast = esprima.parse(source, { range: true }),
|
50
|
+
params = [],
|
51
|
+
body;
|
52
|
+
|
53
|
+
if (ast.type !== 'Program' ||
|
54
|
+
ast.body.length !== 1 ||
|
55
|
+
ast.body[0].type !== 'ExpressionStatement' ||
|
56
|
+
(ast.body[0].expression.type !== 'ArrowFunctionExpression' &&
|
57
|
+
ast.body[0].expression.type !== 'FunctionExpression')) {
|
58
|
+
throw new Error('Failed to resolve function');
|
59
|
+
}
|
60
|
+
|
61
|
+
ast.body[0].expression.params.forEach(function (param) {
|
62
|
+
params.push(param.name);
|
63
|
+
});
|
64
|
+
|
65
|
+
body = ast.body[0].expression.body.range;
|
66
|
+
|
67
|
+
// Esprima's ranges include the first '{' and the last '}' characters on
|
68
|
+
// function expressions. So cut them out.
|
69
|
+
if (ast.body[0].expression.body.type === 'BlockStatement') {
|
70
|
+
/*eslint-disable no-new-func*/
|
71
|
+
return new Function(params, source.slice(body[0] + 1, body[1] - 1));
|
72
|
+
}
|
73
|
+
// ES6 arrow functions can omit the BlockStatement. In that case, just return
|
74
|
+
// the body.
|
75
|
+
/*eslint-disable no-new-func*/
|
76
|
+
return new Function(params, 'return ' + source.slice(body[0], body[1]));
|
77
|
+
}
|
78
|
+
|
79
|
+
function representJavascriptFunction(object /*, style*/) {
|
80
|
+
return object.toString();
|
81
|
+
}
|
82
|
+
|
83
|
+
function isFunction(object) {
|
84
|
+
return Object.prototype.toString.call(object) === '[object Function]';
|
85
|
+
}
|
86
|
+
|
87
|
+
module.exports = new Type('tag:yaml.org,2002:js/function', {
|
88
|
+
kind: 'scalar',
|
89
|
+
resolve: resolveJavascriptFunction,
|
90
|
+
construct: constructJavascriptFunction,
|
91
|
+
predicate: isFunction,
|
92
|
+
represent: representJavascriptFunction
|
93
|
+
});
|
@@ -0,0 +1,60 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../../type');
|
4
|
+
|
5
|
+
function resolveJavascriptRegExp(data) {
|
6
|
+
if (data === null) return false;
|
7
|
+
if (data.length === 0) return false;
|
8
|
+
|
9
|
+
var regexp = data,
|
10
|
+
tail = /\/([gim]*)$/.exec(data),
|
11
|
+
modifiers = '';
|
12
|
+
|
13
|
+
// if regexp starts with '/' it can have modifiers and must be properly closed
|
14
|
+
// `/foo/gim` - modifiers tail can be maximum 3 chars
|
15
|
+
if (regexp[0] === '/') {
|
16
|
+
if (tail) modifiers = tail[1];
|
17
|
+
|
18
|
+
if (modifiers.length > 3) return false;
|
19
|
+
// if expression starts with /, is should be properly terminated
|
20
|
+
if (regexp[regexp.length - modifiers.length - 1] !== '/') return false;
|
21
|
+
}
|
22
|
+
|
23
|
+
return true;
|
24
|
+
}
|
25
|
+
|
26
|
+
function constructJavascriptRegExp(data) {
|
27
|
+
var regexp = data,
|
28
|
+
tail = /\/([gim]*)$/.exec(data),
|
29
|
+
modifiers = '';
|
30
|
+
|
31
|
+
// `/foo/gim` - tail can be maximum 4 chars
|
32
|
+
if (regexp[0] === '/') {
|
33
|
+
if (tail) modifiers = tail[1];
|
34
|
+
regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
|
35
|
+
}
|
36
|
+
|
37
|
+
return new RegExp(regexp, modifiers);
|
38
|
+
}
|
39
|
+
|
40
|
+
function representJavascriptRegExp(object /*, style*/) {
|
41
|
+
var result = '/' + object.source + '/';
|
42
|
+
|
43
|
+
if (object.global) result += 'g';
|
44
|
+
if (object.multiline) result += 'm';
|
45
|
+
if (object.ignoreCase) result += 'i';
|
46
|
+
|
47
|
+
return result;
|
48
|
+
}
|
49
|
+
|
50
|
+
function isRegExp(object) {
|
51
|
+
return Object.prototype.toString.call(object) === '[object RegExp]';
|
52
|
+
}
|
53
|
+
|
54
|
+
module.exports = new Type('tag:yaml.org,2002:js/regexp', {
|
55
|
+
kind: 'scalar',
|
56
|
+
resolve: resolveJavascriptRegExp,
|
57
|
+
construct: constructJavascriptRegExp,
|
58
|
+
predicate: isRegExp,
|
59
|
+
represent: representJavascriptRegExp
|
60
|
+
});
|
@@ -0,0 +1,28 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../../type');
|
4
|
+
|
5
|
+
function resolveJavascriptUndefined() {
|
6
|
+
return true;
|
7
|
+
}
|
8
|
+
|
9
|
+
function constructJavascriptUndefined() {
|
10
|
+
/*eslint-disable no-undefined*/
|
11
|
+
return undefined;
|
12
|
+
}
|
13
|
+
|
14
|
+
function representJavascriptUndefined() {
|
15
|
+
return '';
|
16
|
+
}
|
17
|
+
|
18
|
+
function isUndefined(object) {
|
19
|
+
return typeof object === 'undefined';
|
20
|
+
}
|
21
|
+
|
22
|
+
module.exports = new Type('tag:yaml.org,2002:js/undefined', {
|
23
|
+
kind: 'scalar',
|
24
|
+
resolve: resolveJavascriptUndefined,
|
25
|
+
construct: constructJavascriptUndefined,
|
26
|
+
predicate: isUndefined,
|
27
|
+
represent: representJavascriptUndefined
|
28
|
+
});
|
@@ -0,0 +1,34 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../type');
|
4
|
+
|
5
|
+
function resolveYamlNull(data) {
|
6
|
+
if (data === null) return true;
|
7
|
+
|
8
|
+
var max = data.length;
|
9
|
+
|
10
|
+
return (max === 1 && data === '~') ||
|
11
|
+
(max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
|
12
|
+
}
|
13
|
+
|
14
|
+
function constructYamlNull() {
|
15
|
+
return null;
|
16
|
+
}
|
17
|
+
|
18
|
+
function isNull(object) {
|
19
|
+
return object === null;
|
20
|
+
}
|
21
|
+
|
22
|
+
module.exports = new Type('tag:yaml.org,2002:null', {
|
23
|
+
kind: 'scalar',
|
24
|
+
resolve: resolveYamlNull,
|
25
|
+
construct: constructYamlNull,
|
26
|
+
predicate: isNull,
|
27
|
+
represent: {
|
28
|
+
canonical: function () { return '~'; },
|
29
|
+
lowercase: function () { return 'null'; },
|
30
|
+
uppercase: function () { return 'NULL'; },
|
31
|
+
camelcase: function () { return 'Null'; }
|
32
|
+
},
|
33
|
+
defaultStyle: 'lowercase'
|
34
|
+
});
|
@@ -0,0 +1,44 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../type');
|
4
|
+
|
5
|
+
var _hasOwnProperty = Object.prototype.hasOwnProperty;
|
6
|
+
var _toString = Object.prototype.toString;
|
7
|
+
|
8
|
+
function resolveYamlOmap(data) {
|
9
|
+
if (data === null) return true;
|
10
|
+
|
11
|
+
var objectKeys = [], index, length, pair, pairKey, pairHasKey,
|
12
|
+
object = data;
|
13
|
+
|
14
|
+
for (index = 0, length = object.length; index < length; index += 1) {
|
15
|
+
pair = object[index];
|
16
|
+
pairHasKey = false;
|
17
|
+
|
18
|
+
if (_toString.call(pair) !== '[object Object]') return false;
|
19
|
+
|
20
|
+
for (pairKey in pair) {
|
21
|
+
if (_hasOwnProperty.call(pair, pairKey)) {
|
22
|
+
if (!pairHasKey) pairHasKey = true;
|
23
|
+
else return false;
|
24
|
+
}
|
25
|
+
}
|
26
|
+
|
27
|
+
if (!pairHasKey) return false;
|
28
|
+
|
29
|
+
if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);
|
30
|
+
else return false;
|
31
|
+
}
|
32
|
+
|
33
|
+
return true;
|
34
|
+
}
|
35
|
+
|
36
|
+
function constructYamlOmap(data) {
|
37
|
+
return data !== null ? data : [];
|
38
|
+
}
|
39
|
+
|
40
|
+
module.exports = new Type('tag:yaml.org,2002:omap', {
|
41
|
+
kind: 'sequence',
|
42
|
+
resolve: resolveYamlOmap,
|
43
|
+
construct: constructYamlOmap
|
44
|
+
});
|
@@ -0,0 +1,53 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../type');
|
4
|
+
|
5
|
+
var _toString = Object.prototype.toString;
|
6
|
+
|
7
|
+
function resolveYamlPairs(data) {
|
8
|
+
if (data === null) return true;
|
9
|
+
|
10
|
+
var index, length, pair, keys, result,
|
11
|
+
object = data;
|
12
|
+
|
13
|
+
result = new Array(object.length);
|
14
|
+
|
15
|
+
for (index = 0, length = object.length; index < length; index += 1) {
|
16
|
+
pair = object[index];
|
17
|
+
|
18
|
+
if (_toString.call(pair) !== '[object Object]') return false;
|
19
|
+
|
20
|
+
keys = Object.keys(pair);
|
21
|
+
|
22
|
+
if (keys.length !== 1) return false;
|
23
|
+
|
24
|
+
result[index] = [ keys[0], pair[keys[0]] ];
|
25
|
+
}
|
26
|
+
|
27
|
+
return true;
|
28
|
+
}
|
29
|
+
|
30
|
+
function constructYamlPairs(data) {
|
31
|
+
if (data === null) return [];
|
32
|
+
|
33
|
+
var index, length, pair, keys, result,
|
34
|
+
object = data;
|
35
|
+
|
36
|
+
result = new Array(object.length);
|
37
|
+
|
38
|
+
for (index = 0, length = object.length; index < length; index += 1) {
|
39
|
+
pair = object[index];
|
40
|
+
|
41
|
+
keys = Object.keys(pair);
|
42
|
+
|
43
|
+
result[index] = [ keys[0], pair[keys[0]] ];
|
44
|
+
}
|
45
|
+
|
46
|
+
return result;
|
47
|
+
}
|
48
|
+
|
49
|
+
module.exports = new Type('tag:yaml.org,2002:pairs', {
|
50
|
+
kind: 'sequence',
|
51
|
+
resolve: resolveYamlPairs,
|
52
|
+
construct: constructYamlPairs
|
53
|
+
});
|
@@ -0,0 +1,29 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../type');
|
4
|
+
|
5
|
+
var _hasOwnProperty = Object.prototype.hasOwnProperty;
|
6
|
+
|
7
|
+
function resolveYamlSet(data) {
|
8
|
+
if (data === null) return true;
|
9
|
+
|
10
|
+
var key, object = data;
|
11
|
+
|
12
|
+
for (key in object) {
|
13
|
+
if (_hasOwnProperty.call(object, key)) {
|
14
|
+
if (object[key] !== null) return false;
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
18
|
+
return true;
|
19
|
+
}
|
20
|
+
|
21
|
+
function constructYamlSet(data) {
|
22
|
+
return data !== null ? data : {};
|
23
|
+
}
|
24
|
+
|
25
|
+
module.exports = new Type('tag:yaml.org,2002:set', {
|
26
|
+
kind: 'mapping',
|
27
|
+
resolve: resolveYamlSet,
|
28
|
+
construct: constructYamlSet
|
29
|
+
});
|
@@ -0,0 +1,88 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var Type = require('../type');
|
4
|
+
|
5
|
+
var YAML_DATE_REGEXP = new RegExp(
|
6
|
+
'^([0-9][0-9][0-9][0-9])' + // [1] year
|
7
|
+
'-([0-9][0-9])' + // [2] month
|
8
|
+
'-([0-9][0-9])$'); // [3] day
|
9
|
+
|
10
|
+
var YAML_TIMESTAMP_REGEXP = new RegExp(
|
11
|
+
'^([0-9][0-9][0-9][0-9])' + // [1] year
|
12
|
+
'-([0-9][0-9]?)' + // [2] month
|
13
|
+
'-([0-9][0-9]?)' + // [3] day
|
14
|
+
'(?:[Tt]|[ \\t]+)' + // ...
|
15
|
+
'([0-9][0-9]?)' + // [4] hour
|
16
|
+
':([0-9][0-9])' + // [5] minute
|
17
|
+
':([0-9][0-9])' + // [6] second
|
18
|
+
'(?:\\.([0-9]*))?' + // [7] fraction
|
19
|
+
'(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour
|
20
|
+
'(?::([0-9][0-9]))?))?$'); // [11] tz_minute
|
21
|
+
|
22
|
+
function resolveYamlTimestamp(data) {
|
23
|
+
if (data === null) return false;
|
24
|
+
if (YAML_DATE_REGEXP.exec(data) !== null) return true;
|
25
|
+
if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true;
|
26
|
+
return false;
|
27
|
+
}
|
28
|
+
|
29
|
+
function constructYamlTimestamp(data) {
|
30
|
+
var match, year, month, day, hour, minute, second, fraction = 0,
|
31
|
+
delta = null, tz_hour, tz_minute, date;
|
32
|
+
|
33
|
+
match = YAML_DATE_REGEXP.exec(data);
|
34
|
+
if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data);
|
35
|
+
|
36
|
+
if (match === null) throw new Error('Date resolve error');
|
37
|
+
|
38
|
+
// match: [1] year [2] month [3] day
|
39
|
+
|
40
|
+
year = +(match[1]);
|
41
|
+
month = +(match[2]) - 1; // JS month starts with 0
|
42
|
+
day = +(match[3]);
|
43
|
+
|
44
|
+
if (!match[4]) { // no hour
|
45
|
+
return new Date(Date.UTC(year, month, day));
|
46
|
+
}
|
47
|
+
|
48
|
+
// match: [4] hour [5] minute [6] second [7] fraction
|
49
|
+
|
50
|
+
hour = +(match[4]);
|
51
|
+
minute = +(match[5]);
|
52
|
+
second = +(match[6]);
|
53
|
+
|
54
|
+
if (match[7]) {
|
55
|
+
fraction = match[7].slice(0, 3);
|
56
|
+
while (fraction.length < 3) { // milli-seconds
|
57
|
+
fraction += '0';
|
58
|
+
}
|
59
|
+
fraction = +fraction;
|
60
|
+
}
|
61
|
+
|
62
|
+
// match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute
|
63
|
+
|
64
|
+
if (match[9]) {
|
65
|
+
tz_hour = +(match[10]);
|
66
|
+
tz_minute = +(match[11] || 0);
|
67
|
+
delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
|
68
|
+
if (match[9] === '-') delta = -delta;
|
69
|
+
}
|
70
|
+
|
71
|
+
date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
|
72
|
+
|
73
|
+
if (delta) date.setTime(date.getTime() - delta);
|
74
|
+
|
75
|
+
return date;
|
76
|
+
}
|
77
|
+
|
78
|
+
function representYamlTimestamp(object /*, style*/) {
|
79
|
+
return object.toISOString();
|
80
|
+
}
|
81
|
+
|
82
|
+
module.exports = new Type('tag:yaml.org,2002:timestamp', {
|
83
|
+
kind: 'scalar',
|
84
|
+
resolve: resolveYamlTimestamp,
|
85
|
+
construct: constructYamlTimestamp,
|
86
|
+
instanceOf: Date,
|
87
|
+
represent: representYamlTimestamp
|
88
|
+
});
|