├── .eslintignore ├── .eslintrc.yml ├── .gitattributes ├── .github └── ISSUE_TEMPLATE.md ├── .gitignore ├── .npmrc ├── .travis.yml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile.js ├── README.md ├── analyze-scope.js ├── package.json ├── parser.js ├── templates └── pr-create.md.ejs ├── tests ├── fixtures │ ├── basics │ │ ├── delete-expression.src.js │ │ ├── do-while-statements.src.js │ │ ├── identifiers-double-underscore.src.js │ │ ├── instanceof.src.js │ │ ├── new-with-member-expression.src.js │ │ ├── new-without-parens.src.js │ │ ├── typeof-expression.src.js │ │ ├── update-expression.src.js │ │ └── void-expression.src.js │ ├── comments │ │ ├── block-trailing-comment.src.js │ │ ├── comment-within-condition.src.js │ │ ├── export-default-anonymous-class.src.js │ │ ├── jsdoc-comment.src.js │ │ ├── jsx-block-comment.src.js │ │ ├── jsx-tag-comments.src.js │ │ ├── line-comment-with-block-syntax.src.js │ │ ├── mix-line-and-block-comments.src.js │ │ ├── no-comment-regex.src.js │ │ ├── no-comment-template.src.js │ │ ├── surrounding-call-comments.src.js │ │ ├── surrounding-debugger-comments.src.js │ │ ├── surrounding-return-comments.src.js │ │ ├── surrounding-throw-comments.src.js │ │ ├── surrounding-while-loop-comments.src.js │ │ ├── switch-fallthrough-comment-in-function.src.js │ │ ├── switch-fallthrough-comment.src.js │ │ ├── switch-no-default-comment-in-function.src.js │ │ ├── switch-no-default-comment-in-nested-functions.src.js │ │ ├── switch-no-default-comment.src.js │ │ └── template-string-block.src.js │ ├── ecma-features │ │ ├── arrowFunctions │ │ │ ├── as-param-with-params.src.js │ │ │ ├── as-param.src.js │ │ │ ├── basic-in-binary-expression.src.js │ │ │ ├── basic.src.js │ │ │ ├── block-body-not-object.src.js │ │ │ ├── block-body.src.js │ │ │ ├── error-dup-params.src.js │ │ │ ├── error-missing-paren.src.js │ │ │ ├── error-not-arrow.src.js │ │ │ ├── error-numeric-param-multi.src.js │ │ │ ├── error-numeric-param.src.js │ │ │ ├── error-reverse-arrow.src.js │ │ │ ├── error-strict-default-param-eval.src.js │ │ │ ├── error-strict-dup-params.src.js │ │ │ ├── error-strict-eval-return.src.js │ │ │ ├── error-strict-eval.src.js │ │ │ ├── error-strict-octal.src.js │ │ │ ├── error-strict-param-arguments.src.js │ │ │ ├── error-strict-param-eval.src.js │ │ │ ├── error-strict-param-names.src.js │ │ │ ├── error-strict-param-no-paren-arguments.src.js │ │ │ ├── error-strict-param-no-paren-eval.src.js │ │ │ ├── error-two-lines.src.js │ │ │ ├── error-wrapped-param.src.js │ │ │ ├── expression.src.js │ │ │ ├── iife.src.js │ │ │ ├── multiple-params.src.js │ │ │ ├── no-auto-return.src.js │ │ │ ├── not-strict-arguments.src.js │ │ │ ├── not-strict-eval-params.src.js │ │ │ ├── not-strict-eval.src.js │ │ │ ├── not-strict-octal.src.js │ │ │ ├── return-arrow-function.src.js │ │ │ ├── return-sequence.src.js │ │ │ ├── single-param-parens.src.js │ │ │ ├── single-param-return-identifier.src.js │ │ │ └── single-param.src.js │ │ ├── bigIntLiterals │ │ │ ├── binary.src.js │ │ │ ├── decimal.src.js │ │ │ ├── hex.src.js │ │ │ └── octal.src.js │ │ ├── binaryLiterals │ │ │ ├── invalid.src.js │ │ │ ├── lowercase.src.js │ │ │ └── uppercase.src.js │ │ ├── blockBindings │ │ │ ├── const.src.js │ │ │ ├── let-in-switchcase.src.js │ │ │ └── let.src.js │ │ ├── classes │ │ │ ├── class-accessor-properties.src.js │ │ │ ├── class-computed-static-method.src.js │ │ │ ├── class-expression.src.js │ │ │ ├── class-method-named-prototype.src.js │ │ │ ├── class-method-named-static.src.js │ │ │ ├── class-method-named-with-space.src.js │ │ │ ├── class-one-method-super.src.js │ │ │ ├── class-one-method.src.js │ │ │ ├── class-static-method-named-prototype.src.js │ │ │ ├── class-static-method-named-static.src.js │ │ │ ├── class-static-method.src.js │ │ │ ├── class-static-methods-and-accessor-properties.src.js │ │ │ ├── class-two-computed-static-methods.src.js │ │ │ ├── class-two-methods-computed-constructor.src.js │ │ │ ├── class-two-methods-semi.src.js │ │ │ ├── class-two-methods-three-semi.src.js │ │ │ ├── class-two-methods-two-semi.src.js │ │ │ ├── class-two-methods.src.js │ │ │ ├── class-two-static-methods-named-constructor.src.js │ │ │ ├── class-with-constructor-parameters.src.js │ │ │ ├── class-with-constructor-with-space.src.js │ │ │ ├── class-with-constructor.src.js │ │ │ ├── derived-class-assign-to-var.src.js │ │ │ ├── derived-class-expression.src.js │ │ │ ├── empty-class-double-semi.src.js │ │ │ ├── empty-class-semi.src.js │ │ │ ├── empty-class.src.js │ │ │ ├── empty-literal-derived-class.src.js │ │ │ ├── invalid-class-declaration.src.js │ │ │ ├── invalid-class-setter-declaration.src.js │ │ │ ├── invalid-class-two-super-classes.src.js │ │ │ ├── named-class-expression.src.js │ │ │ └── named-derived-class-expression.src.js │ │ ├── defaultParams │ │ │ ├── class-constructor.src.js │ │ │ ├── class-method.src.js │ │ │ ├── declaration.src.js │ │ │ ├── expression.src.js │ │ │ ├── method.src.js │ │ │ └── not-all-params.src.js │ │ ├── destructuring-and-arrowFunctions │ │ │ ├── arrow-param-array.src.js │ │ │ ├── arrow-param-nested-array.src.js │ │ │ ├── arrow-param-nested-object-named.src.js │ │ │ ├── arrow-param-nested-object.src.js │ │ │ ├── arrow-param-object.src.js │ │ │ ├── param-defaults-array.src.js │ │ │ ├── param-defaults-object-nested.src.js │ │ │ └── param-defaults-object.src.js │ │ ├── destructuring-and-blockBindings │ │ │ ├── array-const-undefined.src.js │ │ │ ├── array-let-undefined.src.js │ │ │ ├── object-const-named.src.js │ │ │ ├── object-const-undefined.src.js │ │ │ ├── object-let-named.src.js │ │ │ └── object-let-undefined.src.js │ │ ├── destructuring-and-defaultParams │ │ │ ├── param-array.src.js │ │ │ ├── param-object-short.src.js │ │ │ ├── param-object-wrapped.src.xjs │ │ │ └── param-object.src.js │ │ ├── destructuring-and-forOf │ │ │ └── loop.src.js │ │ ├── destructuring-and-spread │ │ │ ├── complex-destructured.src.js │ │ │ ├── destructured-array-literal.src.js │ │ │ ├── destructuring-param.src.js │ │ │ ├── error-complex-destructured-spread-first.src.js │ │ │ ├── invalid-not-final-array-empty.src.xjs │ │ │ ├── multi-destructured.src.js │ │ │ ├── not-final-array.src.xjs │ │ │ ├── single-destructured.src.js │ │ │ ├── var-complex-destructured.src.js │ │ │ ├── var-destructured-array-literal.src.js │ │ │ ├── var-multi-destructured.src.js │ │ │ └── var-single-destructured.src.js │ │ ├── destructuring │ │ │ ├── array-member.src.js │ │ │ ├── array-to-array.src.js │ │ │ ├── array-var-undefined.src.js │ │ │ ├── class-constructor-params-array.src.js │ │ │ ├── class-constructor-params-defaults-array.src.js │ │ │ ├── class-constructor-params-defaults-object.src.js │ │ │ ├── class-constructor-params-object.src.js │ │ │ ├── class-method-params-array.src.js │ │ │ ├── class-method-params-defaults-array.src.js │ │ │ ├── class-method-params-defaults-object.src.js │ │ │ ├── class-method-params-object.src.js │ │ │ ├── defaults-array-all.src.js │ │ │ ├── defaults-array-longform-nested-multi.src.js │ │ │ ├── defaults-array-multi.src.js │ │ │ ├── defaults-array-nested-all.src.js │ │ │ ├── defaults-array-nested-multi.src.js │ │ │ ├── defaults-array.src.js │ │ │ ├── defaults-object-all.src.js │ │ │ ├── defaults-object-longform-all.src.js │ │ │ ├── defaults-object-longform-multi.src.js │ │ │ ├── defaults-object-longform.src.js │ │ │ ├── defaults-object-mixed-multi.src.js │ │ │ ├── defaults-object-multi.src.js │ │ │ ├── defaults-object-nested-all.src.js │ │ │ ├── defaults-object-nested-multi.src.js │ │ │ ├── defaults-object.src.js │ │ │ ├── destructured-array-catch.src.js │ │ │ ├── destructured-object-catch.src.js │ │ │ ├── invalid-defaults-object-assign.src.js │ │ │ ├── named-param.src.js │ │ │ ├── nested-array.src.js │ │ │ ├── nested-object.src.js │ │ │ ├── object-var-named.src.js │ │ │ ├── object-var-undefined.src.js │ │ │ ├── param-defaults-array.src.js │ │ │ ├── param-defaults-object-nested.src.js │ │ │ ├── param-defaults-object.src.js │ │ │ ├── params-array-wrapped.src.js │ │ │ ├── params-array.src.js │ │ │ ├── params-multi-object.src.js │ │ │ ├── params-nested-array.src.js │ │ │ ├── params-nested-object.src.js │ │ │ ├── params-object-wrapped.src.js │ │ │ ├── params-object.src.js │ │ │ └── sparse-array.src.js │ │ ├── experimentalAsyncIteration │ │ │ ├── async-generators.src.js │ │ │ └── async-iterator.src.js │ │ ├── experimentalDynamicImport │ │ │ └── dynamic-import.src.js │ │ ├── experimentalObjectRestSpread │ │ │ ├── arg-spread.src.js │ │ │ ├── destructuring-assign-mirror.src.js │ │ │ ├── function-parameter-object-spread.src.js │ │ │ ├── invalid-rest-trailing-comma.src.js │ │ │ ├── invalid-rest.src.js │ │ │ ├── object-rest.src.js │ │ │ ├── property-spread.src.js │ │ │ ├── shorthand-method-args.src.js │ │ │ ├── shorthand-methods.src.js │ │ │ ├── shorthand-properties.src.js │ │ │ ├── single-spread.src.js │ │ │ ├── spread-trailing-comma.src.js │ │ │ └── two-spread.src.js │ │ ├── experimentalOptionalCatchBinding │ │ │ ├── optional-catch-binding-finally.src.js │ │ │ └── optional-catch-binding.src.js │ │ ├── exponentiationOperators │ │ │ └── exponential-operators.src.js │ │ ├── forOf │ │ │ ├── for-of-with-function-initializer.src.js │ │ │ ├── for-of-with-var-and-braces.src.js │ │ │ ├── for-of-with-var-and-no-braces.src.js │ │ │ ├── invalid-for-of-with-const-and-no-braces.src.js │ │ │ └── invalid-for-of-with-let-and-no-braces.src.js │ │ ├── generators │ │ │ ├── anonymous-generator.src.js │ │ │ ├── async-generator-function.src.js │ │ │ ├── async-generator-method.src.js │ │ │ ├── double-yield.src.js │ │ │ ├── empty-generator-declaration.src.js │ │ │ ├── generator-declaration.src.js │ │ │ ├── yield-delegation.src.js │ │ │ ├── yield-without-value-in-call.src.js │ │ │ ├── yield-without-value-no-semi.src.js │ │ │ └── yield-without-value.src.js │ │ ├── globalReturn │ │ │ ├── return-identifier.src.js │ │ │ ├── return-no-arg.src.js │ │ │ └── return-true.src.js │ │ ├── importMeta │ │ │ └── simple-import-meta.src.js │ │ ├── modules │ │ │ ├── error-delete.src.js │ │ │ ├── error-function.src.js │ │ │ ├── error-strict.src.js │ │ │ ├── export-default-array.src.js │ │ │ ├── export-default-class.src.js │ │ │ ├── export-default-expression.src.js │ │ │ ├── export-default-function.src.js │ │ │ ├── export-default-named-class.src.js │ │ │ ├── export-default-named-function.src.js │ │ │ ├── export-default-number.src.js │ │ │ ├── export-default-object.src.js │ │ │ ├── export-default-value.src.js │ │ │ ├── export-from-batch.src.js │ │ │ ├── export-from-default.src.js │ │ │ ├── export-from-named-as-default.src.js │ │ │ ├── export-from-named-as-specifier.src.js │ │ │ ├── export-from-named-as-specifiers.src.js │ │ │ ├── export-from-specifier.src.js │ │ │ ├── export-from-specifiers.src.js │ │ │ ├── export-function.src.js │ │ │ ├── export-named-as-default.src.js │ │ │ ├── export-named-as-specifier.src.js │ │ │ ├── export-named-as-specifiers.src.js │ │ │ ├── export-named-class.src.js │ │ │ ├── export-named-empty.src.js │ │ │ ├── export-named-specifier.src.js │ │ │ ├── export-named-specifiers-comma.src.js │ │ │ ├── export-named-specifiers.src.js │ │ │ ├── export-var-anonymous-function.src.js │ │ │ ├── export-var-number.src.js │ │ │ ├── export-var.src.js │ │ │ ├── import-default-and-named-specifiers.src.js │ │ │ ├── import-default-and-namespace-specifiers.src.js │ │ │ ├── import-default-as.src.js │ │ │ ├── import-default.src.js │ │ │ ├── import-jquery.src.js │ │ │ ├── import-module.src.js │ │ │ ├── import-named-as-specifier.src.js │ │ │ ├── import-named-as-specifiers.src.js │ │ │ ├── import-named-empty.src.js │ │ │ ├── import-named-specifier.src.js │ │ │ ├── import-named-specifiers-comma.src.js │ │ │ ├── import-named-specifiers.src.js │ │ │ ├── import-namespace-specifier.src.js │ │ │ ├── import-null-as-nil.src.js │ │ │ ├── invalid-await.src.js │ │ │ ├── invalid-class.src.js │ │ │ ├── invalid-export-batch-missing-from-clause.src.js │ │ │ ├── invalid-export-batch-token.src.js │ │ │ ├── invalid-export-default-equal.src.js │ │ │ ├── invalid-export-default-token.src.js │ │ │ ├── invalid-export-default.src.js │ │ │ ├── invalid-export-named-default.src.js │ │ │ ├── invalid-export-named-extra-comma.src.js │ │ │ ├── invalid-export-named-middle-comma.src.js │ │ │ ├── invalid-import-default-after-named-after-default.src.js │ │ │ ├── invalid-import-default-after-named.src.js │ │ │ ├── invalid-import-default-missing-module-specifier.src.js │ │ │ ├── invalid-import-default-module-specifier.src.js │ │ │ ├── invalid-import-default.src.js │ │ │ ├── invalid-import-missing-module-specifier.src.js │ │ │ ├── invalid-import-module-specifier.src.js │ │ │ ├── invalid-import-named-after-named.src.js │ │ │ ├── invalid-import-named-after-namespace.src.js │ │ │ ├── invalid-import-named-as-missing-from.src.js │ │ │ ├── invalid-import-named-extra-comma.src.js │ │ │ ├── invalid-import-named-middle-comma.src.js │ │ │ ├── invalid-import-namespace-after-named.src.js │ │ │ └── invalid-import-namespace-missing-as.src.js │ │ ├── newTarget │ │ │ ├── invalid-new-target.src.js │ │ │ ├── invalid-unknown-property.src.js │ │ │ └── simple-new-target.src.js │ │ ├── objectLiteralComputedProperties │ │ │ ├── computed-addition-property.src.js │ │ │ ├── computed-and-identifier.src.js │ │ │ ├── computed-getter-and-setter.src.js │ │ │ ├── computed-string-property.src.js │ │ │ ├── computed-variable-property.src.js │ │ │ ├── invalid-computed-variable-property.src.js │ │ │ ├── invalid-standalone-computed-variable-property.src.js │ │ │ ├── standalone-expression-with-addition.src.js │ │ │ ├── standalone-expression-with-method.src.js │ │ │ └── standalone-expression.src.js │ │ ├── objectLiteralDuplicateProperties │ │ │ ├── error-proto-property.src.js │ │ │ ├── error-proto-string-property.src.js │ │ │ ├── strict-duplicate-properties.src.js │ │ │ └── strict-duplicate-string-properties.src.js │ │ ├── objectLiteralShorthandMethods │ │ │ ├── invalid-method-no-braces.src.js │ │ │ ├── method-property.src.js │ │ │ ├── simple-method-named-get.src.js │ │ │ ├── simple-method-named-set.src.js │ │ │ ├── simple-method-with-argument.src.js │ │ │ ├── simple-method-with-string-name.src.js │ │ │ ├── simple-method.src.js │ │ │ └── string-name-method-property.src.js │ │ ├── objectLiteralShorthandProperties │ │ │ └── shorthand-properties.src.js │ │ ├── octalLiterals │ │ │ ├── invalid.src.js │ │ │ ├── lowercase.src.js │ │ │ ├── strict-uppercase.src.js │ │ │ └── uppercase.src.js │ │ ├── regex │ │ │ └── regexp-simple.src.js │ │ ├── regexUFlag │ │ │ ├── regex-u-extended-escape.src.js │ │ │ ├── regex-u-invalid-extended-escape.src.js │ │ │ └── regex-u-simple.src.js │ │ ├── regexYFlag │ │ │ └── regexp-y-simple.src.js │ │ ├── restParams │ │ │ ├── basic-rest.src.js │ │ │ ├── class-constructor.src.js │ │ │ ├── class-method.src.js │ │ │ ├── error-no-default.src.js │ │ │ ├── error-not-last.src.js │ │ │ ├── func-expression-multi.src.js │ │ │ ├── func-expression.src.js │ │ │ ├── invalid-rest-param.src.js │ │ │ └── single-rest.src.js │ │ ├── spread │ │ │ ├── error-invalid-if.src.js │ │ │ ├── error-invalid-sequence.src.js │ │ │ ├── multi-function-call.src.js │ │ │ ├── not-final-param.src.js │ │ │ └── simple-function-call.src.js │ │ ├── templateStrings │ │ │ ├── deeply-nested.src.js │ │ │ ├── error-octal-literal.src.js │ │ │ ├── escape-characters.src.js │ │ │ ├── expressions.src.js │ │ │ ├── multi-line-template-string.src.js │ │ │ ├── simple-template-string.src.js │ │ │ ├── single-dollar-sign.src.js │ │ │ ├── tagged-no-placeholders.src.js │ │ │ └── tagged-template-string.src.js │ │ └── unicodeCodePointEscapes │ │ │ ├── basic-string-literal.src.js │ │ │ ├── complex-string-literal.src.js │ │ │ ├── invalid-empty-escape.src.js │ │ │ └── invalid-too-large-escape.src.js │ ├── jsx-useJSXTextNode │ │ ├── self-closing-tag-inside-tag.src.js │ │ └── test-content.src.js │ ├── jsx │ │ ├── attributes.src.js │ │ ├── element-keyword-name.src.js │ │ ├── embedded-comment.src.js │ │ ├── embedded-conditional.src.js │ │ ├── embedded-invalid-js-identifier.src.js │ │ ├── embedded-tags.src.js │ │ ├── empty-placeholder.src.js │ │ ├── escape-patterns.src.js │ │ ├── invalid-attribute-missing-equals.src.js │ │ ├── invalid-attribute.src.js │ │ ├── invalid-broken-tag.src.js │ │ ├── invalid-computed-end-tag-name.src.js │ │ ├── invalid-computed-string-end-tag-name.src.js │ │ ├── invalid-embedded-expression.src.js │ │ ├── invalid-leading-dot-tag-name.src.js │ │ ├── invalid-matching-placeholder-in-closing-tag.src.js │ │ ├── invalid-mismatched-closing-tag.src.js │ │ ├── invalid-mismatched-closing-tags.src.js │ │ ├── invalid-mismatched-dot-tag-name.src.js │ │ ├── invalid-mismatched-namespace-tag.src.js │ │ ├── invalid-missing-closing-tag-attribute-placeholder.src.js │ │ ├── invalid-missing-closing-tag.src.js │ │ ├── invalid-missing-namespace-name.src.js │ │ ├── invalid-missing-namespace-value.src.js │ │ ├── invalid-missing-spread-operator.src.js │ │ ├── invalid-namespace-name-with-docts.src.js │ │ ├── invalid-namespace-value-with-dots.src.js │ │ ├── invalid-no-common-parent-with-comment.src.js │ │ ├── invalid-no-common-parent.src.js │ │ ├── invalid-no-tag-name.src.js │ │ ├── invalid-placeholder-in-closing-tag.src.js │ │ ├── invalid-trailing-dot-tag-name.src.js │ │ ├── invalid-unexpected-comma.src.js │ │ ├── japanese-characters.src.js │ │ ├── less-than-operator.src.js │ │ ├── member-expression-this.src.js │ │ ├── member-expression.src.js │ │ ├── multiple-blank-spaces.src.js │ │ ├── namespaced-attribute-and-value-inserted.src.js │ │ ├── namespaced-name-and-attribute.src.js │ │ ├── newslines-and-entities.src.js │ │ ├── self-closing-tag-inside-tag.src.js │ │ ├── self-closing-tag-with-newline.src.js │ │ ├── self-closing-tag.src.js │ │ ├── spread-child.src.js │ │ ├── spread-operator-attribute-and-regular-attribute.src.js │ │ ├── spread-operator-attributes.src.js │ │ ├── tag-names-with-dots.src.js │ │ ├── tag-names-with-multi-dots.src.js │ │ ├── test-content.src.js │ │ ├── trailing-spread-operator-attribute.src.js │ │ └── unknown-escape-pattern.src.js │ ├── scope-analysis │ │ ├── 535.ts │ │ ├── abstract-class.ts │ │ ├── class-implements.ts │ │ ├── class-properties.ts │ │ ├── class-supper-type.ts │ │ ├── computed-properties-in-interface.ts │ │ ├── computed-properties-in-type.ts │ │ ├── declare-function.ts │ │ ├── declare-global.ts │ │ ├── declare-module.ts │ │ ├── decorators.ts │ │ ├── enum-string.ts │ │ ├── enum.ts │ │ ├── export-as-namespace.ts │ │ ├── expression-as.ts │ │ ├── expression-type-parameters.ts │ │ ├── function-overload-2.ts │ │ ├── function-overload.ts │ │ ├── identifier-decorators.ts │ │ ├── ignore-type-only-stuff.ts │ │ ├── import-equals.ts │ │ ├── interface-type.ts │ │ ├── method-overload.ts │ │ ├── namespace.ts │ │ ├── rest-element.ts │ │ ├── type-alias.ts │ │ ├── type-annotations.ts │ │ ├── type-assertions.ts │ │ ├── type-parameter.ts │ │ ├── typeof-in-assertions.ts │ │ ├── typeof-in-call-signature.ts │ │ ├── typeof-in-return-type.ts │ │ ├── typeof-in-type-parameters.ts │ │ ├── typeof-in-var.ts │ │ ├── typeof.ts │ │ ├── types-array-type.src.ts │ │ ├── types-conditional-with-null.src.ts │ │ ├── types-conditional.src.ts │ │ ├── types-indexed.src.ts │ │ ├── types-infer.ts │ │ ├── types-intersection-type.src.ts │ │ ├── types-mapped-readonly-minus.src.ts │ │ ├── types-mapped-readonly-plus.src.ts │ │ ├── types-mapped-readonly.src.ts │ │ ├── types-mapped.src.ts │ │ ├── types-nested-types.src.ts │ │ ├── types-parenthesized-type.src.ts │ │ ├── types-reference-generic-nested.src.ts │ │ ├── types-reference-generic.src.ts │ │ ├── types-reference.src.ts │ │ ├── types-tuple-empty.src.ts │ │ ├── types-tuple-optional.src.ts │ │ ├── types-tuple-rest.src.ts │ │ ├── types-tuple-type.src.ts │ │ ├── types-tuple.src.ts │ │ ├── types-type-literal.src.ts │ │ ├── types-type-operator.src.ts │ │ ├── types-typeof.src.ts │ │ ├── types-union-intersection.src.ts │ │ └── types-union-type.src.ts │ ├── tsx │ │ ├── generic-jsx-element.src.tsx │ │ └── react-typed-props.src.tsx │ └── typescript │ │ ├── babylon-convergence │ │ ├── type-parameter-whitespace-loc.src.ts │ │ └── type-parameters.src.ts │ │ ├── basics │ │ ├── abstract-class-with-abstract-constructor.src.ts │ │ ├── abstract-class-with-abstract-method.src.ts │ │ ├── abstract-class-with-abstract-properties.src.ts │ │ ├── abstract-class-with-abstract-readonly-property.src.ts │ │ ├── abstract-class-with-optional-method.src.ts │ │ ├── abstract-interface.src.ts │ │ ├── arrow-function-with-type-parameters.src.ts │ │ ├── async-function-expression.src.ts │ │ ├── async-function-with-var-declaration.src.ts │ │ ├── class-with-accessibility-modifiers.src.ts │ │ ├── class-with-definite-assignment.src.ts │ │ ├── class-with-export-parameter-properties.src.ts │ │ ├── class-with-extends-and-implements.src.ts │ │ ├── class-with-extends-generic-multiple.src.ts │ │ ├── class-with-extends-generic.src.ts │ │ ├── class-with-generic-method-default.src.ts │ │ ├── class-with-generic-method.src.ts │ │ ├── class-with-implements-and-extends.src.ts │ │ ├── class-with-implements-generic-multiple.src.ts │ │ ├── class-with-implements-generic.src.ts │ │ ├── class-with-implements.src.ts │ │ ├── class-with-mixin.src.ts │ │ ├── class-with-optional-computed-property.src.ts │ │ ├── class-with-optional-methods.src.ts │ │ ├── class-with-optional-properties.src.ts │ │ ├── class-with-optional-property-undefined.src.ts │ │ ├── class-with-private-parameter-properties.src.ts │ │ ├── class-with-protected-parameter-properties.src.ts │ │ ├── class-with-public-parameter-properties.src.ts │ │ ├── class-with-readonly-parameter-properties.src.ts │ │ ├── class-with-readonly-property.src.ts │ │ ├── class-with-static-parameter-properties.src.ts │ │ ├── class-with-type-parameter-default.src.ts │ │ ├── class-with-type-parameter-underscore.src.ts │ │ ├── class-with-type-parameter.src.ts │ │ ├── const-enum.src.ts │ │ ├── declare-class-with-optional-method.src.ts │ │ ├── declare-function.src.ts │ │ ├── destructuring-assignment.src.ts │ │ ├── export-assignment.src.ts │ │ ├── export-default-anonymous-function.src.ts │ │ ├── export-default-class-with-generic.src.ts │ │ ├── export-default-class-with-multiple-generics.src.ts │ │ ├── export-named-class-with-generic.src.ts │ │ ├── export-named-class-with-multiple-generics.src.ts │ │ ├── export-named-enum.src.ts │ │ ├── export-type-alias-declaration.src.ts │ │ ├── export-type-class-declaration.src.ts │ │ ├── export-type-function-declaration.src.ts │ │ ├── function-with-await.src.ts │ │ ├── function-with-object-type-with-optional-properties.src.ts │ │ ├── function-with-object-type-without-annotation.src.ts │ │ ├── function-with-type-parameters-that-have-comments.src.ts │ │ ├── function-with-type-parameters-with-constraint.src.ts │ │ ├── function-with-type-parameters.src.ts │ │ ├── function-with-types-assignation.src.ts │ │ ├── function-with-types.src.ts │ │ ├── import-type-with-type-parameters-in-type-reference.src.ts │ │ ├── import-type.src.ts │ │ ├── interface-extends-multiple.src.ts │ │ ├── interface-extends.src.ts │ │ ├── interface-type-parameters.src.ts │ │ ├── interface-with-all-property-types.src.ts │ │ ├── interface-with-construct-signature-with-parameter-accessibility.src.ts │ │ ├── interface-with-extends-type-parameters.src.ts │ │ ├── interface-with-generic.src.ts │ │ ├── interface-with-jsdoc.src.ts │ │ ├── interface-with-optional-properties.src.ts │ │ ├── interface-without-type-annotation.src.ts │ │ ├── keyof-operator.src.ts │ │ ├── nested-type-arguments.src.ts │ │ ├── never-type-param.src.ts │ │ ├── non-null-assertion-operator.src.ts │ │ ├── null-and-undefined-type-annotations.src.ts │ │ ├── object-with-escaped-properties.src.ts │ │ ├── symbol-type-param.src.ts │ │ ├── type-alias-declaration-with-constrained-type-parameter.src.ts │ │ ├── type-alias-declaration.src.ts │ │ ├── type-alias-object-without-annotation.src.ts │ │ ├── type-guard.src.ts │ │ ├── type-parameters-comments.src.ts │ │ ├── type-reference-comments.src.ts │ │ ├── typed-this.src.ts │ │ ├── unique-symbol.src.ts │ │ ├── var-with-definite-assignment.src.ts │ │ ├── var-with-dotted-type.src.ts │ │ ├── var-with-type.src.ts │ │ └── variable-declaration-type-annotation-spacing.src.ts │ │ ├── decorators │ │ ├── accessor-decorators │ │ │ ├── accessor-decorator-factory-instance-member.src.ts │ │ │ ├── accessor-decorator-factory-static-member.src.ts │ │ │ ├── accessor-decorator-instance-member.src.ts │ │ │ └── accessor-decorator-static-member.src.ts │ │ ├── class-decorators │ │ │ ├── class-decorator-factory.src.ts │ │ │ └── class-decorator.src.ts │ │ ├── method-decorators │ │ │ ├── method-decorator-factory-instance-member.src.ts │ │ │ ├── method-decorator-factory-static-member.src.ts │ │ │ ├── method-decorator-instance-member.src.ts │ │ │ └── method-decorator-static-member.src.ts │ │ ├── parameter-decorators │ │ │ ├── parameter-decorator-constructor.src.ts │ │ │ ├── parameter-decorator-decorator-instance-member.src.ts │ │ │ ├── parameter-decorator-decorator-static-member.src.ts │ │ │ ├── parameter-decorator-instance-member.src.ts │ │ │ └── parameter-decorator-static-member.src.ts │ │ └── property-decorators │ │ │ ├── property-decorator-factory-instance-member.src.ts │ │ │ ├── property-decorator-factory-static-member.src.ts │ │ │ ├── property-decorator-instance-member.src.ts │ │ │ └── property-decorator-static-member.src.ts │ │ ├── errorRecovery │ │ ├── class-empty-extends-implements.src.ts │ │ ├── class-empty-extends.src.ts │ │ ├── class-extends-empty-implements.src.ts │ │ ├── decorator-on-enum-declaration.src.ts │ │ ├── decorator-on-interface-declaration.src.ts │ │ ├── empty-type-arguments.src.ts │ │ ├── enum-with-keywords.src.ts │ │ ├── interface-empty-extends.src.ts │ │ └── interface-property-modifiers.src.ts │ │ ├── expressions │ │ ├── call-expression-type-arguments.src.ts │ │ ├── new-expression-type-arguments.src.ts │ │ └── tagged-template-expression-type-arguments.src.ts │ │ └── namespaces-and-modules │ │ ├── ambient-module-declaration-with-import.src.ts │ │ ├── declare-namespace-with-exported-function.src.ts │ │ ├── module-with-default-exports.src.ts │ │ ├── nested-internal-module.src.ts │ │ └── shorthand-ambient-module-declaration.src.ts ├── integration │ ├── declared-empty-body-functions-issue-162 │ │ ├── .eslintrc.yml │ │ ├── Dockerfile │ │ ├── expected-lint-output.json │ │ ├── index.ts │ │ └── package.json │ ├── docker-compose.yml │ ├── jsdoc-indent-issues-344-422 │ │ ├── .eslintrc.yml │ │ ├── Dockerfile │ │ ├── expected-lint-output.json │ │ ├── index.ts │ │ └── package.json │ ├── method-overloads-issue-389 │ │ ├── .eslintrc.yml │ │ ├── Dockerfile │ │ ├── expected-lint-output.json │ │ ├── index.ts │ │ └── package.json │ ├── no-redeclare-overloaded-functions-issue-402 │ │ ├── .eslintrc.yml │ │ ├── Dockerfile │ │ ├── expected-lint-output.json │ │ ├── index.ts │ │ └── package.json │ └── range-error-indent-issue-333 │ │ ├── .eslintrc.yml │ │ ├── Dockerfile │ │ ├── expected-lint-output.json │ │ ├── index.ts │ │ └── package.json ├── jsx-known-issues.js └── lib │ ├── .eslintrc.yml │ ├── __snapshots__ │ ├── basics.js.snap │ ├── comments.js.snap │ ├── ecma-features.js.snap │ ├── jsx.js.snap │ ├── scope-analysis.js.snap │ ├── tsx.js.snap │ └── typescript.js.snap │ ├── basics.js │ ├── comments.js │ ├── ecma-features.js │ ├── jsx.js │ ├── scope-analysis.js │ ├── tsx.js │ └── typescript.js ├── tools └── test-utils.js └── visitor-keys.js /.eslintignore: -------------------------------------------------------------------------------- 1 | tests/integration/* -------------------------------------------------------------------------------- /.eslintrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/.eslintrc.yml -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/.github/ISSUE_TEMPLATE.md -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | package-lock=false -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/.travis.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/Makefile.js -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/README.md -------------------------------------------------------------------------------- /analyze-scope.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/analyze-scope.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/package.json -------------------------------------------------------------------------------- /parser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/parser.js -------------------------------------------------------------------------------- /templates/pr-create.md.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/templates/pr-create.md.ejs -------------------------------------------------------------------------------- /tests/fixtures/basics/delete-expression.src.js: -------------------------------------------------------------------------------- 1 | delete foo.bar; 2 | -------------------------------------------------------------------------------- /tests/fixtures/basics/do-while-statements.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/basics/do-while-statements.src.js -------------------------------------------------------------------------------- /tests/fixtures/basics/identifiers-double-underscore.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/basics/identifiers-double-underscore.src.js -------------------------------------------------------------------------------- /tests/fixtures/basics/instanceof.src.js: -------------------------------------------------------------------------------- 1 | '' instanceof Set -------------------------------------------------------------------------------- /tests/fixtures/basics/new-with-member-expression.src.js: -------------------------------------------------------------------------------- 1 | new foo.bar(); 2 | -------------------------------------------------------------------------------- /tests/fixtures/basics/new-without-parens.src.js: -------------------------------------------------------------------------------- 1 | function X () {} 2 | new X; -------------------------------------------------------------------------------- /tests/fixtures/basics/typeof-expression.src.js: -------------------------------------------------------------------------------- 1 | typeof 'str' 2 | -------------------------------------------------------------------------------- /tests/fixtures/basics/update-expression.src.js: -------------------------------------------------------------------------------- 1 | var i = 0; 2 | function f() { 3 | i++; 4 | } 5 | f(); -------------------------------------------------------------------------------- /tests/fixtures/basics/void-expression.src.js: -------------------------------------------------------------------------------- 1 | void 4; 2 | void(3); 3 | -------------------------------------------------------------------------------- /tests/fixtures/comments/block-trailing-comment.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/block-trailing-comment.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/comment-within-condition.src.js: -------------------------------------------------------------------------------- 1 | /* foo */ 2 | if (/* bar */ a) {} 3 | -------------------------------------------------------------------------------- /tests/fixtures/comments/export-default-anonymous-class.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/export-default-anonymous-class.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/jsdoc-comment.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/jsdoc-comment.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/jsx-block-comment.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/jsx-block-comment.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/jsx-tag-comments.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/jsx-tag-comments.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/line-comment-with-block-syntax.src.js: -------------------------------------------------------------------------------- 1 | // /*test*/ 2 | -------------------------------------------------------------------------------- /tests/fixtures/comments/mix-line-and-block-comments.src.js: -------------------------------------------------------------------------------- 1 | //foo 2 | var zzz /*aaa*/ = 777; 3 | //bar 4 | -------------------------------------------------------------------------------- /tests/fixtures/comments/no-comment-regex.src.js: -------------------------------------------------------------------------------- 1 | const regex = /no comment\/**foo/; 2 | -------------------------------------------------------------------------------- /tests/fixtures/comments/no-comment-template.src.js: -------------------------------------------------------------------------------- 1 | const str = `${__dirname}/test/*.js`; 2 | -------------------------------------------------------------------------------- /tests/fixtures/comments/surrounding-call-comments.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/surrounding-call-comments.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/surrounding-debugger-comments.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/surrounding-debugger-comments.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/surrounding-return-comments.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/surrounding-return-comments.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/surrounding-throw-comments.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/surrounding-throw-comments.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/surrounding-while-loop-comments.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/surrounding-while-loop-comments.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/switch-fallthrough-comment-in-function.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/switch-fallthrough-comment-in-function.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/switch-fallthrough-comment.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/switch-fallthrough-comment.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/switch-no-default-comment-in-function.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/switch-no-default-comment-in-function.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/switch-no-default-comment-in-nested-functions.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/switch-no-default-comment-in-nested-functions.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/switch-no-default-comment.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/switch-no-default-comment.src.js -------------------------------------------------------------------------------- /tests/fixtures/comments/template-string-block.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/comments/template-string-block.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/as-param-with-params.src.js: -------------------------------------------------------------------------------- 1 | foo((x, y) => {}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/as-param.src.js: -------------------------------------------------------------------------------- 1 | foo(() => {}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/basic-in-binary-expression.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/arrowFunctions/basic-in-binary-expression.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/basic.src.js: -------------------------------------------------------------------------------- 1 | () => "test"; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/block-body-not-object.src.js: -------------------------------------------------------------------------------- 1 | e => { label: 42 }; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/block-body.src.js: -------------------------------------------------------------------------------- 1 | e => { 42; }; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-dup-params.src.js: -------------------------------------------------------------------------------- 1 | (a, a) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-missing-paren.src.js: -------------------------------------------------------------------------------- 1 | (a, (b)) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-not-arrow.src.js: -------------------------------------------------------------------------------- 1 | left = (aSize.width/2) - () -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-numeric-param-multi.src.js: -------------------------------------------------------------------------------- 1 | (10, 20) => 0; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-numeric-param.src.js: -------------------------------------------------------------------------------- 1 | (10) => 0; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-reverse-arrow.src.js: -------------------------------------------------------------------------------- 1 | () <= 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-default-param-eval.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval = 10) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-dup-params.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (a, a) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-eval-return.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval) => 42 -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-eval.src.js: -------------------------------------------------------------------------------- 1 | (eval) => { "use strict"; 42 } -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-octal.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (a) => 00; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-param-arguments.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (arguments, a) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-param-eval.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval, a) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-param-names.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval, a) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-param-no-paren-arguments.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; arguments => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-strict-param-no-paren-eval.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; eval => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-two-lines.src.js: -------------------------------------------------------------------------------- 1 | var a = () 2 | => 0; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/error-wrapped-param.src.js: -------------------------------------------------------------------------------- 1 | ((a)) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/expression.src.js: -------------------------------------------------------------------------------- 1 | (x => x); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/iife.src.js: -------------------------------------------------------------------------------- 1 | e => ({ property: 42 }); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/multiple-params.src.js: -------------------------------------------------------------------------------- 1 | (a, b) => "test"; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/no-auto-return.src.js: -------------------------------------------------------------------------------- 1 | (a, b) => { 42; }; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/not-strict-arguments.src.js: -------------------------------------------------------------------------------- 1 | arguments => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/not-strict-eval-params.src.js: -------------------------------------------------------------------------------- 1 | (eval, a) => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/not-strict-eval.src.js: -------------------------------------------------------------------------------- 1 | eval => 42; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/not-strict-octal.src.js: -------------------------------------------------------------------------------- 1 | (a) => 00; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/return-arrow-function.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/arrowFunctions/return-arrow-function.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/return-sequence.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/arrowFunctions/return-sequence.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/single-param-parens.src.js: -------------------------------------------------------------------------------- 1 | (e) => "test"; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/single-param-return-identifier.src.js: -------------------------------------------------------------------------------- 1 | (sun) => earth; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/arrowFunctions/single-param.src.js: -------------------------------------------------------------------------------- 1 | e => "test"; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/bigIntLiterals/binary.src.js: -------------------------------------------------------------------------------- 1 | 0b1n; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/bigIntLiterals/decimal.src.js: -------------------------------------------------------------------------------- 1 | 1n; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/bigIntLiterals/hex.src.js: -------------------------------------------------------------------------------- 1 | 0x1n; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/bigIntLiterals/octal.src.js: -------------------------------------------------------------------------------- 1 | 0o1n; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/binaryLiterals/invalid.src.js: -------------------------------------------------------------------------------- 1 | 0b102; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/binaryLiterals/lowercase.src.js: -------------------------------------------------------------------------------- 1 | 0b101; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/binaryLiterals/uppercase.src.js: -------------------------------------------------------------------------------- 1 | 0B101; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/blockBindings/const.src.js: -------------------------------------------------------------------------------- 1 | const foo = bar; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/blockBindings/let-in-switchcase.src.js: -------------------------------------------------------------------------------- 1 | switch (answer) { case 42: let t = 42; break; } 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/blockBindings/let.src.js: -------------------------------------------------------------------------------- 1 | let foo = bar; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-accessor-properties.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-accessor-properties.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-computed-static-method.src.js: -------------------------------------------------------------------------------- 1 | class A {static [a](){};}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-expression.src.js: -------------------------------------------------------------------------------- 1 | (class {}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-method-named-prototype.src.js: -------------------------------------------------------------------------------- 1 | class A {prototype(){}}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-method-named-static.src.js: -------------------------------------------------------------------------------- 1 | class A {static(){};}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-method-named-with-space.src.js: -------------------------------------------------------------------------------- 1 | class A {withSpace () {}} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-one-method-super.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-one-method-super.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-one-method.src.js: -------------------------------------------------------------------------------- 1 | class A { 2 | a(){} 3 | }; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-static-method-named-prototype.src.js: -------------------------------------------------------------------------------- 1 | class A {static ["prototype"](){}}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-static-method-named-static.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-static-method-named-static.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-static-method.src.js: -------------------------------------------------------------------------------- 1 | class A {static a(){};}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-static-methods-and-accessor-properties.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-static-methods-and-accessor-properties.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-computed-static-methods.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-computed-static-methods.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-methods-computed-constructor.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-methods-computed-constructor.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-methods-semi.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-methods-semi.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-methods-three-semi.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-methods-three-semi.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-methods-two-semi.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-methods-two-semi.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-methods.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-methods.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-two-static-methods-named-constructor.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/classes/class-two-static-methods-named-constructor.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-with-constructor-parameters.src.js: -------------------------------------------------------------------------------- 1 | class A {constructor(foo, bar){}} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-with-constructor-with-space.src.js: -------------------------------------------------------------------------------- 1 | class A {constructor (){}}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/class-with-constructor.src.js: -------------------------------------------------------------------------------- 1 | class A {constructor(){}}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/derived-class-assign-to-var.src.js: -------------------------------------------------------------------------------- 1 | var x = class A extends 0{}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/derived-class-expression.src.js: -------------------------------------------------------------------------------- 1 | (class extends 0{}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/empty-class-double-semi.src.js: -------------------------------------------------------------------------------- 1 | class A {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/empty-class-semi.src.js: -------------------------------------------------------------------------------- 1 | class A {;}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/empty-class.src.js: -------------------------------------------------------------------------------- 1 | class A {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/empty-literal-derived-class.src.js: -------------------------------------------------------------------------------- 1 | class A extends 0 {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/invalid-class-declaration.src.js: -------------------------------------------------------------------------------- 1 | class {}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/invalid-class-setter-declaration.src.js: -------------------------------------------------------------------------------- 1 | class A { set foo() {}}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/invalid-class-two-super-classes.src.js: -------------------------------------------------------------------------------- 1 | class A extends B, C {} -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/named-class-expression.src.js: -------------------------------------------------------------------------------- 1 | (class A {}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/classes/named-derived-class-expression.src.js: -------------------------------------------------------------------------------- 1 | (class A extends 0{}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/defaultParams/class-constructor.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/defaultParams/class-constructor.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/defaultParams/class-method.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/defaultParams/class-method.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/defaultParams/declaration.src.js: -------------------------------------------------------------------------------- 1 | function f(a = 1) {} -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/defaultParams/expression.src.js: -------------------------------------------------------------------------------- 1 | x = function(y = 1) {} -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/defaultParams/method.src.js: -------------------------------------------------------------------------------- 1 | x = { f: function(a=1) {} } -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/defaultParams/not-all-params.src.js: -------------------------------------------------------------------------------- 1 | var foo = function(a, b = 42, c) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/arrow-param-array.src.js: -------------------------------------------------------------------------------- 1 | ([y]) => x; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/arrow-param-nested-array.src.js: -------------------------------------------------------------------------------- 1 | ([y, [x]]) => x; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/arrow-param-nested-object-named.src.js: -------------------------------------------------------------------------------- 1 | ({foo: y, a:{bar: x}}) => x; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/arrow-param-nested-object.src.js: -------------------------------------------------------------------------------- 1 | ({y, a:{x}}) => x; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/arrow-param-object.src.js: -------------------------------------------------------------------------------- 1 | ({y}) => x; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/param-defaults-array.src.js: -------------------------------------------------------------------------------- 1 | ([x = 10]) => x -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/param-defaults-object-nested.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring-and-arrowFunctions/param-defaults-object-nested.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-arrowFunctions/param-defaults-object.src.js: -------------------------------------------------------------------------------- 1 | ({x = 10}) => x -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-blockBindings/array-const-undefined.src.js: -------------------------------------------------------------------------------- 1 | const [a] = []; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-blockBindings/array-let-undefined.src.js: -------------------------------------------------------------------------------- 1 | let [a] = []; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-blockBindings/object-const-named.src.js: -------------------------------------------------------------------------------- 1 | const {a:b} = {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-blockBindings/object-const-undefined.src.js: -------------------------------------------------------------------------------- 1 | const {a} = {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-blockBindings/object-let-named.src.js: -------------------------------------------------------------------------------- 1 | let {a:b} = {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-blockBindings/object-let-undefined.src.js: -------------------------------------------------------------------------------- 1 | let {a} = {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-defaultParams/param-array.src.js: -------------------------------------------------------------------------------- 1 | function f([x] = [1]) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-defaultParams/param-object-short.src.js: -------------------------------------------------------------------------------- 1 | ({f({x} = {x: 10}) {}}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-defaultParams/param-object-wrapped.src.xjs: -------------------------------------------------------------------------------- 1 | ({f: function({x} = {x: 10}) {}}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-defaultParams/param-object.src.js: -------------------------------------------------------------------------------- 1 | f = function({x} = {x: 10}) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-forOf/loop.src.js: -------------------------------------------------------------------------------- 1 | for ([a] of foo); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/complex-destructured.src.js: -------------------------------------------------------------------------------- 1 | [{ a, b }, ...c] = d; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/destructured-array-literal.src.js: -------------------------------------------------------------------------------- 1 | [a, ...[b, c]] = d; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/destructuring-param.src.js: -------------------------------------------------------------------------------- 1 | function a([a, b, ...[ok]]) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/error-complex-destructured-spread-first.src.js: -------------------------------------------------------------------------------- 1 | [...c, { a, b }] = d; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/invalid-not-final-array-empty.src.xjs: -------------------------------------------------------------------------------- 1 | [...a, ] = b; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/multi-destructured.src.js: -------------------------------------------------------------------------------- 1 | [a, ...b] = c; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/not-final-array.src.xjs: -------------------------------------------------------------------------------- 1 | [...a, b] = c; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/single-destructured.src.js: -------------------------------------------------------------------------------- 1 | [...a] = b; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/var-complex-destructured.src.js: -------------------------------------------------------------------------------- 1 | var [{ a, b }, ...c] = d; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/var-destructured-array-literal.src.js: -------------------------------------------------------------------------------- 1 | var [a, ...[b, c]] = d; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/var-multi-destructured.src.js: -------------------------------------------------------------------------------- 1 | var [a, ...b] = c; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring-and-spread/var-single-destructured.src.js: -------------------------------------------------------------------------------- 1 | var [...a] = b; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/array-member.src.js: -------------------------------------------------------------------------------- 1 | [ok.v] = 20; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/array-to-array.src.js: -------------------------------------------------------------------------------- 1 | [a, b] = [b, a]; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/array-var-undefined.src.js: -------------------------------------------------------------------------------- 1 | var [a] = []; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-constructor-params-array.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-constructor-params-array.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-constructor-params-defaults-array.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-constructor-params-defaults-array.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-constructor-params-defaults-object.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-constructor-params-defaults-object.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-constructor-params-object.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-constructor-params-object.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-method-params-array.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-method-params-array.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-method-params-defaults-array.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-method-params-defaults-array.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-method-params-defaults-object.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-method-params-defaults-object.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/class-method-params-object.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/class-method-params-object.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-array-all.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/defaults-array-all.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-array-longform-nested-multi.src.js: -------------------------------------------------------------------------------- 1 | var {x: x, y: y, z: { a: a = 10} } = b; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-array-multi.src.js: -------------------------------------------------------------------------------- 1 | var [x = 10, y, z] = a; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-array-nested-all.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/defaults-array-nested-all.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-array-nested-multi.src.js: -------------------------------------------------------------------------------- 1 | var [x = 10, [ z ]] = a; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-array.src.js: -------------------------------------------------------------------------------- 1 | [x=10] = x -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-all.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/defaults-object-all.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-longform-all.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/defaults-object-longform-all.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-longform-multi.src.js: -------------------------------------------------------------------------------- 1 | var {x: x, y: y = 10, z: z} = a; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-longform.src.js: -------------------------------------------------------------------------------- 1 | var { x: x = 10 } = x; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-mixed-multi.src.js: -------------------------------------------------------------------------------- 1 | var {x, y: y = 10, z} = a; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-multi.src.js: -------------------------------------------------------------------------------- 1 | var {x = 10, y, z} = a; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-nested-all.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/defaults-object-nested-all.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object-nested-multi.src.js: -------------------------------------------------------------------------------- 1 | var {x = 10, y: { z }} = a; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/defaults-object.src.js: -------------------------------------------------------------------------------- 1 | var {x = 10} = x -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/destructured-array-catch.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/destructured-array-catch.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/destructured-object-catch.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/destructured-object-catch.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/invalid-defaults-object-assign.src.js: -------------------------------------------------------------------------------- 1 | ({ Object=0, String=0 }) = {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/named-param.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/named-param.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/nested-array.src.js: -------------------------------------------------------------------------------- 1 | var [x, , [, z]] = [1,2,[3,4]]; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/nested-object.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/nested-object.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/object-var-named.src.js: -------------------------------------------------------------------------------- 1 | var {a:b} = {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/object-var-undefined.src.js: -------------------------------------------------------------------------------- 1 | var {a} = {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/param-defaults-array.src.js: -------------------------------------------------------------------------------- 1 | function a([x = 10]) {} -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/param-defaults-object-nested.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/destructuring/param-defaults-object-nested.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/param-defaults-object.src.js: -------------------------------------------------------------------------------- 1 | function a({x = 10}) {} -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-array-wrapped.src.js: -------------------------------------------------------------------------------- 1 | (function x([ a, b ]){}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-array.src.js: -------------------------------------------------------------------------------- 1 | function x([ a, b ]){}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-multi-object.src.js: -------------------------------------------------------------------------------- 1 | function x(a, { b }){}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-nested-array.src.js: -------------------------------------------------------------------------------- 1 | function a([x, , [, z]]) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-nested-object.src.js: -------------------------------------------------------------------------------- 1 | function a({x: y, z: { a: b } }) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-object-wrapped.src.js: -------------------------------------------------------------------------------- 1 | (function x({ a, b }){}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/params-object.src.js: -------------------------------------------------------------------------------- 1 | function x({ a, b }){}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/destructuring/sparse-array.src.js: -------------------------------------------------------------------------------- 1 | [a,,b] = array; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalAsyncIteration/async-generators.src.js: -------------------------------------------------------------------------------- 1 | async function* foo() { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalAsyncIteration/async-iterator.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalAsyncIteration/async-iterator.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalDynamicImport/dynamic-import.src.js: -------------------------------------------------------------------------------- 1 | import('foo').then(main); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/arg-spread.src.js: -------------------------------------------------------------------------------- 1 | function c({a, ...b}) {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/destructuring-assign-mirror.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/destructuring-assign-mirror.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/function-parameter-object-spread.src.js: -------------------------------------------------------------------------------- 1 | function foo({...bar}) { } 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/invalid-rest-trailing-comma.src.js: -------------------------------------------------------------------------------- 1 | var { x, y, ...z, } = foo; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/invalid-rest.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/invalid-rest.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/object-rest.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/object-rest.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/property-spread.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/property-spread.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/shorthand-method-args.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/shorthand-method-args.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/shorthand-methods.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/shorthand-methods.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/shorthand-properties.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/shorthand-properties.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/single-spread.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/single-spread.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/spread-trailing-comma.src.js: -------------------------------------------------------------------------------- 1 | ({ a, b, ...c, }) 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalObjectRestSpread/two-spread.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalObjectRestSpread/two-spread.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalOptionalCatchBinding/optional-catch-binding-finally.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/experimentalOptionalCatchBinding/optional-catch-binding-finally.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/experimentalOptionalCatchBinding/optional-catch-binding.src.js: -------------------------------------------------------------------------------- 1 | try {} catch {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/exponentiationOperators/exponential-operators.src.js: -------------------------------------------------------------------------------- 1 | var x = 2 ** 3; 2 | x **= 4; 3 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/forOf/for-of-with-function-initializer.src.js: -------------------------------------------------------------------------------- 1 | for (var i = function() { return 10 in [] } of list) process(x); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/forOf/for-of-with-var-and-braces.src.js: -------------------------------------------------------------------------------- 1 | for (var x of foo) { 2 | doSomething(); 3 | } 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/forOf/for-of-with-var-and-no-braces.src.js: -------------------------------------------------------------------------------- 1 | for (var x of foo) 2 | doSomething(); 3 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/forOf/invalid-for-of-with-const-and-no-braces.src.js: -------------------------------------------------------------------------------- 1 | for (const x of foo) 2 | doSomething(); 3 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/forOf/invalid-for-of-with-let-and-no-braces.src.js: -------------------------------------------------------------------------------- 1 | for (let x of foo) 2 | doSomething(); 3 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/anonymous-generator.src.js: -------------------------------------------------------------------------------- 1 | (function* () { yield v }); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/async-generator-function.src.js: -------------------------------------------------------------------------------- 1 | 2 | async function *foo() { 3 | 4 | } 5 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/async-generator-method.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/generators/async-generator-method.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/double-yield.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/generators/double-yield.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/empty-generator-declaration.src.js: -------------------------------------------------------------------------------- 1 | function* t() {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/generator-declaration.src.js: -------------------------------------------------------------------------------- 1 | function* test () { yield *v }; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/yield-delegation.src.js: -------------------------------------------------------------------------------- 1 | (function* () { yield *v }); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/yield-without-value-in-call.src.js: -------------------------------------------------------------------------------- 1 | (function* () { fn(yield); }); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/yield-without-value-no-semi.src.js: -------------------------------------------------------------------------------- 1 | (function* () { yield }); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/generators/yield-without-value.src.js: -------------------------------------------------------------------------------- 1 | (function* () { yield; }); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/globalReturn/return-identifier.src.js: -------------------------------------------------------------------------------- 1 | return fooz; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/globalReturn/return-no-arg.src.js: -------------------------------------------------------------------------------- 1 | return; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/globalReturn/return-true.src.js: -------------------------------------------------------------------------------- 1 | return true; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/importMeta/simple-import-meta.src.js: -------------------------------------------------------------------------------- 1 | import.meta.url; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/error-delete.src.js: -------------------------------------------------------------------------------- 1 | import x from "x"; 2 | delete x; 3 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/error-function.src.js: -------------------------------------------------------------------------------- 1 | function x() { 2 | export default friends; 3 | } 4 | 5 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/error-strict.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/modules/error-strict.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-array.src.js: -------------------------------------------------------------------------------- 1 | export default []; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-class.src.js: -------------------------------------------------------------------------------- 1 | export default class { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-expression.src.js: -------------------------------------------------------------------------------- 1 | export default (1 + 2); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-function.src.js: -------------------------------------------------------------------------------- 1 | export default function () {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-named-class.src.js: -------------------------------------------------------------------------------- 1 | export default class Test { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-named-function.src.js: -------------------------------------------------------------------------------- 1 | export default function foo() {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-number.src.js: -------------------------------------------------------------------------------- 1 | export default 42; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-object.src.js: -------------------------------------------------------------------------------- 1 | export default { foo: 1 }; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-default-value.src.js: -------------------------------------------------------------------------------- 1 | export default foo; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-batch.src.js: -------------------------------------------------------------------------------- 1 | export * from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-default.src.js: -------------------------------------------------------------------------------- 1 | export {default} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-named-as-default.src.js: -------------------------------------------------------------------------------- 1 | export {foo as default} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-named-as-specifier.src.js: -------------------------------------------------------------------------------- 1 | export {foo as bar} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-named-as-specifiers.src.js: -------------------------------------------------------------------------------- 1 | export {foo as default, bar} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-specifier.src.js: -------------------------------------------------------------------------------- 1 | export {foo} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-from-specifiers.src.js: -------------------------------------------------------------------------------- 1 | export {foo, bar} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-function.src.js: -------------------------------------------------------------------------------- 1 | export function foo () {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-as-default.src.js: -------------------------------------------------------------------------------- 1 | export {foo as default}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-as-specifier.src.js: -------------------------------------------------------------------------------- 1 | export {foo as bar}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-as-specifiers.src.js: -------------------------------------------------------------------------------- 1 | export {foo as default, bar}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-class.src.js: -------------------------------------------------------------------------------- 1 | export class Test { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-empty.src.js: -------------------------------------------------------------------------------- 1 | export {}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-specifier.src.js: -------------------------------------------------------------------------------- 1 | export {foo}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-specifiers-comma.src.js: -------------------------------------------------------------------------------- 1 | export {foo, bar,}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-named-specifiers.src.js: -------------------------------------------------------------------------------- 1 | export {foo, bar}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-var-anonymous-function.src.js: -------------------------------------------------------------------------------- 1 | export var foo = function () {}; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-var-number.src.js: -------------------------------------------------------------------------------- 1 | export var foo = 1; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/export-var.src.js: -------------------------------------------------------------------------------- 1 | export var bar; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-default-and-named-specifiers.src.js: -------------------------------------------------------------------------------- 1 | import foo, {bar} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-default-and-namespace-specifiers.src.js: -------------------------------------------------------------------------------- 1 | import foo, * as bar from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-default-as.src.js: -------------------------------------------------------------------------------- 1 | import {default as foo} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-default.src.js: -------------------------------------------------------------------------------- 1 | import foo from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-jquery.src.js: -------------------------------------------------------------------------------- 1 | import $ from "jquery" 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-module.src.js: -------------------------------------------------------------------------------- 1 | import "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-named-as-specifier.src.js: -------------------------------------------------------------------------------- 1 | import {bar as baz} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-named-as-specifiers.src.js: -------------------------------------------------------------------------------- 1 | import {bar as baz, xyz} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-named-empty.src.js: -------------------------------------------------------------------------------- 1 | import {} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-named-specifier.src.js: -------------------------------------------------------------------------------- 1 | import {bar} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-named-specifiers-comma.src.js: -------------------------------------------------------------------------------- 1 | import {bar, baz,} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-named-specifiers.src.js: -------------------------------------------------------------------------------- 1 | import {bar, baz} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-namespace-specifier.src.js: -------------------------------------------------------------------------------- 1 | import * as foo from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/import-null-as-nil.src.js: -------------------------------------------------------------------------------- 1 | import { null as nil } from "bar" 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-await.src.js: -------------------------------------------------------------------------------- 1 | export var await; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-class.src.js: -------------------------------------------------------------------------------- 1 | export default class {} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-batch-missing-from-clause.src.js: -------------------------------------------------------------------------------- 1 | export * 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-batch-token.src.js: -------------------------------------------------------------------------------- 1 | export * + 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-default-equal.src.js: -------------------------------------------------------------------------------- 1 | export default = 42 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-default-token.src.js: -------------------------------------------------------------------------------- 1 | export {default} + 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-default.src.js: -------------------------------------------------------------------------------- 1 | export default from "foo" 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-named-default.src.js: -------------------------------------------------------------------------------- 1 | export {default} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-named-extra-comma.src.js: -------------------------------------------------------------------------------- 1 | export {foo,baz,,} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-export-named-middle-comma.src.js: -------------------------------------------------------------------------------- 1 | export {foo,,baz} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-default-after-named-after-default.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/modules/invalid-import-default-after-named-after-default.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-default-after-named.src.js: -------------------------------------------------------------------------------- 1 | import {bar}, foo from "foo" 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-default-missing-module-specifier.src.js: -------------------------------------------------------------------------------- 1 | import foo 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-default-module-specifier.src.js: -------------------------------------------------------------------------------- 1 | import foo from bar; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-default.src.js: -------------------------------------------------------------------------------- 1 | import default from "foo" 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-missing-module-specifier.src.js: -------------------------------------------------------------------------------- 1 | import { foo, bar } 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-module-specifier.src.js: -------------------------------------------------------------------------------- 1 | export {foo} from bar 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-named-after-named.src.js: -------------------------------------------------------------------------------- 1 | import {bar}, {foo} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-named-after-namespace.src.js: -------------------------------------------------------------------------------- 1 | import * as foo, {bar} from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-named-as-missing-from.src.js: -------------------------------------------------------------------------------- 1 | import {default as foo} 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-named-extra-comma.src.js: -------------------------------------------------------------------------------- 1 | import {foo,baz,,} from 'toast'; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-named-middle-comma.src.js: -------------------------------------------------------------------------------- 1 | import {foo,,baz} from 'toast'; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-namespace-after-named.src.js: -------------------------------------------------------------------------------- 1 | import {bar}, * as foo from "foo"; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/modules/invalid-import-namespace-missing-as.src.js: -------------------------------------------------------------------------------- 1 | import * from "foo" 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/newTarget/invalid-new-target.src.js: -------------------------------------------------------------------------------- 1 | var x = new.target; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/newTarget/invalid-unknown-property.src.js: -------------------------------------------------------------------------------- 1 | var f = function() { new.unknown_property; } 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/newTarget/simple-new-target.src.js: -------------------------------------------------------------------------------- 1 | function f() { 2 | var x = new.target; 3 | } 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/computed-addition-property.src.js: -------------------------------------------------------------------------------- 1 | var x = { 2 | [5 + 5]: foo 3 | }; 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/computed-and-identifier.src.js: -------------------------------------------------------------------------------- 1 | ({[x]: 10, y: 20}); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/computed-getter-and-setter.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralComputedProperties/computed-getter-and-setter.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/computed-string-property.src.js: -------------------------------------------------------------------------------- 1 | var x = { 2 | ["hey"]: foo 3 | }; 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/computed-variable-property.src.js: -------------------------------------------------------------------------------- 1 | var x = { 2 | [bar]: foo 3 | }; 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/invalid-computed-variable-property.src.js: -------------------------------------------------------------------------------- 1 | var x = { 2 | [bar] 3 | }; 4 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/invalid-standalone-computed-variable-property.src.js: -------------------------------------------------------------------------------- 1 | ({[x]}); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/standalone-expression-with-addition.src.js: -------------------------------------------------------------------------------- 1 | ({["x" + "y"]: 10}); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/standalone-expression-with-method.src.js: -------------------------------------------------------------------------------- 1 | ({[x]: function() {}}); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralComputedProperties/standalone-expression.src.js: -------------------------------------------------------------------------------- 1 | ({[x]: 10}); 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralDuplicateProperties/error-proto-property.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralDuplicateProperties/error-proto-property.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralDuplicateProperties/error-proto-string-property.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralDuplicateProperties/error-proto-string-property.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralDuplicateProperties/strict-duplicate-properties.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralDuplicateProperties/strict-duplicate-properties.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralDuplicateProperties/strict-duplicate-string-properties.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralDuplicateProperties/strict-duplicate-string-properties.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/invalid-method-no-braces.src.js: -------------------------------------------------------------------------------- 1 | x = { 2 | method() 42 3 | };; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/method-property.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/method-property.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-named-get.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-named-get.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-named-set.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-named-set.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-with-argument.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-with-argument.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-with-string-name.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method-with-string-name.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/simple-method.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandMethods/string-name-method-property.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandMethods/string-name-method-property.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/objectLiteralShorthandProperties/shorthand-properties.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/objectLiteralShorthandProperties/shorthand-properties.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/octalLiterals/invalid.src.js: -------------------------------------------------------------------------------- 1 | 0o12z; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/octalLiterals/lowercase.src.js: -------------------------------------------------------------------------------- 1 | 0o717; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/octalLiterals/strict-uppercase.src.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 0O717; 3 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/octalLiterals/uppercase.src.js: -------------------------------------------------------------------------------- 1 | 0O717; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/regex/regexp-simple.src.js: -------------------------------------------------------------------------------- 1 | var foo = /foo./; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/regexUFlag/regex-u-extended-escape.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/regexUFlag/regex-u-extended-escape.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/regexUFlag/regex-u-invalid-extended-escape.src.js: -------------------------------------------------------------------------------- 1 | var x = /\u{110000}/u; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/regexUFlag/regex-u-simple.src.js: -------------------------------------------------------------------------------- 1 | var foo = /foo/u; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/regexYFlag/regexp-y-simple.src.js: -------------------------------------------------------------------------------- 1 | var foo = /foo/y; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/basic-rest.src.js: -------------------------------------------------------------------------------- 1 | function f(a, ...b) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/class-constructor.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/restParams/class-constructor.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/class-method.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/restParams/class-method.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/error-no-default.src.js: -------------------------------------------------------------------------------- 1 | function f(a, ...b = 0); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/error-not-last.src.js: -------------------------------------------------------------------------------- 1 | function f(a, ...b, c); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/func-expression-multi.src.js: -------------------------------------------------------------------------------- 1 | var x = function(a, ...b) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/func-expression.src.js: -------------------------------------------------------------------------------- 1 | var x = function (...a) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/invalid-rest-param.src.js: -------------------------------------------------------------------------------- 1 | function x(...{ a }){}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/restParams/single-rest.src.js: -------------------------------------------------------------------------------- 1 | function f(...b) {}; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/spread/error-invalid-if.src.js: -------------------------------------------------------------------------------- 1 | if (b,...a, ); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/spread/error-invalid-sequence.src.js: -------------------------------------------------------------------------------- 1 | (b, ...a); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/spread/multi-function-call.src.js: -------------------------------------------------------------------------------- 1 | foo(a, ...b); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/spread/not-final-param.src.js: -------------------------------------------------------------------------------- 1 | func(...a, b); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/spread/simple-function-call.src.js: -------------------------------------------------------------------------------- 1 | foo(...a); -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/deeply-nested.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/templateStrings/deeply-nested.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/error-octal-literal.src.js: -------------------------------------------------------------------------------- 1 | `\07`; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/escape-characters.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/templateStrings/escape-characters.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/expressions.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/templateStrings/expressions.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/multi-line-template-string.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/templateStrings/multi-line-template-string.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/simple-template-string.src.js: -------------------------------------------------------------------------------- 1 | `42`; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/single-dollar-sign.src.js: -------------------------------------------------------------------------------- 1 | var ts = `$`; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/tagged-no-placeholders.src.js: -------------------------------------------------------------------------------- 1 | foo`foo`; 2 | -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/templateStrings/tagged-template-string.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/templateStrings/tagged-template-string.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/unicodeCodePointEscapes/basic-string-literal.src.js: -------------------------------------------------------------------------------- 1 | "\u{714E}\u{8336}"; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/unicodeCodePointEscapes/complex-string-literal.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/unicodeCodePointEscapes/complex-string-literal.src.js -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/unicodeCodePointEscapes/invalid-empty-escape.src.js: -------------------------------------------------------------------------------- 1 | "\u{}"; -------------------------------------------------------------------------------- /tests/fixtures/ecma-features/unicodeCodePointEscapes/invalid-too-large-escape.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/ecma-features/unicodeCodePointEscapes/invalid-too-large-escape.src.js -------------------------------------------------------------------------------- /tests/fixtures/jsx-useJSXTextNode/self-closing-tag-inside-tag.src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eslint/typescript-eslint-parser/HEAD/tests/fixtures/jsx-useJSXTextNode/self-closing-tag-inside-tag.src.js -------------------------------------------------------------------------------- /tests/fixtures/jsx-useJSXTextNode/test-content.src.js: -------------------------------------------------------------------------------- 1 |