├── LICENSE ├── README ├── test ├── fixtures │ ├── tokenize │ │ ├── empty.js │ │ ├── migrated_0010.js │ │ ├── migrated_0013.js │ │ ├── migrated_0014.js │ │ ├── empty.tokens.json │ │ ├── invalid_number.js │ │ ├── migrated_0006.js │ │ ├── migrated_0009.js │ │ ├── migrated_0011.js │ │ ├── migrated_0012.js │ │ ├── migrated_0015.js │ │ ├── single_slash.js │ │ ├── after_if.js │ │ ├── migrated_0000.js │ │ ├── migrated_0003.js │ │ ├── migrated_0013.tokens.json │ │ ├── migrated_0016.js │ │ ├── line_terminators.tokens.json │ │ ├── migrated_0001.js │ │ ├── migrated_0002.js │ │ ├── migrated_0004.js │ │ ├── migrated_0005.js │ │ ├── migrated_0007.js │ │ ├── line_terminators.js │ │ ├── migrated_0008.js │ │ ├── trailing_comment.js │ │ ├── leading_comment.js │ │ └── line_comment.js │ ├── comment │ │ ├── migrated_0022.js │ │ ├── migrated_0023.js │ │ ├── migrated_0003.js │ │ ├── migrated_0012.js │ │ ├── migrated_0015.js │ │ ├── migrated_0021.js │ │ ├── migrated_0024.js │ │ ├── migrated_0025.js │ │ ├── migrated_0036.js │ │ ├── migrated_0011.js │ │ ├── migrated_0013.js │ │ ├── migrated_0014.js │ │ ├── migrated_0038.js │ │ ├── migrated_0039.js │ │ ├── migrated_0040.js │ │ ├── html-comment.module.js │ │ ├── migrated_0017.js │ │ ├── migrated_0037.js │ │ ├── migrated_0044.js │ │ ├── migrated_0000.js │ │ ├── migrated_0006.js │ │ ├── migrated_0007.js │ │ ├── migrated_0008.js │ │ ├── migrated_0009.js │ │ ├── migrated_0016.js │ │ ├── migrated_0018.js │ │ ├── migrated_0019.js │ │ ├── migrated_0020.js │ │ ├── migrated_0043.js │ │ ├── migrated_0052.js │ │ ├── migrated_0004.js │ │ ├── migrated_0005.js │ │ ├── migrated_0042.js │ │ ├── migrated_0045.js │ │ ├── migrated_0041.js │ │ ├── migrated_0027.js │ │ ├── migrated_0028.js │ │ ├── migrated_0029.js │ │ ├── migrated_0030.js │ │ ├── migrated_0053.js │ │ ├── migrated_0046.js │ │ ├── migrated_0047.js │ │ ├── migrated_0054.js │ │ ├── migrated_0001.js │ │ ├── migrated_0002.js │ │ ├── migrated_0031.js │ │ └── migrated_0032.js │ ├── JSX │ │ ├── invalid-element.js │ │ ├── invalid-no-closing.js │ │ ├── invalid-closing-trail.js │ │ ├── invalid-self-closing.js │ │ ├── simple-namespace.js │ │ ├── simple-text.js │ │ ├── invalid-empty-selfclosing.js │ │ ├── invalid-start-member.js │ │ ├── invalid-start-namespace.js │ │ ├── simple-member.js │ │ ├── simple-pair.js │ │ ├── simple-selfclosing.js │ │ ├── template-literal.js │ │ ├── attribute-empty-entity1.js │ │ ├── attribute-empty-entity2.js │ │ ├── attribute-invalid-entity.js │ │ ├── attribute-primary.js │ │ ├── attribute-x-entity.js │ │ ├── container-numeric-literal.js │ │ ├── invalid-incomplete-namespace.js │ │ ├── invalid-match.js │ │ ├── invalid-member-incomplete.js │ │ ├── nested-elements.js │ │ ├── simple-selfclosing-linefeed.js │ │ ├── attribute-expression.js │ │ ├── attribute-null-value.js │ │ ├── attribute-spread.js │ │ ├── container-series.js │ │ ├── empty-expression-container.js │ │ ├── invalid-attribute-value-trail.js │ │ ├── invalid-match-member.js │ │ ├── null-attribute-value.js │ │ ├── simple-namespace-pair.js │ │ ├── simple-selfclosing-whitespace.js │ │ ├── attribute-double-quoted-string.js │ │ ├── attribute-entity-hex.js │ │ ├── attribute-entity.js │ │ ├── attribute-illegal-short-entity.js │ │ ├── attribute-unterminated-entity.js │ │ ├── inside-group-expression.js │ │ ├── invalid-empty-attribute-expression.js │ │ ├── invalid-match-name-namespace.js │ │ ├── invalid-match-namespace-name.js │ │ ├── invalid-match-namespace.js │ │ ├── simple-nested-pair.js │ │ ├── attribute-multi-entities.js │ │ ├── attribute-single-quoted-string.js │ │ ├── attribute-unknown-entity.js │ │ ├── simple-expression-container.js │ │ ├── attribute-non-hex-entity.js │ │ ├── attribute-non-numeric-entity.js │ │ ├── container-object-expression.js │ │ ├── multiline-text.js │ │ ├── yield-jsx-element.js │ │ ├── empty-child-comment.js │ │ └── multi-attributes.js │ ├── invalid-syntax │ │ ├── migrated_0000.js │ │ ├── migrated_0001.js │ │ ├── migrated_0002.js │ │ ├── migrated_0004.js │ │ ├── migrated_0005.js │ │ ├── migrated_0006.js │ │ ├── migrated_0007.js │ │ ├── migrated_0008.js │ │ ├── migrated_0009.js │ │ ├── migrated_0010.js │ │ ├── migrated_0012.js │ │ ├── migrated_0013.js │ │ ├── migrated_0014.js │ │ ├── migrated_0017.js │ │ ├── migrated_0019.js │ │ ├── migrated_0022.js │ │ ├── migrated_0024.js │ │ ├── migrated_0027.js │ │ ├── migrated_0032.js │ │ ├── migrated_0038.js │ │ ├── migrated_0052.js │ │ ├── migrated_0053.js │ │ ├── migrated_0054.js │ │ ├── migrated_0055.js │ │ ├── migrated_0057.js │ │ ├── migrated_0058.js │ │ ├── migrated_0129.js │ │ ├── migrated_0145.js │ │ ├── migrated_0147.js │ │ ├── migrated_0152.js │ │ ├── migrated_0162.js │ │ ├── migrated_0164.js │ │ ├── migrated_0168.js │ │ ├── migrated_0252.js │ │ ├── GH-1106-00.js │ │ ├── GH-1106-01.js │ │ ├── GH-1106-02.js │ │ ├── GH-1106-03.js │ │ ├── GH-1106-04.js │ │ ├── GH-1106-05.js │ │ ├── GH-1106-08.js │ │ ├── GH-1106-09.js │ │ ├── migrated_0003.js │ │ ├── migrated_0011.js │ │ ├── migrated_0015.js │ │ ├── migrated_0016.js │ │ ├── migrated_0018.js │ │ ├── migrated_0020.js │ │ ├── migrated_0021.js │ │ ├── migrated_0023.js │ │ ├── migrated_0025.js │ │ ├── migrated_0026.js │ │ ├── migrated_0028.js │ │ ├── migrated_0029.js │ │ ├── migrated_0030.js │ │ ├── migrated_0039.js │ │ ├── migrated_0045.js │ │ ├── migrated_0059.js │ │ ├── migrated_0065.js │ │ ├── migrated_0067.js │ │ ├── migrated_0068.js │ │ ├── migrated_0084.js │ │ ├── migrated_0095.js │ │ ├── migrated_0096.js │ │ ├── migrated_0097.js │ │ ├── migrated_0112.js │ │ ├── migrated_0113.js │ │ ├── migrated_0114.js │ │ ├── migrated_0115.js │ │ ├── migrated_0117.js │ │ ├── migrated_0120.js │ │ ├── migrated_0121.js │ │ ├── migrated_0131.js │ │ ├── migrated_0132.js │ │ ├── migrated_0133.js │ │ ├── migrated_0140.js │ │ ├── migrated_0149.js │ │ ├── migrated_0151.js │ │ ├── migrated_0153.js │ │ ├── migrated_0154.js │ │ ├── migrated_0171.js │ │ ├── migrated_0172.js │ │ ├── migrated_0173.js │ │ ├── migrated_0254.js │ │ ├── migrated_0255.js │ │ ├── migrated_0261.js │ │ ├── migrated_0262.js │ │ ├── migrated_0263.js │ │ ├── migrated_0265.js │ │ ├── migrated_0267.js │ │ ├── GH-1106-06.js │ │ ├── GH-1106-07.js │ │ ├── migrated_0035.js │ │ ├── migrated_0040.js │ │ ├── migrated_0046.js │ │ ├── migrated_0047.js │ │ ├── migrated_0060.js │ │ ├── migrated_0061.js │ │ ├── migrated_0064.js │ │ ├── migrated_0066.js │ │ ├── migrated_0071.js │ │ ├── migrated_0072.js │ │ ├── migrated_0080.js │ │ ├── migrated_0082.js │ │ ├── migrated_0083.js │ │ ├── migrated_0085.js │ │ ├── migrated_0092.js │ │ ├── migrated_0098.js │ │ ├── migrated_0102.js │ │ ├── migrated_0103.js │ │ ├── migrated_0116.js │ │ ├── migrated_0118.js │ │ ├── migrated_0119.js │ │ ├── migrated_0122.js │ │ ├── migrated_0127.js │ │ ├── migrated_0130.js │ │ ├── migrated_0144.js │ │ ├── migrated_0148.js │ │ ├── migrated_0150.js │ │ ├── migrated_0155.js │ │ ├── migrated_0156.js │ │ ├── migrated_0157.js │ │ ├── migrated_0158.js │ │ ├── migrated_0159.js │ │ ├── migrated_0160.js │ │ ├── migrated_0161.js │ │ ├── migrated_0175.js │ │ ├── migrated_0266.js │ │ ├── migrated_0268.js │ │ ├── migrated_0031.js │ │ ├── migrated_0062.js │ │ ├── migrated_0063.js │ │ ├── migrated_0069.js │ │ ├── migrated_0074.js │ │ ├── migrated_0076.js │ │ ├── migrated_0081.js │ │ ├── migrated_0086.js │ │ ├── migrated_0099.js │ │ ├── migrated_0104.js │ │ ├── migrated_0111.js │ │ ├── migrated_0124.js │ │ ├── migrated_0125.js │ │ ├── migrated_0126.js │ │ ├── migrated_0138.js │ │ ├── migrated_0139.js │ │ ├── migrated_0146.js │ │ ├── migrated_0170.js │ │ ├── migrated_0073.js │ │ ├── migrated_0077.js │ │ ├── migrated_0078.js │ │ ├── migrated_0094.js │ │ ├── migrated_0105.js │ │ ├── migrated_0106.js │ │ ├── migrated_0107.js │ │ ├── migrated_0108.js │ │ ├── migrated_0109.js │ │ ├── migrated_0110.js │ │ ├── migrated_0123.js │ │ ├── migrated_0134.js │ │ ├── migrated_0136.js │ │ ├── migrated_0141.js │ │ ├── migrated_0142.js │ │ ├── migrated_0216.js │ │ ├── migrated_0256.js │ │ ├── migrated_0257.js │ │ ├── migrated_0260.js │ │ ├── migrated_0269.js │ │ ├── migrated_0275.js │ │ ├── migrated_0277.js │ │ ├── migrated_0036.source.js │ │ ├── migrated_0037.source.js │ │ ├── migrated_0088.js │ │ ├── migrated_0093.js │ │ ├── migrated_0100.js │ │ ├── migrated_0128.js │ │ ├── migrated_0135.js │ │ ├── migrated_0169.source.js │ │ ├── migrated_0176.js │ │ ├── migrated_0177.js │ │ ├── migrated_0248.js │ │ ├── migrated_0258.js │ │ ├── migrated_0264.js │ │ ├── migrated_0033.source.js │ │ ├── migrated_0034.source.js │ │ ├── migrated_0049.source.js │ │ ├── migrated_0050.source.js │ │ ├── migrated_0051.source.js │ │ ├── migrated_0056.js │ │ ├── migrated_0087.js │ │ ├── migrated_0089.js │ │ ├── migrated_0090.js │ │ ├── migrated_0101.js │ │ ├── migrated_0143.js │ │ ├── migrated_0163.source.js │ │ ├── migrated_0165.source.js │ │ ├── migrated_0174.js │ │ ├── migrated_0201.js │ │ ├── migrated_0270.js │ │ ├── migrated_0271.js │ │ ├── migrated_0272.js │ │ ├── migrated_0273.js │ │ ├── migrated_0278.js │ │ ├── migrated_0048.source.js │ │ ├── migrated_0091.js │ │ ├── migrated_0137.source.js │ │ ├── migrated_0166.source.js │ │ ├── migrated_0167.source.js │ │ ├── migrated_0202.js │ │ ├── migrated_0205.js │ │ ├── migrated_0212.js │ │ ├── migrated_0234.js │ │ ├── migrated_0235.js │ │ ├── migrated_0239.js │ │ ├── migrated_0240.js │ │ ├── migrated_0241.js │ │ ├── migrated_0242.js │ │ ├── migrated_0244.js │ │ ├── migrated_0246.js │ │ ├── migrated_0250.js │ │ └── migrated_0276.js │ ├── statement │ │ ├── block │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0000.js │ │ │ └── migrated_0001.js │ │ ├── empty │ │ │ └── migrated_0000.js │ │ ├── expression │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.source.js │ │ │ ├── migrated_0003.source.js │ │ │ ├── migrated_0004.source.js │ │ │ └── migrated_0005.source.js │ │ ├── debugger │ │ │ └── migrated_0000.js │ │ ├── iteration │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0011.js │ │ │ ├── migrated_0012.js │ │ │ ├── migrated_0026.js │ │ │ ├── for-in-let.js │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0014.js │ │ │ ├── migrated_0024.js │ │ │ ├── for-let-let.js │ │ │ ├── for-statement-with-seq.js │ │ │ ├── invalid-assign-for-in.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0013.js │ │ │ ├── migrated_0015.js │ │ │ ├── migrated_0017.js │ │ │ ├── migrated_0021.js │ │ │ ├── migrated_0025.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0018.js │ │ │ ├── migrated_0020.js │ │ │ └── unterminated-do-while.js │ │ ├── throw │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── variable │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── var_let.js │ │ │ ├── migrated_0002.js │ │ │ ├── invalid_trailing_comma_1.js │ │ │ ├── invalid_trailing_comma_2.js │ │ │ ├── invalid_trailing_comma_3.js │ │ │ ├── complex-pattern-requires-init.js │ │ │ ├── invalid_trailing_comma_4.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── invalid_trailing_comma_5.js │ │ │ ├── invalid_trailing_comma_6.js │ │ │ └── migrated_0005.js │ │ ├── switch │ │ │ └── migrated_0000.js │ │ ├── with │ │ │ ├── migrated_0000.js │ │ │ ├── unterminated-with.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── break │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── if │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0003.js │ │ │ └── migrated_0005.js │ │ ├── labelled │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0000.js │ │ │ ├── function-declaration.js │ │ │ └── migrated_0001.js │ │ ├── try │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ └── migrated_0005.js │ │ ├── return │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ └── migrated_0003.js │ │ └── continue │ │ │ ├── migrated_0000.js │ │ │ └── migrated_0001.js │ ├── tolerant-parse │ │ ├── migrated_0000.js │ │ ├── migrated_0046.js │ │ ├── migrated_0047.js │ │ ├── migrated_0013.js │ │ ├── migrated_0045.js │ │ ├── migrated_0005.js │ │ ├── migrated_0007.js │ │ ├── migrated_0012.js │ │ ├── migrated_0001.js │ │ ├── migrated_0002.js │ │ ├── migrated_0003.js │ │ ├── migrated_0004.js │ │ ├── migrated_0044.js │ │ ├── migrated_0048.js │ │ ├── migrated_0049.js │ │ ├── let_eval.js │ │ ├── migrated_0006.js │ │ ├── migrated_0016.js │ │ ├── migrated_0019.js │ │ ├── migrated_0021.js │ │ ├── migrated_0022.js │ │ ├── migrated_0023.js │ │ ├── migrated_0041.js │ │ ├── if-missing-parenthesis.js │ │ ├── migrated_0020.js │ │ ├── migrated_0024.js │ │ ├── migrated_0025.js │ │ ├── migrated_0026.js │ │ ├── migrated_0051.js │ │ ├── migrated_0052.js │ │ ├── migrated_0027.js │ │ ├── migrated_0042.js │ │ ├── while-missing-parenthesis.js │ │ ├── for-in-missing-parenthesis.js │ │ ├── for-of-missing-parenthesis.js │ │ ├── migrated_0008.js │ │ ├── migrated_0015.js │ │ ├── migrated_0017.js │ │ ├── migrated_0028.js │ │ ├── migrated_0029.js │ │ ├── migrated_0030.js │ │ ├── migrated_0033.js │ │ ├── migrated_0036.js │ │ ├── migrated_0039.js │ │ └── string_literal_escape_eight.js │ ├── ES2016 │ │ ├── exponent │ │ │ ├── exp_not.js │ │ │ ├── exp_plus.js │ │ │ ├── exp_assign.js │ │ │ ├── exp_bitnot.js │ │ │ ├── exp_minus.js │ │ │ ├── exp_operator.js │ │ │ ├── exp_plusplus.js │ │ │ ├── exp_void.js │ │ │ ├── exp_delete.js │ │ │ ├── exp_minusminus.js │ │ │ ├── exp_precedence.js │ │ │ ├── exp_typeof.js │ │ │ ├── invalid_bitnot_exp.js │ │ │ ├── invalid_minus_exp.js │ │ │ ├── invalid_not_exp.js │ │ │ ├── invalid_plus_exp.js │ │ │ ├── invalid_void_exp.js │ │ │ ├── invalid_delete_exp.js │ │ │ ├── invalid_typeof_exp.js │ │ │ └── update_exp.js │ │ └── identifier │ │ │ └── gujarati_zha.js │ ├── ES6 │ │ ├── class │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0022.js │ │ │ ├── migrated_0023.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0012.js │ │ │ ├── migrated_0017.js │ │ │ ├── migrated_0024.js │ │ │ ├── migrated_0025.js │ │ │ ├── migrated_0026.js │ │ │ ├── migrated_0013.js │ │ │ ├── migrated_0015.js │ │ │ ├── migrated_0016.js │ │ │ ├── migrated_0018.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0014.js │ │ │ ├── migrated_0021.js │ │ │ ├── invalid-labelled-class-declaration.js │ │ │ ├── invalid-setter-method-rest.js │ │ │ └── migrated_0019.js │ │ ├── for-of │ │ │ ├── for-of.js │ │ │ ├── for-of-let.js │ │ │ ├── let-of-of.js │ │ │ ├── for-of-with-let.js │ │ │ ├── for-of-with-var.js │ │ │ ├── invalid-lhs-init.js │ │ │ ├── invalid_let_let.js │ │ │ ├── unexpected-number.js │ │ │ ├── for-of-array-pattern.js │ │ │ ├── for-of-object-pattern.js │ │ │ ├── for-of-with-const.js │ │ │ ├── invalid-assign-for-of.js │ │ │ ├── invalid-let-init.js │ │ │ ├── invalid-var-init.js │ │ │ ├── invalid_const_let.js │ │ │ ├── invalid-const-init.js │ │ │ ├── for-of-array-pattern-let.js │ │ │ ├── for-of-array-pattern-var.js │ │ │ ├── for-of-object-pattern-var.js │ │ │ ├── invalid-for-of-array-pattern.js │ │ │ ├── for-of-object-pattern-const.js │ │ │ └── invalid-for-of-object-pattern.js │ │ ├── identifier │ │ │ ├── estimated.js │ │ │ ├── math_alef.js │ │ │ ├── invalid_id_smp.js │ │ │ ├── math_dal_part.js │ │ │ ├── math_kaf_lam.js │ │ │ ├── weierstrass.js │ │ │ ├── dakuten_handakuten.js │ │ │ ├── escaped_part.js │ │ │ ├── escaped_start.js │ │ │ ├── math_zain_start.js │ │ │ ├── module_await.js │ │ │ ├── ethiopic_digits.js │ │ │ ├── valid_await.js │ │ │ ├── escaped_all.js │ │ │ ├── escaped_math_alef.js │ │ │ ├── escaped_math_dal_part.js │ │ │ ├── invalid-hex-escape-sequence.js │ │ │ ├── weierstrass_weierstrass.js │ │ │ ├── escaped_math_zain_start.js │ │ │ ├── invalid_var_await.module.js │ │ │ ├── escaped_math_kaf_lam.js │ │ │ ├── invalid_escaped_surrogate_pairs.js │ │ │ └── invalid_function_await.module.js │ │ ├── template-literals │ │ │ ├── dollar-sign.js │ │ │ ├── tagged.js │ │ │ ├── unclosed.js │ │ │ ├── untagged.js │ │ │ ├── octal-literal.js │ │ │ ├── invalid-escape.js │ │ │ ├── after-switch.js │ │ │ ├── new-expression.js │ │ │ ├── unclosed-nested.js │ │ │ ├── tagged-interpolation.js │ │ │ ├── unclosed-interpolation.js │ │ │ ├── invalid-hex-escape-sequence.js │ │ │ ├── strict-octal-literal.js │ │ │ └── line-terminators.source.js │ │ ├── arrow-function │ │ │ ├── migrated_0011.js │ │ │ ├── migrated_0015.js │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0016.js │ │ │ ├── migrated_0018.js │ │ │ ├── migrated_0020.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0012.js │ │ │ ├── migrated_0013.js │ │ │ ├── migrated_0019.js │ │ │ ├── arrow-with-only-rest.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0014.js │ │ │ ├── rest-without-arrow.js │ │ │ ├── invalid-duplicated-params.js │ │ │ ├── migrated_0017.js │ │ │ ├── array-binding-pattern │ │ │ │ └── elision.js │ │ │ ├── arrow-rest-forgetting-comma.js │ │ │ ├── arrow-with-multiple-rest.js │ │ │ ├── concise-body-in.js │ │ │ ├── invalid-line-terminator-arrow.js │ │ │ ├── param-with-rest-without-arrow.js │ │ │ └── non-arrow-param-followed-by-arrow.js │ │ ├── octal-integer-literal │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ └── migrated_0005.js │ │ ├── binary-integer-literal │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ └── migrated_0005.js │ │ ├── spread-element │ │ │ ├── call-spread.js │ │ │ ├── new-spread.js │ │ │ ├── call-spread-number.js │ │ │ ├── invalid-call-dot-dot.js │ │ │ ├── invalid-call-dots.js │ │ │ ├── call-spread-first.js │ │ │ ├── invalid-new-dot-dot.js │ │ │ ├── invalid-new-dots.js │ │ │ ├── new-spread-number.js │ │ │ ├── call-multi-spread.js │ │ │ ├── call-spread-default.js │ │ │ ├── invalid-call-spreads.js │ │ │ ├── invalid-new-spreads.js │ │ │ ├── new-spread-default.js │ │ │ ├── new-spread-first.js │ │ │ └── new-multi-spread.js │ │ ├── yield │ │ │ ├── yield-method.js │ │ │ ├── yield-array-pattern.js │ │ │ ├── yield-variable-declaration.js │ │ │ ├── yield-arg-let.js │ │ │ ├── yield-arg-minus.js │ │ │ ├── yield-arg-not.js │ │ │ ├── yield-arg-plus.js │ │ │ ├── yield-arrow-concise-body.js │ │ │ ├── yield-arrow-parameter-name.js │ │ │ ├── yield-generator-method.js │ │ │ ├── yield-lexical-declaration.js │ │ │ ├── ternary-yield.js │ │ │ ├── yield-arg-array.js │ │ │ ├── yield-arg-bitnot.js │ │ │ ├── yield-arg-group.js │ │ │ ├── yield-arg-new.js │ │ │ ├── yield-arg-object.js │ │ │ ├── yield-arg-plusplus.js │ │ │ ├── yield-arg-regexp1.js │ │ │ ├── yield-arg-regexp2.js │ │ │ ├── yield-arg-this.js │ │ │ ├── yield-arg-void.js │ │ │ ├── yield-arrow-function-body.js │ │ │ ├── yield-arrow-parameter-default.js │ │ │ ├── yield-binding-element.js │ │ │ ├── yield-binding-property.js │ │ │ ├── yield-catch-parameter.js │ │ │ ├── yield-function-declaration.js │ │ │ ├── yield-function-expression.js │ │ │ ├── yield-generator-declaration.js │ │ │ ├── yield-rest-parameter.js │ │ │ ├── invalid-yield-expression.js │ │ │ ├── yield-arg-class.js │ │ │ ├── yield-arg-delete.js │ │ │ ├── yield-arg-minusminus.js │ │ │ ├── yield-arg-typeof.js │ │ │ ├── yield-strict-method.js │ │ │ ├── yield-yield-expression.js │ │ │ ├── invalid-yield-binding-property.js │ │ │ ├── invalid-yield-generator-parameter.js │ │ │ ├── invalid-yield-object-methods.js │ │ │ ├── yield-arg-function.js │ │ │ ├── yield-arg-super.js │ │ │ ├── yield-function-expression-parameter.js │ │ │ └── yield-parameter-object-pattern.js │ │ ├── generator │ │ │ ├── generator-method.js │ │ │ ├── generator-expression.js │ │ │ ├── malformed-generator-method.js │ │ │ ├── generator-declaration.js │ │ │ ├── invalid-labelled-generator.js │ │ │ ├── malformed-generator-method-2.js │ │ │ ├── generator-expression-rest-param.js │ │ │ ├── generator-method-with-params.js │ │ │ ├── generator-method-with-yield.js │ │ │ └── incomplete-yield-delegate.js │ │ ├── lexical-declaration │ │ │ ├── let_assign.js │ │ │ ├── let_identifier.js │ │ │ ├── module_let.module.js │ │ │ ├── for_let_in.js │ │ │ ├── invalid_const_let.js │ │ │ ├── invalid_let_let.js │ │ │ ├── let_member.js │ │ │ ├── invalid_const_const.js │ │ │ ├── invalid_trailing_comma_1.js │ │ │ ├── invalid_trailing_comma_2.js │ │ │ ├── invalid_let_init.js │ │ │ ├── invalid_trailing_comma_3.js │ │ │ ├── invalid_trailing_comma_5.js │ │ │ ├── invalid_complex_binding_without_init.js │ │ │ ├── invalid_for_let_let.js │ │ │ ├── invalid_forin_let_let.js │ │ │ ├── invalid_let_declarations.js │ │ │ ├── invalid_let_forin.js │ │ │ └── invalid_trailing_comma_4.js │ │ ├── binding-pattern │ │ │ ├── array-pattern │ │ │ │ ├── hole.js │ │ │ │ ├── elision.js │ │ │ │ ├── rest.js │ │ │ │ ├── nested-pattern.js │ │ │ │ ├── rest.elision.js │ │ │ │ ├── tailing-hold.js │ │ │ │ ├── empty-pattern-var.js │ │ │ │ ├── var-for-in.js │ │ │ │ ├── var_let_array.js │ │ │ │ └── with-object-pattern.js │ │ │ └── object-pattern │ │ │ │ ├── elision.js │ │ │ │ ├── empty-var.js │ │ │ │ ├── nested.js │ │ │ │ ├── empty-fn.js │ │ │ │ ├── empty-lexical.js │ │ │ │ └── empty-for-lex.js │ │ ├── export-declaration │ │ │ ├── export-named-empty.js │ │ │ ├── export-var.js │ │ │ ├── export-default-array.js │ │ │ ├── export-from-batch.js │ │ │ ├── export-let-number.js │ │ │ ├── export-named-specifier.js │ │ │ ├── export-var-number.js │ │ │ ├── export-const-number.js │ │ │ ├── export-default-class.js │ │ │ ├── export-default-number.js │ │ │ ├── export-default-value.js │ │ │ ├── export-function.js │ │ │ ├── export-named-keyword-specifier.js │ │ │ ├── export-named-specifiers.js │ │ │ └── invalid-export-batch-token.module.js │ │ ├── import-declaration │ │ │ ├── import-module.js │ │ │ ├── import-default.js │ │ │ ├── import-jquery.js │ │ │ └── import-named-empty.js │ │ ├── method-definition │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── default-parameter-value │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0000.js │ │ │ └── migrated_0002.js │ │ ├── destructuring-assignment │ │ │ ├── array-pattern │ │ │ │ └── elision.js │ │ │ └── invalid-group-assignment.js │ │ ├── meta-property │ │ │ └── invalid-new-target.js │ │ ├── rest-parameter │ │ │ ├── function-declaration.js │ │ │ ├── arrow-rest-parameter-array.js │ │ │ ├── function-expression.js │ │ │ ├── invalid-setter-rest.js │ │ │ ├── object-method.js │ │ │ ├── rest-parameter-array.js │ │ │ ├── rest-parameter-object.js │ │ │ ├── arrow-rest-parameter-object.js │ │ │ └── object-shorthand-method.js │ │ ├── program │ │ │ └── module │ │ │ │ └── invalid-export-if.module.js │ │ ├── object-initialiser │ │ │ └── proto-shorthands.js │ │ └── object-literal-property-value-shorthand │ │ │ └── migrated_0000.js │ ├── declaration │ │ ├── let │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ └── migrated_0003.js │ │ ├── const │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ └── function │ │ │ ├── migrated_0012.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0013.js │ │ │ ├── dupe-param.js │ │ │ ├── migrated_0007.js │ │ │ └── migrated_0010.js │ ├── expression │ │ ├── postfix │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ └── migrated_0005.js │ │ ├── unary │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0011.js │ │ │ └── migrated_0012.js │ │ ├── additive │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── assignment │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0011.js │ │ │ ├── migrated_0012.js │ │ │ ├── migrated_0013.js │ │ │ └── migrated_0002.js │ │ ├── binary │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0012.js │ │ │ ├── migrated_0013.js │ │ │ ├── migrated_0014.js │ │ │ ├── migrated_0015.js │ │ │ ├── migrated_0016.js │ │ │ ├── migrated_0017.js │ │ │ ├── migrated_0011.js │ │ │ └── multiline_string.js │ │ ├── equality │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ └── migrated_0003.js │ │ ├── relational │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0006.js │ │ │ └── migrated_0005.js │ │ ├── binary-bitwise │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── binary-logical │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ └── migrated_0005.js │ │ ├── bitwise-shift │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── conditional │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── grouping │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0000.js │ │ ├── multiplicative │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ └── migrated_0002.js │ │ ├── primary │ │ │ ├── array │ │ │ │ ├── migrated_0000.js │ │ │ │ ├── migrated_0001.js │ │ │ │ ├── migrated_0007.js │ │ │ │ ├── migrated_0002.js │ │ │ │ ├── migrated_0003.js │ │ │ │ ├── migrated_0004.js │ │ │ │ ├── migrated_0005.js │ │ │ │ └── migrated_0006.js │ │ │ ├── object │ │ │ │ ├── migrated_0000.js │ │ │ │ ├── migrated_0001.js │ │ │ │ ├── migrated_0034.js │ │ │ │ ├── migrated_0037.js │ │ │ │ ├── migrated_0003.js │ │ │ │ ├── migrated_0004.js │ │ │ │ ├── migrated_0005.js │ │ │ │ ├── migrated_0006.js │ │ │ │ ├── migrated_0024.js │ │ │ │ ├── migrated_0025.js │ │ │ │ ├── migrated_0035.js │ │ │ │ ├── migrated_0038.js │ │ │ │ ├── migrated_0002.js │ │ │ │ ├── migrated_0007.js │ │ │ │ ├── migrated_0008.js │ │ │ │ ├── migrated_0010.js │ │ │ │ ├── migrated_0011.js │ │ │ │ ├── migrated_0012.js │ │ │ │ ├── migrated_0013.js │ │ │ │ ├── migrated_0014.js │ │ │ │ ├── migrated_0016.js │ │ │ │ ├── migrated_0026.js │ │ │ │ ├── migrated_0027.js │ │ │ │ ├── invalid-getter.js │ │ │ │ ├── invalid-setter1.js │ │ │ │ ├── migrated_0015.js │ │ │ │ ├── migrated_0029.js │ │ │ │ └── migrated_0030.js │ │ │ ├── literal │ │ │ │ ├── numeric │ │ │ │ │ ├── migrated_0000.js │ │ │ │ │ ├── migrated_0001.js │ │ │ │ │ ├── migrated_0002.js │ │ │ │ │ ├── migrated_0003.js │ │ │ │ │ ├── migrated_0004.js │ │ │ │ │ ├── migrated_0008.js │ │ │ │ │ ├── migrated_0018.js │ │ │ │ │ ├── migrated_0019.js │ │ │ │ │ ├── migrated_0021.js │ │ │ │ │ ├── migrated_0023.js │ │ │ │ │ ├── invalid_hex.js │ │ │ │ │ ├── migrated_0005.js │ │ │ │ │ ├── migrated_0009.js │ │ │ │ │ ├── migrated_0010.js │ │ │ │ │ ├── migrated_0011.js │ │ │ │ │ ├── migrated_0012.js │ │ │ │ │ ├── migrated_0013.js │ │ │ │ │ ├── migrated_0014.js │ │ │ │ │ ├── migrated_0015.js │ │ │ │ │ ├── migrated_0016.js │ │ │ │ │ ├── migrated_0017.js │ │ │ │ │ ├── migrated_0020.js │ │ │ │ │ ├── migrated_0022.js │ │ │ │ │ ├── migrated_0024.js │ │ │ │ │ ├── migrated_0006.js │ │ │ │ │ └── migrated_0007.js │ │ │ │ ├── string │ │ │ │ │ ├── invalid_hex.js │ │ │ │ │ ├── migrated_0000.js │ │ │ │ │ ├── migrated_0003.js │ │ │ │ │ ├── migrated_0006.js │ │ │ │ │ ├── migrated_0016.js │ │ │ │ │ ├── migrated_0018.js │ │ │ │ │ ├── invalid_escaped_hex.js │ │ │ │ │ ├── migrated_0007.js │ │ │ │ │ ├── migrated_0008.js │ │ │ │ │ ├── migrated_0009.js │ │ │ │ │ ├── migrated_0010.js │ │ │ │ │ ├── migrated_0011.js │ │ │ │ │ ├── migrated_0012.js │ │ │ │ │ ├── migrated_0013.js │ │ │ │ │ ├── migrated_0015.js │ │ │ │ │ └── migrated_0017.js │ │ │ │ └── regular-expression │ │ │ │ │ ├── migrated_0000.js │ │ │ │ │ └── migrated_0001.js │ │ │ ├── other │ │ │ │ ├── migrated_0000.js │ │ │ │ ├── migrated_0001.js │ │ │ │ ├── migrated_0003.js │ │ │ │ └── migrated_0002.js │ │ │ └── keyword │ │ │ │ ├── invalid-escaped-null.js │ │ │ │ └── invalid-escaped-true.js │ │ ├── left-hand-side │ │ │ ├── migrated_0000.js │ │ │ ├── migrated_0001.js │ │ │ ├── migrated_0002.js │ │ │ ├── migrated_0005.js │ │ │ ├── migrated_0019.js │ │ │ ├── migrated_0003.js │ │ │ ├── migrated_0004.js │ │ │ ├── migrated_0006.js │ │ │ ├── migrated_0007.js │ │ │ ├── migrated_0008.js │ │ │ ├── migrated_0009.js │ │ │ ├── migrated_0010.js │ │ │ ├── migrated_0020.js │ │ │ ├── migrated_0021.js │ │ │ ├── migrated_0022.js │ │ │ ├── migrated_0014.js │ │ │ ├── migrated_0015.js │ │ │ ├── migrated_0016.js │ │ │ └── let_object_computed.js │ │ └── complex │ │ │ └── migrated_0001.js │ ├── ESnext │ │ └── classProperties.js │ ├── es2017 │ │ ├── trailing-commas │ │ │ ├── invalid-empty-call.js │ │ │ ├── invalid-sequence.js │ │ │ ├── invalid-empty-arrow.js │ │ │ ├── trailing-comma-call.js │ │ │ ├── trailing-comma-new.js │ │ │ ├── invalid-rest.js │ │ │ ├── trailing-comma-spread.js │ │ │ ├── invalid-empty-method.js │ │ │ └── trailing-comma-arrow-single.js │ │ └── async │ │ │ ├── methods │ │ │ ├── async-method.js │ │ │ ├── async-method-number.js │ │ │ ├── class-async-get.js │ │ │ ├── async-method-computed.js │ │ │ ├── async-method-literal.js │ │ │ ├── class-async-method.js │ │ │ ├── class-async-set.js │ │ │ ├── invalid-async-generator.js │ │ │ ├── invalid-async-getter.js │ │ │ └── invalid-async-setter.js │ │ │ ├── arrows │ │ │ ├── async-arrow-no-arg.js │ │ │ ├── async-arrow-rest.js │ │ │ ├── async-arrow-yield.js │ │ │ ├── async-arrow-one-arg-concise.js │ │ │ ├── async-arrow-one-arg.js │ │ │ └── async-arrow-trailing-comma.js │ │ │ ├── regular-identifier │ │ │ ├── call-async.js │ │ │ ├── async-arrow-parameter1.js │ │ │ └── call-async-await.js │ │ │ └── functions │ │ │ ├── async-if.js │ │ │ └── invalid-async-while.js │ ├── es2018 │ │ ├── rest-property │ │ │ ├── shallow-clone.js │ │ │ └── destructuring-mirror.js │ │ ├── spread-property │ │ │ ├── shallow-clone.js │ │ │ ├── object-merging.js │ │ │ └── properties-overriding.js │ │ └── dynamic-import │ │ │ ├── invalid-new-import-call.js │ │ │ └── invalid-non-callee.js │ └── automatic-semicolon-insertion │ │ ├── migrated_0000.js │ │ ├── migrated_0001.js │ │ ├── migrated_0002.js │ │ ├── migrated_0003.js │ │ └── migrated_0013.js └── 3rdparty │ └── syntax │ └── .gitignore └── MANIFEST.in /LICENSE: -------------------------------------------------------------------------------- 1 | LICENSE.BSD -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | README.rst -------------------------------------------------------------------------------- /test/fixtures/tokenize/empty.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0022.js: -------------------------------------------------------------------------------- 1 | // -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0023.js: -------------------------------------------------------------------------------- 1 | // -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0010.js: -------------------------------------------------------------------------------- 1 | /42/ -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0013.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0014.js: -------------------------------------------------------------------------------- 1 | /42 -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-element.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-no-closing.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0003.js: -------------------------------------------------------------------------------- 1 | /*42*/ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0012.js: -------------------------------------------------------------------------------- 1 | /*a b*/ 42 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0015.js: -------------------------------------------------------------------------------- 1 | // one\n -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0021.js: -------------------------------------------------------------------------------- 1 | // 2 | 42 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0024.js: -------------------------------------------------------------------------------- 1 | /**/42 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0025.js: -------------------------------------------------------------------------------- 1 | 42/**/ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0036.js: -------------------------------------------------------------------------------- 1 | comment -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0039.js: -------------------------------------------------------------------------------- 1 | comment -------------------------------------------------------------------------------- /test/fixtures/declaration/let/migrated_0000.js: -------------------------------------------------------------------------------- 1 | let x -------------------------------------------------------------------------------- /test/fixtures/expression/postfix/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x++ -------------------------------------------------------------------------------- /test/fixtures/expression/postfix/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x-- -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0000.js: -------------------------------------------------------------------------------- 1 | ++x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0001.js: -------------------------------------------------------------------------------- 1 | --x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0002.js: -------------------------------------------------------------------------------- 1 | ++eval -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0003.js: -------------------------------------------------------------------------------- 1 | --eval -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0006.js: -------------------------------------------------------------------------------- 1 | +x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0007.js: -------------------------------------------------------------------------------- 1 | -x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0008.js: -------------------------------------------------------------------------------- 1 | ~x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0009.js: -------------------------------------------------------------------------------- 1 | !x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0010.js: -------------------------------------------------------------------------------- 1 | void x -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-00.js: -------------------------------------------------------------------------------- 1 | "\x"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-01.js: -------------------------------------------------------------------------------- 1 | "\x0"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-02.js: -------------------------------------------------------------------------------- 1 | "\xx"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-03.js: -------------------------------------------------------------------------------- 1 | "\u"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-04.js: -------------------------------------------------------------------------------- 1 | "\u0"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-05.js: -------------------------------------------------------------------------------- 1 | "\ux"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-08.js: -------------------------------------------------------------------------------- 1 | "\8"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-09.js: -------------------------------------------------------------------------------- 1 | "\9"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0003.js: -------------------------------------------------------------------------------- 1 | 3in [] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0011.js: -------------------------------------------------------------------------------- 1 | 0o1a -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0015.js: -------------------------------------------------------------------------------- 1 | 0o18 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0016.js: -------------------------------------------------------------------------------- 1 | 0O1a -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0018.js: -------------------------------------------------------------------------------- 1 | 0b1a -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0020.js: -------------------------------------------------------------------------------- 1 | 0b18 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0021.js: -------------------------------------------------------------------------------- 1 | 0b12 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0023.js: -------------------------------------------------------------------------------- 1 | 0B1a -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0025.js: -------------------------------------------------------------------------------- 1 | 0B18 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0026.js: -------------------------------------------------------------------------------- 1 | 0B12 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0028.js: -------------------------------------------------------------------------------- 1 | 0O18 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0029.js: -------------------------------------------------------------------------------- 1 | 3in[] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0030.js: -------------------------------------------------------------------------------- 1 | 0x3in[] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0039.js: -------------------------------------------------------------------------------- 1 | /test -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0045.js: -------------------------------------------------------------------------------- 1 | 3 = 4 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0059.js: -------------------------------------------------------------------------------- 1 | 1 + { -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0065.js: -------------------------------------------------------------------------------- 1 | i #= 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0067.js: -------------------------------------------------------------------------------- 1 | +i = 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0068.js: -------------------------------------------------------------------------------- 1 | 1 + ( -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0084.js: -------------------------------------------------------------------------------- 1 | ({get -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0095.js: -------------------------------------------------------------------------------- 1 | () <= 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0096.js: -------------------------------------------------------------------------------- 1 | () ? 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0097.js: -------------------------------------------------------------------------------- 1 | () + 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0112.js: -------------------------------------------------------------------------------- 1 | a b; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0113.js: -------------------------------------------------------------------------------- 1 | if.a; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0114.js: -------------------------------------------------------------------------------- 1 | a if; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0115.js: -------------------------------------------------------------------------------- 1 | a enum; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0117.js: -------------------------------------------------------------------------------- 1 | break 1; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0120.js: -------------------------------------------------------------------------------- 1 | throw -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0121.js: -------------------------------------------------------------------------------- 1 | throw; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0131.js: -------------------------------------------------------------------------------- 1 | for(;;) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0132.js: -------------------------------------------------------------------------------- 1 | with(x) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0133.js: -------------------------------------------------------------------------------- 1 | try { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0140.js: -------------------------------------------------------------------------------- 1 | const x; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0149.js: -------------------------------------------------------------------------------- 1 | /*hello -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0151.js: -------------------------------------------------------------------------------- 1 | 2 | ] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0153.js: -------------------------------------------------------------------------------- 1 | 2 | ] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0154.js: -------------------------------------------------------------------------------- 1 | 2 | ] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0171.js: -------------------------------------------------------------------------------- 1 | return -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0172.js: -------------------------------------------------------------------------------- 1 | break -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0173.js: -------------------------------------------------------------------------------- 1 | continue -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0254.js: -------------------------------------------------------------------------------- 1 | const -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0255.js: -------------------------------------------------------------------------------- 1 | { ; ; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0261.js: -------------------------------------------------------------------------------- 1 | class -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0262.js: -------------------------------------------------------------------------------- 1 | class -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0263.js: -------------------------------------------------------------------------------- 1 | class; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0265.js: -------------------------------------------------------------------------------- 1 | class A -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0267.js: -------------------------------------------------------------------------------- 1 | class A; -------------------------------------------------------------------------------- /test/fixtures/statement/block/migrated_0000.js: -------------------------------------------------------------------------------- 1 | { foo } -------------------------------------------------------------------------------- /test/fixtures/statement/expression/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x -------------------------------------------------------------------------------- /test/fixtures/tokenize/after_if.js: -------------------------------------------------------------------------------- 1 | if(x){} /y/.test(z) -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0000.js: -------------------------------------------------------------------------------- 1 | tokenize(/42/) -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0003.js: -------------------------------------------------------------------------------- 1 | (false) /42/ -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0013.tokens.json: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0016.js: -------------------------------------------------------------------------------- 1 | this / 100; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0013.js: -------------------------------------------------------------------------------- 1 | return -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0045.js: -------------------------------------------------------------------------------- 1 | 1 = 2 -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README.rst 2 | include LICENSE.BSD 3 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_assign.js: -------------------------------------------------------------------------------- 1 | x **= y; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_bitnot.js: -------------------------------------------------------------------------------- 1 | x ** ~y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_minus.js: -------------------------------------------------------------------------------- 1 | x ** -y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_operator.js: -------------------------------------------------------------------------------- 1 | x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_plusplus.js: -------------------------------------------------------------------------------- 1 | x ** ++y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_void.js: -------------------------------------------------------------------------------- 1 | x ** void y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/identifier/gujarati_zha.js: -------------------------------------------------------------------------------- 1 | ૹ 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0011.js: -------------------------------------------------------------------------------- 1 | (a) => 00 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0015.js: -------------------------------------------------------------------------------- 1 | (x => x) -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0004.js: -------------------------------------------------------------------------------- 1 | class A {a(){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/invalid_id_smp.js: -------------------------------------------------------------------------------- 1 | var 🀒 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/math_dal_part.js: -------------------------------------------------------------------------------- 1 | var _𞸃 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/math_kaf_lam.js: -------------------------------------------------------------------------------- 1 | var 𞸊𞸋 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/weierstrass.js: -------------------------------------------------------------------------------- 1 | var ℘; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/octal-integer-literal/migrated_0000.js: -------------------------------------------------------------------------------- 1 | 00 -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/octal-literal.js: -------------------------------------------------------------------------------- 1 | `\00`; -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-empty-selfclosing.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-start-member.js: -------------------------------------------------------------------------------- 1 | <.abc /> 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-start-namespace.js: -------------------------------------------------------------------------------- 1 | <:path /> 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-member.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-pair.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-selfclosing.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/JSX/template-literal.js: -------------------------------------------------------------------------------- 1 | {`${1}`} 2 | -------------------------------------------------------------------------------- /test/fixtures/comment/html-comment.module.js: -------------------------------------------------------------------------------- 1 | a 0) {} -------------------------------------------------------------------------------- /test/fixtures/declaration/let/migrated_0001.js: -------------------------------------------------------------------------------- 1 | { let x } -------------------------------------------------------------------------------- /test/fixtures/expression/additive/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x + y -------------------------------------------------------------------------------- /test/fixtures/expression/additive/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x - y -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x = 42 -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x + y + z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x - y + z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x + y - z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x - y - z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x + y * z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0005.js: -------------------------------------------------------------------------------- 1 | x + y / z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0006.js: -------------------------------------------------------------------------------- 1 | x - y % z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0007.js: -------------------------------------------------------------------------------- 1 | x * y * z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0008.js: -------------------------------------------------------------------------------- 1 | x * y / z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0009.js: -------------------------------------------------------------------------------- 1 | x * y % z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0010.js: -------------------------------------------------------------------------------- 1 | x % y * z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0012.js: -------------------------------------------------------------------------------- 1 | x | y | z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0013.js: -------------------------------------------------------------------------------- 1 | x & y & z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0014.js: -------------------------------------------------------------------------------- 1 | x ^ y ^ z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0015.js: -------------------------------------------------------------------------------- 1 | x & y | z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0016.js: -------------------------------------------------------------------------------- 1 | x | y ^ z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0017.js: -------------------------------------------------------------------------------- 1 | x | y & z -------------------------------------------------------------------------------- /test/fixtures/expression/equality/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x == y -------------------------------------------------------------------------------- /test/fixtures/expression/equality/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x != y -------------------------------------------------------------------------------- /test/fixtures/expression/equality/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x === y -------------------------------------------------------------------------------- /test/fixtures/expression/equality/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x !== y -------------------------------------------------------------------------------- /test/fixtures/expression/postfix/migrated_0002.js: -------------------------------------------------------------------------------- 1 | eval++ -------------------------------------------------------------------------------- /test/fixtures/expression/postfix/migrated_0003.js: -------------------------------------------------------------------------------- 1 | eval-- -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x < y -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x > y -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x <= y -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x >= y -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x in y -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0004.js: -------------------------------------------------------------------------------- 1 | ++arguments -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0005.js: -------------------------------------------------------------------------------- 1 | --arguments -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0011.js: -------------------------------------------------------------------------------- 1 | delete x -------------------------------------------------------------------------------- /test/fixtures/expression/unary/migrated_0012.js: -------------------------------------------------------------------------------- 1 | typeof x -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-06.js: -------------------------------------------------------------------------------- 1 | "\u00"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/GH-1106-07.js: -------------------------------------------------------------------------------- 1 | "\u000"; 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0035.js: -------------------------------------------------------------------------------- 1 | var x = /(s/g -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0040.js: -------------------------------------------------------------------------------- 1 | /test 2 | / -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0046.js: -------------------------------------------------------------------------------- 1 | func() = 4 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0047.js: -------------------------------------------------------------------------------- 1 | (1 + 1) = 10 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0060.js: -------------------------------------------------------------------------------- 1 | 1 + { t:t -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0061.js: -------------------------------------------------------------------------------- 1 | 1 + { t:t, -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0064.js: -------------------------------------------------------------------------------- 1 | var if = 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0066.js: -------------------------------------------------------------------------------- 1 | i + 2 = 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0071.js: -------------------------------------------------------------------------------- 1 | { set 1 } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0072.js: -------------------------------------------------------------------------------- 1 | { get 2 } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0080.js: -------------------------------------------------------------------------------- 1 | ({[a,b]:0}) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0082.js: -------------------------------------------------------------------------------- 1 | ({(a):0}) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0083.js: -------------------------------------------------------------------------------- 1 | ({get{a}:0}) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0085.js: -------------------------------------------------------------------------------- 1 | ((a)) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0092.js: -------------------------------------------------------------------------------- 1 | (a, a) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0098.js: -------------------------------------------------------------------------------- 1 | (10) => 00 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0102.js: -------------------------------------------------------------------------------- 1 | p = { q/ } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0103.js: -------------------------------------------------------------------------------- 1 | p = { "q"/ } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0116.js: -------------------------------------------------------------------------------- 1 | break 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0118.js: -------------------------------------------------------------------------------- 1 | continue 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0119.js: -------------------------------------------------------------------------------- 1 | continue 2; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0122.js: -------------------------------------------------------------------------------- 1 | throw 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0127.js: -------------------------------------------------------------------------------- 1 | if(false) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0130.js: -------------------------------------------------------------------------------- 1 | while(false) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0144.js: -------------------------------------------------------------------------------- 1 | new X()."s" -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0148.js: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | * -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0150.js: -------------------------------------------------------------------------------- 1 | /*hello * -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0155.js: -------------------------------------------------------------------------------- 1 | // 2 | ] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0156.js: -------------------------------------------------------------------------------- 1 | // 2 | ] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0157.js: -------------------------------------------------------------------------------- 1 | /a\ 2 | / -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0158.js: -------------------------------------------------------------------------------- 1 | // 2 | ] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0159.js: -------------------------------------------------------------------------------- 1 | /* 2 | */] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0160.js: -------------------------------------------------------------------------------- 1 | /* 2 | */] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0161.js: -------------------------------------------------------------------------------- 1 | /* 2 | */] -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0175.js: -------------------------------------------------------------------------------- 1 | do { x } * -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0266.js: -------------------------------------------------------------------------------- 1 | class A { -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0268.js: -------------------------------------------------------------------------------- 1 | class A {a:0} -------------------------------------------------------------------------------- /test/fixtures/statement/debugger/migrated_0000.js: -------------------------------------------------------------------------------- 1 | debugger; -------------------------------------------------------------------------------- /test/fixtures/statement/expression/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x, y -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0008.js: -------------------------------------------------------------------------------- 1 | for(;;); -------------------------------------------------------------------------------- /test/fixtures/statement/throw/migrated_0000.js: -------------------------------------------------------------------------------- 1 | throw x; -------------------------------------------------------------------------------- /test/fixtures/statement/throw/migrated_0001.js: -------------------------------------------------------------------------------- 1 | throw x * y -------------------------------------------------------------------------------- /test/fixtures/statement/variable/migrated_0000.js: -------------------------------------------------------------------------------- 1 | var x -------------------------------------------------------------------------------- /test/fixtures/statement/variable/migrated_0001.js: -------------------------------------------------------------------------------- 1 | var x, y; -------------------------------------------------------------------------------- /test/fixtures/statement/variable/var_let.js: -------------------------------------------------------------------------------- 1 | var let; 2 | -------------------------------------------------------------------------------- /test/fixtures/tokenize/line_terminators.tokens.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0001.js: -------------------------------------------------------------------------------- 1 | if (false) { /42/ } -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0002.js: -------------------------------------------------------------------------------- 1 | with (false) /42/ -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0004.js: -------------------------------------------------------------------------------- 1 | function f(){} /42/ -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0005.js: -------------------------------------------------------------------------------- 1 | function(){} /42 -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0007.js: -------------------------------------------------------------------------------- 1 | [function(){} /42] -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0005.js: -------------------------------------------------------------------------------- 1 | f(a b c); -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0007.js: -------------------------------------------------------------------------------- 1 | f({} b c); -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0012.js: -------------------------------------------------------------------------------- 1 | x = { y: z; } -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_delete.js: -------------------------------------------------------------------------------- 1 | x ** delete y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_minusminus.js: -------------------------------------------------------------------------------- 1 | x ** --y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_precedence.js: -------------------------------------------------------------------------------- 1 | x * y ** -z 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/exp_typeof.js: -------------------------------------------------------------------------------- 1 | x ** typeof y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_bitnot_exp.js: -------------------------------------------------------------------------------- 1 | ~x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_minus_exp.js: -------------------------------------------------------------------------------- 1 | -x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_not_exp.js: -------------------------------------------------------------------------------- 1 | !x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_plus_exp.js: -------------------------------------------------------------------------------- 1 | +x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0000.js: -------------------------------------------------------------------------------- 1 | () => "test" -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0001.js: -------------------------------------------------------------------------------- 1 | e => "test" -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0002.js: -------------------------------------------------------------------------------- 1 | (e) => "test" -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0004.js: -------------------------------------------------------------------------------- 1 | e => { 42; } -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0008.js: -------------------------------------------------------------------------------- 1 | (x=1) => x * x -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0009.js: -------------------------------------------------------------------------------- 1 | eval => 42 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0016.js: -------------------------------------------------------------------------------- 1 | x => y => 42 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0018.js: -------------------------------------------------------------------------------- 1 | foo(() => {}) -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0020.js: -------------------------------------------------------------------------------- 1 | (sun) => earth -------------------------------------------------------------------------------- /test/fixtures/ES6/binary-integer-literal/migrated_0000.js: -------------------------------------------------------------------------------- 1 | 0b0 -------------------------------------------------------------------------------- /test/fixtures/ES6/binary-integer-literal/migrated_0001.js: -------------------------------------------------------------------------------- 1 | 0b1 -------------------------------------------------------------------------------- /test/fixtures/ES6/binary-integer-literal/migrated_0002.js: -------------------------------------------------------------------------------- 1 | 0b10 -------------------------------------------------------------------------------- /test/fixtures/ES6/binary-integer-literal/migrated_0003.js: -------------------------------------------------------------------------------- 1 | 0B0 -------------------------------------------------------------------------------- /test/fixtures/ES6/binary-integer-literal/migrated_0004.js: -------------------------------------------------------------------------------- 1 | 0B1 -------------------------------------------------------------------------------- /test/fixtures/ES6/binary-integer-literal/migrated_0005.js: -------------------------------------------------------------------------------- 1 | 0B10 -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0001.js: -------------------------------------------------------------------------------- 1 | class A extends 0 {} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0005.js: -------------------------------------------------------------------------------- 1 | class A {a(){}b(){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0006.js: -------------------------------------------------------------------------------- 1 | class A {a(){};b(){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0007.js: -------------------------------------------------------------------------------- 1 | class A {a(){};b(){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0008.js: -------------------------------------------------------------------------------- 1 | class A {;a(){};b(){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0009.js: -------------------------------------------------------------------------------- 1 | class A {static(){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0012.js: -------------------------------------------------------------------------------- 1 | class A {static a(){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0017.js: -------------------------------------------------------------------------------- 1 | class A {prototype(){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0024.js: -------------------------------------------------------------------------------- 1 | (class extends 0{}) -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0025.js: -------------------------------------------------------------------------------- 1 | (class A extends 0{}) -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0026.js: -------------------------------------------------------------------------------- 1 | class A {a(eval){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-let.js: -------------------------------------------------------------------------------- 1 | for (x of let) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/let-of-of.js: -------------------------------------------------------------------------------- 1 | for (let of of xyz); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/dakuten_handakuten.js: -------------------------------------------------------------------------------- 1 | ゛+ ゜ 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_part.js: -------------------------------------------------------------------------------- 1 | var A\u{42}C; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_start.js: -------------------------------------------------------------------------------- 1 | var \u{41}BC; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/math_zain_start.js: -------------------------------------------------------------------------------- 1 | var 𞸆_$ 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/module_await.js: -------------------------------------------------------------------------------- 1 | await = 0; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/octal-integer-literal/migrated_0001.js: -------------------------------------------------------------------------------- 1 | 0o0 -------------------------------------------------------------------------------- /test/fixtures/ES6/octal-integer-literal/migrated_0003.js: -------------------------------------------------------------------------------- 1 | 0o2 -------------------------------------------------------------------------------- /test/fixtures/ES6/octal-integer-literal/migrated_0004.js: -------------------------------------------------------------------------------- 1 | 0o12 -------------------------------------------------------------------------------- /test/fixtures/ES6/octal-integer-literal/migrated_0005.js: -------------------------------------------------------------------------------- 1 | 0O0 -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/call-spread.js: -------------------------------------------------------------------------------- 1 | f(...g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/new-spread.js: -------------------------------------------------------------------------------- 1 | new f(...g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/invalid-escape.js: -------------------------------------------------------------------------------- 1 | `\1`; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-method.js: -------------------------------------------------------------------------------- 1 | ({ yield() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-empty-entity1.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-empty-entity2.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-invalid-entity.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-primary.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-x-entity.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/container-numeric-literal.js: -------------------------------------------------------------------------------- 1 | {1} 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-incomplete-namespace.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-match.js: -------------------------------------------------------------------------------- 1 | node = 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-member-incomplete.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/nested-elements.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-selfclosing-linefeed.js: -------------------------------------------------------------------------------- 1 | 3 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0000.js: -------------------------------------------------------------------------------- 1 | /* block comment */ 42 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0006.js: -------------------------------------------------------------------------------- 1 | 42 /*The*/ /*Answer*/ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0007.js: -------------------------------------------------------------------------------- 1 | 42 /*the*/ /*answer*/ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0008.js: -------------------------------------------------------------------------------- 1 | 42 /* the * answer */ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0009.js: -------------------------------------------------------------------------------- 1 | 42 /* The * answer */ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0016.js: -------------------------------------------------------------------------------- 1 | // line comment 2 | 42 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0018.js: -------------------------------------------------------------------------------- 1 | // Hello, world! 2 | 42 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0019.js: -------------------------------------------------------------------------------- 1 | // Hello, world! 2 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0020.js: -------------------------------------------------------------------------------- 1 | // Hallo, world! 2 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0043.js: -------------------------------------------------------------------------------- 1 | /* not comment*/; i-->0 -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0052.js: -------------------------------------------------------------------------------- 1 | /**/ function a() {} 2 | -------------------------------------------------------------------------------- /test/fixtures/declaration/const/migrated_0000.js: -------------------------------------------------------------------------------- 1 | const x = 42 -------------------------------------------------------------------------------- /test/fixtures/declaration/let/migrated_0002.js: -------------------------------------------------------------------------------- 1 | { let x = 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0001.js: -------------------------------------------------------------------------------- 1 | eval = 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x *= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x /= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0005.js: -------------------------------------------------------------------------------- 1 | x %= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0006.js: -------------------------------------------------------------------------------- 1 | x += 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0007.js: -------------------------------------------------------------------------------- 1 | x -= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0008.js: -------------------------------------------------------------------------------- 1 | x <<= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0009.js: -------------------------------------------------------------------------------- 1 | x >>= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0010.js: -------------------------------------------------------------------------------- 1 | x >>>= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0011.js: -------------------------------------------------------------------------------- 1 | x &= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0012.js: -------------------------------------------------------------------------------- 1 | x ^= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0013.js: -------------------------------------------------------------------------------- 1 | x |= 42 -------------------------------------------------------------------------------- /test/fixtures/expression/binary-bitwise/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x & y -------------------------------------------------------------------------------- /test/fixtures/expression/binary-bitwise/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x ^ y -------------------------------------------------------------------------------- /test/fixtures/expression/binary-bitwise/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x | y -------------------------------------------------------------------------------- /test/fixtures/expression/binary-logical/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x || y -------------------------------------------------------------------------------- /test/fixtures/expression/binary-logical/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x && y -------------------------------------------------------------------------------- /test/fixtures/expression/binary/migrated_0011.js: -------------------------------------------------------------------------------- 1 | x << y << z -------------------------------------------------------------------------------- /test/fixtures/expression/bitwise-shift/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x << y -------------------------------------------------------------------------------- /test/fixtures/expression/bitwise-shift/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x >> y -------------------------------------------------------------------------------- /test/fixtures/expression/bitwise-shift/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x >>> y -------------------------------------------------------------------------------- /test/fixtures/expression/conditional/migrated_0000.js: -------------------------------------------------------------------------------- 1 | y ? 1 : 2 -------------------------------------------------------------------------------- /test/fixtures/expression/grouping/migrated_0001.js: -------------------------------------------------------------------------------- 1 | 4 + 5 << (6) -------------------------------------------------------------------------------- /test/fixtures/expression/multiplicative/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x * y -------------------------------------------------------------------------------- /test/fixtures/expression/multiplicative/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x / y -------------------------------------------------------------------------------- /test/fixtures/expression/multiplicative/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x % y -------------------------------------------------------------------------------- /test/fixtures/expression/postfix/migrated_0004.js: -------------------------------------------------------------------------------- 1 | arguments++ -------------------------------------------------------------------------------- /test/fixtures/expression/postfix/migrated_0005.js: -------------------------------------------------------------------------------- 1 | arguments-- -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x = [] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x = [ ] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0007.js: -------------------------------------------------------------------------------- 1 | 日本語 = [] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x = {} -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x = { } -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0006.js: -------------------------------------------------------------------------------- 1 | x < y < z -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0031.js: -------------------------------------------------------------------------------- 1 | "Hello 2 | World" -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0062.js: -------------------------------------------------------------------------------- 1 | var x = / 2 | / -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0063.js: -------------------------------------------------------------------------------- 1 | var x = " 2 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0069.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | { -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0074.js: -------------------------------------------------------------------------------- 1 | ({ set s(.) { } }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0076.js: -------------------------------------------------------------------------------- 1 | ({ set: s() { } }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0081.js: -------------------------------------------------------------------------------- 1 | ({get[a,b]:0}) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0086.js: -------------------------------------------------------------------------------- 1 | (a, (b)) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0099.js: -------------------------------------------------------------------------------- 1 | (10, 20) => 00 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0104.js: -------------------------------------------------------------------------------- 1 | function t(if) { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0111.js: -------------------------------------------------------------------------------- 1 | function if() { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0124.js: -------------------------------------------------------------------------------- 1 | for ((i in {})); -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0125.js: -------------------------------------------------------------------------------- 1 | for (i + 1 in {}); -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0126.js: -------------------------------------------------------------------------------- 1 | for (+i in {}); -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0138.js: -------------------------------------------------------------------------------- 1 | const x = 12, y; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0139.js: -------------------------------------------------------------------------------- 1 | const x, y = 12; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0146.js: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | 4 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0170.js: -------------------------------------------------------------------------------- 1 | try { } catch() {} -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0009.js: -------------------------------------------------------------------------------- 1 | for(;;){} -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0010.js: -------------------------------------------------------------------------------- 1 | for(x = 0;;); -------------------------------------------------------------------------------- /test/fixtures/statement/switch/migrated_0000.js: -------------------------------------------------------------------------------- 1 | switch (x) {} -------------------------------------------------------------------------------- /test/fixtures/statement/variable/migrated_0002.js: -------------------------------------------------------------------------------- 1 | var x = 42 -------------------------------------------------------------------------------- /test/fixtures/statement/with/migrated_0000.js: -------------------------------------------------------------------------------- 1 | with (x) foo = bar -------------------------------------------------------------------------------- /test/fixtures/statement/with/unterminated-with.js: -------------------------------------------------------------------------------- 1 | with (x 2 | -------------------------------------------------------------------------------- /test/fixtures/tokenize/line_terminators.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/fixtures/tokenize/migrated_0008.js: -------------------------------------------------------------------------------- 1 | ;function f(){} /42/ -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0001.js: -------------------------------------------------------------------------------- 1 | var foo = 1; /* -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0002.js: -------------------------------------------------------------------------------- 1 | /* var fo0 = 1; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0003.js: -------------------------------------------------------------------------------- 1 | /* /* if(foo) {} -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0004.js: -------------------------------------------------------------------------------- 1 | /* foo 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0044.js: -------------------------------------------------------------------------------- 1 | foo("bar") = baz -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0048.js: -------------------------------------------------------------------------------- 1 | for (5 in []) {} -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0049.js: -------------------------------------------------------------------------------- 1 | var x = /[P QR]/\g -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_void_exp.js: -------------------------------------------------------------------------------- 1 | void x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0003.js: -------------------------------------------------------------------------------- 1 | (a, b) => "test" -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0006.js: -------------------------------------------------------------------------------- 1 | e => { label: 42 } -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0007.js: -------------------------------------------------------------------------------- 1 | (a, b) => { 42; } -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0010.js: -------------------------------------------------------------------------------- 1 | arguments => 42 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0012.js: -------------------------------------------------------------------------------- 1 | (eval, a) => 42 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0013.js: -------------------------------------------------------------------------------- 1 | (eval = 10) => 42 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0019.js: -------------------------------------------------------------------------------- 1 | foo((x, y) => {}) -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0013.js: -------------------------------------------------------------------------------- 1 | class A {static [a](){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0015.js: -------------------------------------------------------------------------------- 1 | class A {static static(){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0016.js: -------------------------------------------------------------------------------- 1 | var x = class A extends 0{} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0018.js: -------------------------------------------------------------------------------- 1 | class A {constructor(){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-with-let.js: -------------------------------------------------------------------------------- 1 | for (let z of list); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-with-var.js: -------------------------------------------------------------------------------- 1 | for (var x of list); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-lhs-init.js: -------------------------------------------------------------------------------- 1 | for (this of that); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid_let_let.js: -------------------------------------------------------------------------------- 1 | for (let let of x); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/unexpected-number.js: -------------------------------------------------------------------------------- 1 | for (const of 42); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/generator-method.js: -------------------------------------------------------------------------------- 1 | ({ *foo() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/ethiopic_digits.js: -------------------------------------------------------------------------------- 1 | var _፩፪፫፬፭፮፯፰፱ 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/valid_await.js: -------------------------------------------------------------------------------- 1 | var await; (await); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/let_assign.js: -------------------------------------------------------------------------------- 1 | let = 42; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/let_identifier.js: -------------------------------------------------------------------------------- 1 | let; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/module_let.module.js: -------------------------------------------------------------------------------- 1 | let x 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/call-spread-number.js: -------------------------------------------------------------------------------- 1 | f(....5); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/invalid-call-dot-dot.js: -------------------------------------------------------------------------------- 1 | f(..g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/invalid-call-dots.js: -------------------------------------------------------------------------------- 1 | f(....g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/after-switch.js: -------------------------------------------------------------------------------- 1 | switch `test` -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/new-expression.js: -------------------------------------------------------------------------------- 1 | new raw`42` -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-array-pattern.js: -------------------------------------------------------------------------------- 1 | ([yield] = x) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-variable-declaration.js: -------------------------------------------------------------------------------- 1 | var yield; 2 | -------------------------------------------------------------------------------- /test/fixtures/ESnext/classProperties.js: -------------------------------------------------------------------------------- 1 | class A {a=1;static b=2;} -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-expression.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-null-value.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-spread.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/container-series.js: -------------------------------------------------------------------------------- 1 | {x}{y}{z} 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/empty-expression-container.js: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-attribute-value-trail.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-match-member.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/null-attribute-value.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-namespace-pair.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-selfclosing-whitespace.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0004.js: -------------------------------------------------------------------------------- 1 | (a + /* assignmenr */b ) * c -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0005.js: -------------------------------------------------------------------------------- 1 | /* assignmenr */ 2 | a = b -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0042.js: -------------------------------------------------------------------------------- 1 | /* block comment */--> comment -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0045.js: -------------------------------------------------------------------------------- 1 | /*Venus*/ debugger; // Mars -------------------------------------------------------------------------------- /test/fixtures/declaration/const/migrated_0001.js: -------------------------------------------------------------------------------- 1 | { const x = 42 } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0012.js: -------------------------------------------------------------------------------- 1 | (function(){}) -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/invalid-empty-call.js: -------------------------------------------------------------------------------- 1 | f(,); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/invalid-sequence.js: -------------------------------------------------------------------------------- 1 | (x,y,); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2018/rest-property/shallow-clone.js: -------------------------------------------------------------------------------- 1 | let { ...x } = y; -------------------------------------------------------------------------------- /test/fixtures/es2018/spread-property/shallow-clone.js: -------------------------------------------------------------------------------- 1 | x = { ...y } -------------------------------------------------------------------------------- /test/fixtures/expression/additive/migrated_0002.js: -------------------------------------------------------------------------------- 1 | "use strict" + 42 -------------------------------------------------------------------------------- /test/fixtures/expression/assignment/migrated_0002.js: -------------------------------------------------------------------------------- 1 | arguments = 42 -------------------------------------------------------------------------------- /test/fixtures/expression/binary-logical/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x || y || z -------------------------------------------------------------------------------- /test/fixtures/expression/binary-logical/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x && y && z -------------------------------------------------------------------------------- /test/fixtures/expression/binary-logical/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x || y && z -------------------------------------------------------------------------------- /test/fixtures/expression/binary-logical/migrated_0005.js: -------------------------------------------------------------------------------- 1 | x || y ^ z -------------------------------------------------------------------------------- /test/fixtures/expression/binary/multiline_string.js: -------------------------------------------------------------------------------- 1 | '\ 2 | ' + bar -------------------------------------------------------------------------------- /test/fixtures/expression/conditional/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x && y ? 1 : 2 -------------------------------------------------------------------------------- /test/fixtures/expression/conditional/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x = (0) ? 1 : 2 -------------------------------------------------------------------------------- /test/fixtures/expression/grouping/migrated_0000.js: -------------------------------------------------------------------------------- 1 | (1) + (2 ) + 3 -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0000.js: -------------------------------------------------------------------------------- 1 | new Button -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0001.js: -------------------------------------------------------------------------------- 1 | new Button() -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0002.js: -------------------------------------------------------------------------------- 1 | new new foo -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0005.js: -------------------------------------------------------------------------------- 1 | new foo[bar] -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0019.js: -------------------------------------------------------------------------------- 1 | universe.if -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x = [ 42 ] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x = [ 42, ] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x = [ ,, 42 ] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0000.js: -------------------------------------------------------------------------------- 1 | 0 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0001.js: -------------------------------------------------------------------------------- 1 | 42 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0002.js: -------------------------------------------------------------------------------- 1 | 3 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0003.js: -------------------------------------------------------------------------------- 1 | 5 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0004.js: -------------------------------------------------------------------------------- 1 | .14 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0008.js: -------------------------------------------------------------------------------- 1 | 0x0 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0018.js: -------------------------------------------------------------------------------- 1 | 02 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0019.js: -------------------------------------------------------------------------------- 1 | 012 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0021.js: -------------------------------------------------------------------------------- 1 | 08 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0023.js: -------------------------------------------------------------------------------- 1 | 09 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0034.js: -------------------------------------------------------------------------------- 1 | ({[a](){}}) -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0037.js: -------------------------------------------------------------------------------- 1 | ({"[": 42}) -------------------------------------------------------------------------------- /test/fixtures/expression/primary/other/migrated_0000.js: -------------------------------------------------------------------------------- 1 | this 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/other/migrated_0001.js: -------------------------------------------------------------------------------- 1 | null 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/other/migrated_0003.js: -------------------------------------------------------------------------------- 1 | (1 + 2 ) * 3 -------------------------------------------------------------------------------- /test/fixtures/expression/relational/migrated_0005.js: -------------------------------------------------------------------------------- 1 | x instanceof y -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0073.js: -------------------------------------------------------------------------------- 1 | ({ set: s(if) { } }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0077.js: -------------------------------------------------------------------------------- 1 | ({ set: s(a, b) { } }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0078.js: -------------------------------------------------------------------------------- 1 | ({ get: g(d) { } }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0094.js: -------------------------------------------------------------------------------- 1 | "use strict"; (a) => 00 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0105.js: -------------------------------------------------------------------------------- 1 | function t(true) { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0106.js: -------------------------------------------------------------------------------- 1 | function t(false) { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0107.js: -------------------------------------------------------------------------------- 1 | function t(null) { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0108.js: -------------------------------------------------------------------------------- 1 | function null() { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0109.js: -------------------------------------------------------------------------------- 1 | function true() { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0110.js: -------------------------------------------------------------------------------- 1 | function false() { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0123.js: -------------------------------------------------------------------------------- 1 | for (var i, i2 in {}); -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0134.js: -------------------------------------------------------------------------------- 1 | try {} catch (42) {} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0136.js: -------------------------------------------------------------------------------- 1 | try {} catch (-x) {} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0141.js: -------------------------------------------------------------------------------- 1 | if(true) let a = 1; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0142.js: -------------------------------------------------------------------------------- 1 | if(true) const a = 1; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0216.js: -------------------------------------------------------------------------------- 1 | "\1"; 'use strict'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0256.js: -------------------------------------------------------------------------------- 1 | function t() { ; ; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0257.js: -------------------------------------------------------------------------------- 1 | 'use strict'; a package -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0260.js: -------------------------------------------------------------------------------- 1 | function x(...a = 1){} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0269.js: -------------------------------------------------------------------------------- 1 | class A {a(){},b(){}} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0275.js: -------------------------------------------------------------------------------- 1 | class A {a static(){}} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0277.js: -------------------------------------------------------------------------------- 1 | class A {a(enum){}} -------------------------------------------------------------------------------- /test/fixtures/statement/break/migrated_0000.js: -------------------------------------------------------------------------------- 1 | while (true) { break } -------------------------------------------------------------------------------- /test/fixtures/statement/if/migrated_0002.js: -------------------------------------------------------------------------------- 1 | if (morning) var x = 0; -------------------------------------------------------------------------------- /test/fixtures/statement/if/migrated_0006.js: -------------------------------------------------------------------------------- 1 | if (true) that(); else; -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0011.js: -------------------------------------------------------------------------------- 1 | for(var x = 0;;); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0012.js: -------------------------------------------------------------------------------- 1 | for(let x = 0;;); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0026.js: -------------------------------------------------------------------------------- 1 | for (a.in in a); -------------------------------------------------------------------------------- /test/fixtures/statement/labelled/migrated_0002.js: -------------------------------------------------------------------------------- 1 | __proto__: test -------------------------------------------------------------------------------- /test/fixtures/statement/try/migrated_0000.js: -------------------------------------------------------------------------------- 1 | try { } catch (e) { } -------------------------------------------------------------------------------- /test/fixtures/statement/try/migrated_0001.js: -------------------------------------------------------------------------------- 1 | try { } catch (eval) { } -------------------------------------------------------------------------------- /test/fixtures/statement/with/migrated_0001.js: -------------------------------------------------------------------------------- 1 | with (x) foo = bar; -------------------------------------------------------------------------------- /test/fixtures/statement/with/migrated_0002.js: -------------------------------------------------------------------------------- 1 | with (x) { foo = bar } -------------------------------------------------------------------------------- /test/fixtures/tokenize/trailing_comment.js: -------------------------------------------------------------------------------- 1 | /42/ /* answer */ 2 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/let_eval.js: -------------------------------------------------------------------------------- 1 | "use strict"; let eval; 2 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0006.js: -------------------------------------------------------------------------------- 1 | f(a function(){} c); -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0016.js: -------------------------------------------------------------------------------- 1 | "use strict"; delete x -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0019.js: -------------------------------------------------------------------------------- 1 | "use strict"; var eval; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0021.js: -------------------------------------------------------------------------------- 1 | "use strict"; eval = 0; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0022.js: -------------------------------------------------------------------------------- 1 | "use strict"; eval++; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0023.js: -------------------------------------------------------------------------------- 1 | "use strict"; --eval; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0041.js: -------------------------------------------------------------------------------- 1 | "\1"; 'use strict'; -------------------------------------------------------------------------------- /test/3rdparty/syntax/.gitignore: -------------------------------------------------------------------------------- 1 | *.actual.json 2 | *.actual.tokens 3 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_delete_exp.js: -------------------------------------------------------------------------------- 1 | delete x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/invalid_typeof_exp.js: -------------------------------------------------------------------------------- 1 | typeof x ** y 2 | -------------------------------------------------------------------------------- /test/fixtures/ES2016/exponent/update_exp.js: -------------------------------------------------------------------------------- 1 | (++x ** y) - (--p ** q) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/arrow-with-only-rest.js: -------------------------------------------------------------------------------- 1 | (...a) => 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0005.js: -------------------------------------------------------------------------------- 1 | e => ({ property: 42 }) -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0014.js: -------------------------------------------------------------------------------- 1 | (eval, a = 10) => 42 -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/rest-without-arrow.js: -------------------------------------------------------------------------------- 1 | (...a) + 1 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/hole.js: -------------------------------------------------------------------------------- 1 | let [a,,b]=0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0010.js: -------------------------------------------------------------------------------- 1 | class A {get a(){} set b(c){};} -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-named-empty.js: -------------------------------------------------------------------------------- 1 | export {}; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-var.js: -------------------------------------------------------------------------------- 1 | export var bar; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-array-pattern.js: -------------------------------------------------------------------------------- 1 | for ([p, q] of r); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-object-pattern.js: -------------------------------------------------------------------------------- 1 | for ({x, y} of z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-with-const.js: -------------------------------------------------------------------------------- 1 | for (const y of list); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-assign-for-of.js: -------------------------------------------------------------------------------- 1 | for (x=0 of y); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-let-init.js: -------------------------------------------------------------------------------- 1 | for (let x = 1 of y); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-var-init.js: -------------------------------------------------------------------------------- 1 | for (var x = 1 of y); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid_const_let.js: -------------------------------------------------------------------------------- 1 | for (const let of y); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/generator-expression.js: -------------------------------------------------------------------------------- 1 | (function*() {}) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/malformed-generator-method.js: -------------------------------------------------------------------------------- 1 | ({ * }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_all.js: -------------------------------------------------------------------------------- 1 | var \u{41}\u{42}\u{43}; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_math_alef.js: -------------------------------------------------------------------------------- 1 | var \u{1EE00} 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_math_dal_part.js: -------------------------------------------------------------------------------- 1 | var _\u{1EE03} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/invalid-hex-escape-sequence.js: -------------------------------------------------------------------------------- 1 | "\x{0}" 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/weierstrass_weierstrass.js: -------------------------------------------------------------------------------- 1 | var ℘\u2118 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/import-declaration/import-module.js: -------------------------------------------------------------------------------- 1 | import "foo"; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/for_let_in.js: -------------------------------------------------------------------------------- 1 | for (let in x) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_const_let.js: -------------------------------------------------------------------------------- 1 | const let 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_let_let.js: -------------------------------------------------------------------------------- 1 | let let; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/let_member.js: -------------------------------------------------------------------------------- 1 | let.let = foo 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/method-definition/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x = { method() { } } -------------------------------------------------------------------------------- /test/fixtures/ES6/method-definition/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x = { get() { } } -------------------------------------------------------------------------------- /test/fixtures/ES6/method-definition/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x = { set() { } } -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/call-spread-first.js: -------------------------------------------------------------------------------- 1 | f(...x, y, z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/invalid-new-dot-dot.js: -------------------------------------------------------------------------------- 1 | new f(..g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/invalid-new-dots.js: -------------------------------------------------------------------------------- 1 | new f(....g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/new-spread-number.js: -------------------------------------------------------------------------------- 1 | new f(....5); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/unclosed-nested.js: -------------------------------------------------------------------------------- 1 | `hello ${10 `test` -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-let.js: -------------------------------------------------------------------------------- 1 | function *g() { yield let } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-minus.js: -------------------------------------------------------------------------------- 1 | function *g() { yield -x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-not.js: -------------------------------------------------------------------------------- 1 | function *g() { yield !x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-plus.js: -------------------------------------------------------------------------------- 1 | function *g() { yield +x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arrow-concise-body.js: -------------------------------------------------------------------------------- 1 | (x) => x * yield; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arrow-parameter-name.js: -------------------------------------------------------------------------------- 1 | (yield) => 42; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-generator-method.js: -------------------------------------------------------------------------------- 1 | ({ *yield() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-lexical-declaration.js: -------------------------------------------------------------------------------- 1 | let yield = 42; 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-double-quoted-string.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-entity-hex.js: -------------------------------------------------------------------------------- 1 |

2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-entity.js: -------------------------------------------------------------------------------- 1 | Tom & Jerry 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-illegal-short-entity.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-unterminated-entity.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/inside-group-expression.js: -------------------------------------------------------------------------------- 1 | var el = ( ) 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-empty-attribute-expression.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-match-name-namespace.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-match-namespace-name.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/invalid-match-namespace.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-nested-pair.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/automatic-semicolon-insertion/migrated_0000.js: -------------------------------------------------------------------------------- 1 | { x 2 | ++y } -------------------------------------------------------------------------------- /test/fixtures/automatic-semicolon-insertion/migrated_0001.js: -------------------------------------------------------------------------------- 1 | { x 2 | --y } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0041.js: -------------------------------------------------------------------------------- 1 | /* block comment */ --> comment -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0001.js: -------------------------------------------------------------------------------- 1 | function eval() { } -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/async-method.js: -------------------------------------------------------------------------------- 1 | ({ async f() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/invalid-empty-arrow.js: -------------------------------------------------------------------------------- 1 | (,) => 0; 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/trailing-comma-call.js: -------------------------------------------------------------------------------- 1 | f(x,); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/trailing-comma-new.js: -------------------------------------------------------------------------------- 1 | new f(x,); 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/complex/migrated_0001.js: -------------------------------------------------------------------------------- 1 | a + (b < (c * d)) + e -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0003.js: -------------------------------------------------------------------------------- 1 | new new foo() -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0004.js: -------------------------------------------------------------------------------- 1 | new foo().bar() -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0006.js: -------------------------------------------------------------------------------- 1 | new foo.bar() -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0007.js: -------------------------------------------------------------------------------- 1 | ( new foo).bar() -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0008.js: -------------------------------------------------------------------------------- 1 | foo(bar, baz) -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0009.js: -------------------------------------------------------------------------------- 1 | ( foo )() -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0010.js: -------------------------------------------------------------------------------- 1 | universe.milkyway -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0020.js: -------------------------------------------------------------------------------- 1 | universe.true -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0021.js: -------------------------------------------------------------------------------- 1 | universe.false -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0022.js: -------------------------------------------------------------------------------- 1 | universe.null -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0005.js: -------------------------------------------------------------------------------- 1 | x = [ 1, 2, 3, ] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/array/migrated_0006.js: -------------------------------------------------------------------------------- 1 | x = [ 1, 2,, 3, ] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/invalid_hex.js: -------------------------------------------------------------------------------- 1 | 0xFG 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0005.js: -------------------------------------------------------------------------------- 1 | 3.14159 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0009.js: -------------------------------------------------------------------------------- 1 | 0x0; -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0010.js: -------------------------------------------------------------------------------- 1 | 0e+100 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0011.js: -------------------------------------------------------------------------------- 1 | 0e+100 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0012.js: -------------------------------------------------------------------------------- 1 | 0xabc -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0013.js: -------------------------------------------------------------------------------- 1 | 0xdef -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0014.js: -------------------------------------------------------------------------------- 1 | 0X1A -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0015.js: -------------------------------------------------------------------------------- 1 | 0x10 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0016.js: -------------------------------------------------------------------------------- 1 | 0x100 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0017.js: -------------------------------------------------------------------------------- 1 | 0X04 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0020.js: -------------------------------------------------------------------------------- 1 | 0012 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0022.js: -------------------------------------------------------------------------------- 1 | 0008 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0024.js: -------------------------------------------------------------------------------- 1 | 09.5 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/invalid_hex.js: -------------------------------------------------------------------------------- 1 | '\xFG' 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0000.js: -------------------------------------------------------------------------------- 1 | "Hello" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0003.js: -------------------------------------------------------------------------------- 1 | "\x61" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0003.js: -------------------------------------------------------------------------------- 1 | x = { if: 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0004.js: -------------------------------------------------------------------------------- 1 | x = { true: 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0005.js: -------------------------------------------------------------------------------- 1 | x = { false: 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0006.js: -------------------------------------------------------------------------------- 1 | x = { null: 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0024.js: -------------------------------------------------------------------------------- 1 | x = { get: 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0025.js: -------------------------------------------------------------------------------- 1 | x = { set: 43 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0035.js: -------------------------------------------------------------------------------- 1 | ({[a]:()=>{}}) -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0038.js: -------------------------------------------------------------------------------- 1 | ({set x(a=0){}}) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0036.source.js: -------------------------------------------------------------------------------- 1 | var source = 'a\\u'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0037.source.js: -------------------------------------------------------------------------------- 1 | var source = '\\ua'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0088.js: -------------------------------------------------------------------------------- 1 | "use strict"; eval => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0093.js: -------------------------------------------------------------------------------- 1 | "use strict"; (a, a) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0100.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0128.js: -------------------------------------------------------------------------------- 1 | if(false) doThis(); else -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0135.js: -------------------------------------------------------------------------------- 1 | try {} catch (answer()) {} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0169.source.js: -------------------------------------------------------------------------------- 1 | var source = '"\\u'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0176.js: -------------------------------------------------------------------------------- 1 | while (true) { break x; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0177.js: -------------------------------------------------------------------------------- 1 | while (true) { continue x; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0248.js: -------------------------------------------------------------------------------- 1 | __proto__: __proto__: 42; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0258.js: -------------------------------------------------------------------------------- 1 | function f(a, ...b, c){} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0264.js: -------------------------------------------------------------------------------- 1 | class A extends a + b {} -------------------------------------------------------------------------------- /test/fixtures/statement/block/migrated_0001.js: -------------------------------------------------------------------------------- 1 | { doThis(); doThat(); } -------------------------------------------------------------------------------- /test/fixtures/statement/if/migrated_0000.js: -------------------------------------------------------------------------------- 1 | if (morning) goodMorning() -------------------------------------------------------------------------------- /test/fixtures/statement/if/migrated_0001.js: -------------------------------------------------------------------------------- 1 | if (morning) (function(){}) -------------------------------------------------------------------------------- /test/fixtures/statement/if/migrated_0003.js: -------------------------------------------------------------------------------- 1 | if (morning) function a(){} -------------------------------------------------------------------------------- /test/fixtures/statement/if/migrated_0005.js: -------------------------------------------------------------------------------- 1 | if (true) that() 2 | ; else; -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/for-in-let.js: -------------------------------------------------------------------------------- 1 | for (x in let) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0000.js: -------------------------------------------------------------------------------- 1 | do keep(); while (true) -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0004.js: -------------------------------------------------------------------------------- 1 | do that();while (true) -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0014.js: -------------------------------------------------------------------------------- 1 | for(x = 0; x < 42;); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0024.js: -------------------------------------------------------------------------------- 1 | for (a[b in c] in d); -------------------------------------------------------------------------------- /test/fixtures/statement/return/migrated_0000.js: -------------------------------------------------------------------------------- 1 | (function(){ return }) -------------------------------------------------------------------------------- /test/fixtures/statement/return/migrated_0001.js: -------------------------------------------------------------------------------- 1 | (function(){ return; }) -------------------------------------------------------------------------------- /test/fixtures/statement/return/migrated_0002.js: -------------------------------------------------------------------------------- 1 | (function(){ return x; }) -------------------------------------------------------------------------------- /test/fixtures/statement/throw/migrated_0002.js: -------------------------------------------------------------------------------- 1 | throw { message: "Error" } -------------------------------------------------------------------------------- /test/fixtures/statement/try/migrated_0002.js: -------------------------------------------------------------------------------- 1 | try { } catch (arguments) { } -------------------------------------------------------------------------------- /test/fixtures/statement/try/migrated_0003.js: -------------------------------------------------------------------------------- 1 | try { } catch (e) { say(e) } -------------------------------------------------------------------------------- /test/fixtures/statement/variable/invalid_trailing_comma_1.js: -------------------------------------------------------------------------------- 1 | var x, 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/variable/invalid_trailing_comma_2.js: -------------------------------------------------------------------------------- 1 | var x,; 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/variable/invalid_trailing_comma_3.js: -------------------------------------------------------------------------------- 1 | var x, ; 2 | -------------------------------------------------------------------------------- /test/fixtures/tokenize/leading_comment.js: -------------------------------------------------------------------------------- 1 | /* hello world */ /42/ 2 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/if-missing-parenthesis.js: -------------------------------------------------------------------------------- 1 | if (x < 42 2 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0020.js: -------------------------------------------------------------------------------- 1 | "use strict"; var arguments; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0024.js: -------------------------------------------------------------------------------- 1 | "use strict"; arguments = 0; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0025.js: -------------------------------------------------------------------------------- 1 | "use strict"; arguments--; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0026.js: -------------------------------------------------------------------------------- 1 | "use strict"; ++arguments; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0051.js: -------------------------------------------------------------------------------- 1 | ({x(eval){"use strict";}}) -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0052.js: -------------------------------------------------------------------------------- 1 | ({x(eval){"use strict"}}) -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/invalid-duplicated-params.js: -------------------------------------------------------------------------------- 1 | (x, x) => y; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/migrated_0017.js: -------------------------------------------------------------------------------- 1 | (x) => ((y, z) => (x, y, z)) -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/elision.js: -------------------------------------------------------------------------------- 1 | let [a,] = 0; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/rest.js: -------------------------------------------------------------------------------- 1 | let [...a] = 0; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/object-pattern/elision.js: -------------------------------------------------------------------------------- 1 | let {a,} = 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/object-pattern/empty-var.js: -------------------------------------------------------------------------------- 1 | var {} = 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/object-pattern/nested.js: -------------------------------------------------------------------------------- 1 | let {a:{}} = 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0014.js: -------------------------------------------------------------------------------- 1 | class A {static[a](){}; static[b](){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0021.js: -------------------------------------------------------------------------------- 1 | class A {static ["prototype"](){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/default-parameter-value/migrated_0001.js: -------------------------------------------------------------------------------- 1 | function f(a = 1) {} -------------------------------------------------------------------------------- /test/fixtures/ES6/destructuring-assignment/array-pattern/elision.js: -------------------------------------------------------------------------------- 1 | [,,]=0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-const-init.js: -------------------------------------------------------------------------------- 1 | for (const x = 1 of y); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/generator-declaration.js: -------------------------------------------------------------------------------- 1 | function *foo() {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_math_zain_start.js: -------------------------------------------------------------------------------- 1 | var \u{1EE06}_$ 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/invalid_var_await.module.js: -------------------------------------------------------------------------------- 1 | export var await; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_const_const.js: -------------------------------------------------------------------------------- 1 | const const; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_trailing_comma_1.js: -------------------------------------------------------------------------------- 1 | let x, 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_trailing_comma_2.js: -------------------------------------------------------------------------------- 1 | let x,; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/meta-property/invalid-new-target.js: -------------------------------------------------------------------------------- 1 | var x = new.target; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/method-definition/migrated_0001.js: -------------------------------------------------------------------------------- 1 | x = { method(test) { } } -------------------------------------------------------------------------------- /test/fixtures/ES6/method-definition/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x = { 'method'() { } } -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/function-declaration.js: -------------------------------------------------------------------------------- 1 | function f(a, ...b) {} -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/call-multi-spread.js: -------------------------------------------------------------------------------- 1 | f(...x, ...y, ...z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/call-spread-default.js: -------------------------------------------------------------------------------- 1 | f(g, ...h = i); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/invalid-call-spreads.js: -------------------------------------------------------------------------------- 1 | f(... ... g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/invalid-new-spreads.js: -------------------------------------------------------------------------------- 1 | new f(... ... g); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/new-spread-default.js: -------------------------------------------------------------------------------- 1 | new f(g, ...h = i); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/new-spread-first.js: -------------------------------------------------------------------------------- 1 | new f(...x, y, z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/tagged-interpolation.js: -------------------------------------------------------------------------------- 1 | raw`hello ${name}` -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/unclosed-interpolation.js: -------------------------------------------------------------------------------- 1 | `hello ${10;test` -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/ternary-yield.js: -------------------------------------------------------------------------------- 1 | function* g(){ x ? yield : y } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-array.js: -------------------------------------------------------------------------------- 1 | function *g() { yield [x] } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-bitnot.js: -------------------------------------------------------------------------------- 1 | function *g() { yield ~x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-group.js: -------------------------------------------------------------------------------- 1 | function *g() { yield (x) } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-new.js: -------------------------------------------------------------------------------- 1 | function *g() { yield new X() } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-object.js: -------------------------------------------------------------------------------- 1 | function *g() { yield {x} } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-plusplus.js: -------------------------------------------------------------------------------- 1 | function *g() { yield ++x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-regexp1.js: -------------------------------------------------------------------------------- 1 | function *g() { yield /x/i } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-regexp2.js: -------------------------------------------------------------------------------- 1 | function *g() { yield /=x/i } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-this.js: -------------------------------------------------------------------------------- 1 | function *g() { yield this } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-void.js: -------------------------------------------------------------------------------- 1 | function *g() { yield void x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arrow-function-body.js: -------------------------------------------------------------------------------- 1 | (z) => { yield + z }; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arrow-parameter-default.js: -------------------------------------------------------------------------------- 1 | (x = yield) => {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-binding-element.js: -------------------------------------------------------------------------------- 1 | var { x: yield } = foo; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-binding-property.js: -------------------------------------------------------------------------------- 1 | var { yield: x } = foo; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-catch-parameter.js: -------------------------------------------------------------------------------- 1 | try {} catch (yield) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-function-declaration.js: -------------------------------------------------------------------------------- 1 | function yield(){} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-function-expression.js: -------------------------------------------------------------------------------- 1 | (function yield(){}) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-generator-declaration.js: -------------------------------------------------------------------------------- 1 | function *yield(){} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-rest-parameter.js: -------------------------------------------------------------------------------- 1 | function f(...yield) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-multi-entities.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-single-quoted-string.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-unknown-entity.js: -------------------------------------------------------------------------------- 1 | &copyr; 2016 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/simple-expression-container.js: -------------------------------------------------------------------------------- 1 | {$caption} 2 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0027.js: -------------------------------------------------------------------------------- 1 | if (x) { doThat() // Some comment 2 | } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0028.js: -------------------------------------------------------------------------------- 1 | if (x) { // Some comment 2 | doThat(); } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0029.js: -------------------------------------------------------------------------------- 1 | if (x) { /* Some comment */ doThat() } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0030.js: -------------------------------------------------------------------------------- 1 | if (x) { doThat() /* Some comment */ } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0053.js: -------------------------------------------------------------------------------- 1 | /**/ function a() {function o() {}} 2 | -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0002.js: -------------------------------------------------------------------------------- 1 | function arguments() { } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0003.js: -------------------------------------------------------------------------------- 1 | function test(t, t) { } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0004.js: -------------------------------------------------------------------------------- 1 | (function test(t, t) { }) -------------------------------------------------------------------------------- /test/fixtures/declaration/let/migrated_0003.js: -------------------------------------------------------------------------------- 1 | { let x = 14, y = 3, z = 1977 } -------------------------------------------------------------------------------- /test/fixtures/es2017/async/arrows/async-arrow-no-arg.js: -------------------------------------------------------------------------------- 1 | async () => 42 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/arrows/async-arrow-rest.js: -------------------------------------------------------------------------------- 1 | async (x, ...y) => x 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/arrows/async-arrow-yield.js: -------------------------------------------------------------------------------- 1 | async yield => 0; 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/regular-identifier/call-async.js: -------------------------------------------------------------------------------- 1 | x = async(y); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/invalid-rest.js: -------------------------------------------------------------------------------- 1 | function f(...a,) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/trailing-comma-spread.js: -------------------------------------------------------------------------------- 1 | f(...a,); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2018/spread-property/object-merging.js: -------------------------------------------------------------------------------- 1 | let xy = { ...x, ...y }; -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0014.js: -------------------------------------------------------------------------------- 1 | universe[galaxyName] -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0015.js: -------------------------------------------------------------------------------- 1 | universe[42].galaxies -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/migrated_0016.js: -------------------------------------------------------------------------------- 1 | universe(42).galaxies -------------------------------------------------------------------------------- /test/fixtures/expression/primary/keyword/invalid-escaped-null.js: -------------------------------------------------------------------------------- 1 | nul\u{6c} 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/keyword/invalid-escaped-true.js: -------------------------------------------------------------------------------- 1 | \u0074rue 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0006.js: -------------------------------------------------------------------------------- 1 | "Hello\nworld" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0016.js: -------------------------------------------------------------------------------- 1 | "Hello\0World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0018.js: -------------------------------------------------------------------------------- 1 | "Hello\1World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x = { answer: 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0007.js: -------------------------------------------------------------------------------- 1 | x = { "answer": 42 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0008.js: -------------------------------------------------------------------------------- 1 | x = { x: 1, x: 2 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0010.js: -------------------------------------------------------------------------------- 1 | x = { get undef() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0011.js: -------------------------------------------------------------------------------- 1 | x = { get if() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0012.js: -------------------------------------------------------------------------------- 1 | x = { get true() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0013.js: -------------------------------------------------------------------------------- 1 | x = { get false() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0014.js: -------------------------------------------------------------------------------- 1 | x = { get null() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0016.js: -------------------------------------------------------------------------------- 1 | x = { get 10() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0026.js: -------------------------------------------------------------------------------- 1 | x = { __proto__: 2 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0027.js: -------------------------------------------------------------------------------- 1 | x = {"__proto__": 2 } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/other/migrated_0002.js: -------------------------------------------------------------------------------- 1 | 2 | 42 3 | 4 | -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0033.source.js: -------------------------------------------------------------------------------- 1 | var source = 'x\\u005c'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0034.source.js: -------------------------------------------------------------------------------- 1 | var source = 'x\\u002a'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0049.source.js: -------------------------------------------------------------------------------- 1 | var source = '"\\u{}"'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0050.source.js: -------------------------------------------------------------------------------- 1 | var source = '"\\u{FFFF"'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0051.source.js: -------------------------------------------------------------------------------- 1 | var source = '"\\u{FFZ}"'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0056.js: -------------------------------------------------------------------------------- 1 | for((1 + 1) in list) process(x); -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0087.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval = 10) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0089.js: -------------------------------------------------------------------------------- 1 | "use strict"; arguments => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0090.js: -------------------------------------------------------------------------------- 1 | "use strict"; (eval, a) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0101.js: -------------------------------------------------------------------------------- 1 | (eval) => { "use strict"; 42 } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0143.js: -------------------------------------------------------------------------------- 1 | switch (c) { default: default: } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0163.source.js: -------------------------------------------------------------------------------- 1 | var source = '\\u005c'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0165.source.js: -------------------------------------------------------------------------------- 1 | var source = '\\u0000'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0174.js: -------------------------------------------------------------------------------- 1 | switch (x) { default: continue; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0201.js: -------------------------------------------------------------------------------- 1 | function eval() {'use strict'; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0270.js: -------------------------------------------------------------------------------- 1 | class A {static prototype(){}} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0271.js: -------------------------------------------------------------------------------- 1 | class A {static "prototype"(){}} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0272.js: -------------------------------------------------------------------------------- 1 | class A {get constructor(){}} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0273.js: -------------------------------------------------------------------------------- 1 | class A {set constructor(m){}} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0278.js: -------------------------------------------------------------------------------- 1 | class A {static [static](){};} -------------------------------------------------------------------------------- /test/fixtures/statement/continue/migrated_0000.js: -------------------------------------------------------------------------------- 1 | while (true) { continue; } -------------------------------------------------------------------------------- /test/fixtures/statement/continue/migrated_0001.js: -------------------------------------------------------------------------------- 1 | while (true) { continue } -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/for-let-let.js: -------------------------------------------------------------------------------- 1 | for (let x = let;;) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/for-statement-with-seq.js: -------------------------------------------------------------------------------- 1 | for(a,b,c;;); 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/invalid-assign-for-in.js: -------------------------------------------------------------------------------- 1 | for (x=0 in y); 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0001.js: -------------------------------------------------------------------------------- 1 | do keep(); while (true); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0005.js: -------------------------------------------------------------------------------- 1 | do that() 2 | ;while (true) -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0006.js: -------------------------------------------------------------------------------- 1 | while (true) doSomething() -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0007.js: -------------------------------------------------------------------------------- 1 | while (x < 10) { x++; y--; } -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0013.js: -------------------------------------------------------------------------------- 1 | for(var x = 0, y = 1;;); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0015.js: -------------------------------------------------------------------------------- 1 | for(x = 0; x < 42; x++); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0017.js: -------------------------------------------------------------------------------- 1 | for(x in list) process(x); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0021.js: -------------------------------------------------------------------------------- 1 | for (var x = y = z in q); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0025.js: -------------------------------------------------------------------------------- 1 | for (a(b in c)[0] in d); -------------------------------------------------------------------------------- /test/fixtures/statement/labelled/migrated_0000.js: -------------------------------------------------------------------------------- 1 | start: for (;;) break start -------------------------------------------------------------------------------- /test/fixtures/statement/return/migrated_0003.js: -------------------------------------------------------------------------------- 1 | (function(){ return x * y }) -------------------------------------------------------------------------------- /test/fixtures/statement/try/migrated_0004.js: -------------------------------------------------------------------------------- 1 | try { } finally { cleanup(stuff) } -------------------------------------------------------------------------------- /test/fixtures/statement/variable/complex-pattern-requires-init.js: -------------------------------------------------------------------------------- 1 | var [] 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/variable/invalid_trailing_comma_4.js: -------------------------------------------------------------------------------- 1 | var x, y, 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/variable/migrated_0003.js: -------------------------------------------------------------------------------- 1 | var eval = 42, arguments = 42 -------------------------------------------------------------------------------- /test/fixtures/statement/variable/migrated_0004.js: -------------------------------------------------------------------------------- 1 | var x = 14, y = 3, z = 1977 -------------------------------------------------------------------------------- /test/fixtures/tokenize/line_comment.js: -------------------------------------------------------------------------------- 1 | var answer = 42 // the Ultimate 2 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0027.js: -------------------------------------------------------------------------------- 1 | "use strict"; function eval() {}; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0042.js: -------------------------------------------------------------------------------- 1 | "use strict"; var x = { 014: 3} -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/while-missing-parenthesis.js: -------------------------------------------------------------------------------- 1 | while (true 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/array-binding-pattern/elision.js: -------------------------------------------------------------------------------- 1 | ([,,])=>0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/arrow-rest-forgetting-comma.js: -------------------------------------------------------------------------------- 1 | (a ...b) => 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/arrow-with-multiple-rest.js: -------------------------------------------------------------------------------- 1 | (...a, ...b) => 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/concise-body-in.js: -------------------------------------------------------------------------------- 1 | for (() => { x in y };;); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/invalid-line-terminator-arrow.js: -------------------------------------------------------------------------------- 1 | () 2 | => 42 3 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/param-with-rest-without-arrow.js: -------------------------------------------------------------------------------- 1 | (b, ...a) + 1 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/nested-pattern.js: -------------------------------------------------------------------------------- 1 | let [[]]=0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/rest.elision.js: -------------------------------------------------------------------------------- 1 | let [...a,] = 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/tailing-hold.js: -------------------------------------------------------------------------------- 1 | let [a,,]=0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/object-pattern/empty-fn.js: -------------------------------------------------------------------------------- 1 | function a({}) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/object-pattern/empty-lexical.js: -------------------------------------------------------------------------------- 1 | let {} = 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/class/invalid-labelled-class-declaration.js: -------------------------------------------------------------------------------- 1 | a: class B {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/default-parameter-value/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x = function(y = 1) {} -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-default-array.js: -------------------------------------------------------------------------------- 1 | export default []; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-from-batch.js: -------------------------------------------------------------------------------- 1 | export * from "foo"; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-let-number.js: -------------------------------------------------------------------------------- 1 | export let foo = 1; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-named-specifier.js: -------------------------------------------------------------------------------- 1 | export {foo}; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-var-number.js: -------------------------------------------------------------------------------- 1 | export var foo = 1; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-array-pattern-let.js: -------------------------------------------------------------------------------- 1 | for (let [p, q] of r); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-array-pattern-var.js: -------------------------------------------------------------------------------- 1 | for (var [p, q] of r); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-object-pattern-var.js: -------------------------------------------------------------------------------- 1 | for (var {x, y} of z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-for-of-array-pattern.js: -------------------------------------------------------------------------------- 1 | for (var [p]=q of r); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/invalid-labelled-generator.js: -------------------------------------------------------------------------------- 1 | a: function *g() {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/malformed-generator-method-2.js: -------------------------------------------------------------------------------- 1 | class Foo { * } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/escaped_math_kaf_lam.js: -------------------------------------------------------------------------------- 1 | var \u{1EE0A}\u{1EE0B} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/import-declaration/import-default.js: -------------------------------------------------------------------------------- 1 | import foo from "foo"; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/import-declaration/import-jquery.js: -------------------------------------------------------------------------------- 1 | import $ from "jquery" 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_let_init.js: -------------------------------------------------------------------------------- 1 | let x, y, z, let = 1; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_trailing_comma_3.js: -------------------------------------------------------------------------------- 1 | let x, y, ; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_trailing_comma_5.js: -------------------------------------------------------------------------------- 1 | const x = 0, 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/program/module/invalid-export-if.module.js: -------------------------------------------------------------------------------- 1 | export if foo = 1; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/arrow-rest-parameter-array.js: -------------------------------------------------------------------------------- 1 | (a, ...[b]) => c 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/function-expression.js: -------------------------------------------------------------------------------- 1 | f = function(a, ...b) {} -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/invalid-setter-rest.js: -------------------------------------------------------------------------------- 1 | x = { set f(...y) {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/object-method.js: -------------------------------------------------------------------------------- 1 | o = { f: function(a, ...b) {} } -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/rest-parameter-array.js: -------------------------------------------------------------------------------- 1 | function f(...[a]) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/rest-parameter-object.js: -------------------------------------------------------------------------------- 1 | function f(...{a}) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/spread-element/new-multi-spread.js: -------------------------------------------------------------------------------- 1 | new f(...x, ...y, ...z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/invalid-hex-escape-sequence.js: -------------------------------------------------------------------------------- 1 | `\x{1}`; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/strict-octal-literal.js: -------------------------------------------------------------------------------- 1 | 'use strict'; `\00`; -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/invalid-yield-expression.js: -------------------------------------------------------------------------------- 1 | (function() { yield 3; }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-class.js: -------------------------------------------------------------------------------- 1 | function *g() { yield class x {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-delete.js: -------------------------------------------------------------------------------- 1 | function *g() { yield delete x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-minusminus.js: -------------------------------------------------------------------------------- 1 | function *g() { yield --x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-typeof.js: -------------------------------------------------------------------------------- 1 | function *g() { yield typeof x } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-strict-method.js: -------------------------------------------------------------------------------- 1 | "use strict"; ({ yield() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-yield-expression.js: -------------------------------------------------------------------------------- 1 | function *g() { yield yield } 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-non-hex-entity.js: -------------------------------------------------------------------------------- 1 |

2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/attribute-non-numeric-entity.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/container-object-expression.js: -------------------------------------------------------------------------------- 1 | { {caption} } 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/multiline-text.js: -------------------------------------------------------------------------------- 1 | 2 | One 3 | Two 4 | Three 5 | 6 | -------------------------------------------------------------------------------- /test/fixtures/JSX/yield-jsx-element.js: -------------------------------------------------------------------------------- 1 | function *g() { yield

Hello

} 2 | -------------------------------------------------------------------------------- /test/fixtures/automatic-semicolon-insertion/migrated_0002.js: -------------------------------------------------------------------------------- 1 | var x /* comment */; -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0046.js: -------------------------------------------------------------------------------- 1 | function x(){ /*Jupiter*/ return; /*Saturn*/} -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0047.js: -------------------------------------------------------------------------------- 1 | (/* comment */{ 2 | p1: null 3 | }) 4 | -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0054.js: -------------------------------------------------------------------------------- 1 | /**/ function a() {/**/function o() {}} 2 | -------------------------------------------------------------------------------- /test/fixtures/declaration/const/migrated_0002.js: -------------------------------------------------------------------------------- 1 | { const x = 14, y = 3, z = 1977 } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0000.js: -------------------------------------------------------------------------------- 1 | function hello() { sayHi(); } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0006.js: -------------------------------------------------------------------------------- 1 | function hello(a) { sayHi(); } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0008.js: -------------------------------------------------------------------------------- 1 | var hi = function() { sayHi() }; -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0009.js: -------------------------------------------------------------------------------- 1 | var hi = function eval() { }; -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0013.js: -------------------------------------------------------------------------------- 1 | function universe(__proto__) { } -------------------------------------------------------------------------------- /test/fixtures/es2017/async/arrows/async-arrow-one-arg-concise.js: -------------------------------------------------------------------------------- 1 | async y => y 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/arrows/async-arrow-one-arg.js: -------------------------------------------------------------------------------- 1 | async x => { x * x } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/functions/async-if.js: -------------------------------------------------------------------------------- 1 | if (x) async function f() {} 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/functions/invalid-async-while.js: -------------------------------------------------------------------------------- 1 | async while (1) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/async-method-number.js: -------------------------------------------------------------------------------- 1 | ({ async 3() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/class-async-get.js: -------------------------------------------------------------------------------- 1 | class X { async get(){} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/invalid-empty-method.js: -------------------------------------------------------------------------------- 1 | class A { f(,){} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/trailing-commas/trailing-comma-arrow-single.js: -------------------------------------------------------------------------------- 1 | (x,) => 0 2 | -------------------------------------------------------------------------------- /test/fixtures/es2018/dynamic-import/invalid-new-import-call.js: -------------------------------------------------------------------------------- 1 | new import(x); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2018/dynamic-import/invalid-non-callee.js: -------------------------------------------------------------------------------- 1 | import.then(doLoad); 2 | -------------------------------------------------------------------------------- /test/fixtures/es2018/rest-property/destructuring-mirror.js: -------------------------------------------------------------------------------- 1 | ({x, ...y} = {x, ...y}) -------------------------------------------------------------------------------- /test/fixtures/es2018/spread-property/properties-overriding.js: -------------------------------------------------------------------------------- 1 | x = { ...y, z: 1}; -------------------------------------------------------------------------------- /test/fixtures/expression/left-hand-side/let_object_computed.js: -------------------------------------------------------------------------------- 1 | (let[foo]=bar) 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0006.js: -------------------------------------------------------------------------------- 1 | 6.02214179e+23 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/numeric/migrated_0007.js: -------------------------------------------------------------------------------- 1 | 1.492417830e-10 -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/regular-expression/migrated_0000.js: -------------------------------------------------------------------------------- 1 | /p/; -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/regular-expression/migrated_0001.js: -------------------------------------------------------------------------------- 1 | [/q/] -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/invalid_escaped_hex.js: -------------------------------------------------------------------------------- 1 | '\u00FG' 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0007.js: -------------------------------------------------------------------------------- 1 | "Hello\ 2 | world" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0008.js: -------------------------------------------------------------------------------- 1 | "Hello\02World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0009.js: -------------------------------------------------------------------------------- 1 | "Hello\012World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0010.js: -------------------------------------------------------------------------------- 1 | "Hello\122World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0011.js: -------------------------------------------------------------------------------- 1 | "Hello\0122World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0012.js: -------------------------------------------------------------------------------- 1 | "Hello\312World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0013.js: -------------------------------------------------------------------------------- 1 | "Hello\412World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0015.js: -------------------------------------------------------------------------------- 1 | "Hello\712World" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/literal/string/migrated_0017.js: -------------------------------------------------------------------------------- 1 | "Hello\ 2 | world" -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/invalid-getter.js: -------------------------------------------------------------------------------- 1 | x = { get y(z) {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/invalid-setter1.js: -------------------------------------------------------------------------------- 1 | x = { set y() {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0015.js: -------------------------------------------------------------------------------- 1 | x = { get "undef"() {} } -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0029.js: -------------------------------------------------------------------------------- 1 | ({ get i() { }, i: 42 }) -------------------------------------------------------------------------------- /test/fixtures/expression/primary/object/migrated_0030.js: -------------------------------------------------------------------------------- 1 | "use strict";x={y:1,y:1} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0048.source.js: -------------------------------------------------------------------------------- 1 | var source = '"\\u{110000}"'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0091.js: -------------------------------------------------------------------------------- 1 | "use strict"; (arguments, a) => 42 -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0137.source.js: -------------------------------------------------------------------------------- 1 | var source = '\u203F = 10'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0166.source.js: -------------------------------------------------------------------------------- 1 | var source = '\u200C = []'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0167.source.js: -------------------------------------------------------------------------------- 1 | var source = '\u200D = []'; -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0202.js: -------------------------------------------------------------------------------- 1 | function arguments() {'use strict'; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0205.js: -------------------------------------------------------------------------------- 1 | (function eval() {'use strict'; })() -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0212.js: -------------------------------------------------------------------------------- 1 | function hello(eval) {'use strict';} -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0234.js: -------------------------------------------------------------------------------- 1 | function static() { "use strict"; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0235.js: -------------------------------------------------------------------------------- 1 | function eval(a) { "use strict"; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0239.js: -------------------------------------------------------------------------------- 1 | "use strict"; function static() { } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0240.js: -------------------------------------------------------------------------------- 1 | function a(t, t) { "use strict"; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0241.js: -------------------------------------------------------------------------------- 1 | function a(eval) { "use strict"; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0242.js: -------------------------------------------------------------------------------- 1 | function a(package) { "use strict"; } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0244.js: -------------------------------------------------------------------------------- 1 | (function a(t, t) { "use strict"; }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0246.js: -------------------------------------------------------------------------------- 1 | (function a(eval) { "use strict"; }) -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0250.js: -------------------------------------------------------------------------------- 1 | x = { __proto__: 42, __proto__: 43 } -------------------------------------------------------------------------------- /test/fixtures/invalid-syntax/migrated_0276.js: -------------------------------------------------------------------------------- 1 | class A {static static static(){}} -------------------------------------------------------------------------------- /test/fixtures/statement/break/migrated_0001.js: -------------------------------------------------------------------------------- 1 | done: while (true) { break done } -------------------------------------------------------------------------------- /test/fixtures/statement/break/migrated_0002.js: -------------------------------------------------------------------------------- 1 | done: while (true) { break done; } -------------------------------------------------------------------------------- /test/fixtures/statement/expression/migrated_0002.source.js: -------------------------------------------------------------------------------- 1 | var source = '\\u0061'; -------------------------------------------------------------------------------- /test/fixtures/statement/expression/migrated_0003.source.js: -------------------------------------------------------------------------------- 1 | var source = 'a\\u0061'; -------------------------------------------------------------------------------- /test/fixtures/statement/expression/migrated_0004.source.js: -------------------------------------------------------------------------------- 1 | var source = '\\u0061a'; -------------------------------------------------------------------------------- /test/fixtures/statement/expression/migrated_0005.source.js: -------------------------------------------------------------------------------- 1 | var source = '\\u0061a '; -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0002.js: -------------------------------------------------------------------------------- 1 | do { x++; y--; } while (x < 10) -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0003.js: -------------------------------------------------------------------------------- 1 | { do { } while (false) false } -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0018.js: -------------------------------------------------------------------------------- 1 | for (var x in list) process(x); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/migrated_0020.js: -------------------------------------------------------------------------------- 1 | for (let x in list) process(x); -------------------------------------------------------------------------------- /test/fixtures/statement/iteration/unterminated-do-while.js: -------------------------------------------------------------------------------- 1 | do {} while (true 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/labelled/function-declaration.js: -------------------------------------------------------------------------------- 1 | a: function b() {} 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/labelled/migrated_0001.js: -------------------------------------------------------------------------------- 1 | start: while (true) break start -------------------------------------------------------------------------------- /test/fixtures/statement/try/migrated_0005.js: -------------------------------------------------------------------------------- 1 | try { doThat(); } catch (e) { say(e) } -------------------------------------------------------------------------------- /test/fixtures/statement/variable/invalid_trailing_comma_5.js: -------------------------------------------------------------------------------- 1 | var x, 2 | y,; 3 | -------------------------------------------------------------------------------- /test/fixtures/statement/variable/invalid_trailing_comma_6.js: -------------------------------------------------------------------------------- 1 | var answer = 42, 2 | -------------------------------------------------------------------------------- /test/fixtures/statement/variable/migrated_0005.js: -------------------------------------------------------------------------------- 1 | var implements, interface, package -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/for-in-missing-parenthesis.js: -------------------------------------------------------------------------------- 1 | for (x in y 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/for-of-missing-parenthesis.js: -------------------------------------------------------------------------------- 1 | for (x of y 2 | 3 | -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0008.js: -------------------------------------------------------------------------------- 1 | var o = {one: function() {} two:2}; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0015.js: -------------------------------------------------------------------------------- 1 | (function () { 'use strict'; 021 }()) -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0017.js: -------------------------------------------------------------------------------- 1 | "use strict"; try {} catch (eval) {} -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0028.js: -------------------------------------------------------------------------------- 1 | "use strict"; function arguments() {}; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0029.js: -------------------------------------------------------------------------------- 1 | "use strict"; function interface() {}; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0030.js: -------------------------------------------------------------------------------- 1 | "use strict"; (function eval() {}); -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0033.js: -------------------------------------------------------------------------------- 1 | "use strict"; function f(eval) {}; -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0036.js: -------------------------------------------------------------------------------- 1 | "use strict"; (function f(eval) {}); -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/migrated_0039.js: -------------------------------------------------------------------------------- 1 | "use strict"; x = { set f(eval) {} } -------------------------------------------------------------------------------- /test/fixtures/tolerant-parse/string_literal_escape_eight.js: -------------------------------------------------------------------------------- 1 | var x = 'abc\8'; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/arrow-function/non-arrow-param-followed-by-arrow.js: -------------------------------------------------------------------------------- 1 | ((a)) => 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/empty-pattern-var.js: -------------------------------------------------------------------------------- 1 | var [] = 0; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/var-for-in.js: -------------------------------------------------------------------------------- 1 | for (var [x, y] in z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/var_let_array.js: -------------------------------------------------------------------------------- 1 | var [let] = answer; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/array-pattern/with-object-pattern.js: -------------------------------------------------------------------------------- 1 | let [{a}] = 0 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/binding-pattern/object-pattern/empty-for-lex.js: -------------------------------------------------------------------------------- 1 | for (let {} in 0); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/class/invalid-setter-method-rest.js: -------------------------------------------------------------------------------- 1 | class X { set f(...y) {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/class/migrated_0019.js: -------------------------------------------------------------------------------- 1 | class A {"constructor"(){} ["constructor"](){}} -------------------------------------------------------------------------------- /test/fixtures/ES6/default-parameter-value/migrated_0002.js: -------------------------------------------------------------------------------- 1 | x = { f: function(a=1) {} } -------------------------------------------------------------------------------- /test/fixtures/ES6/destructuring-assignment/invalid-group-assignment.js: -------------------------------------------------------------------------------- 1 | (a,b)=(c,d); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-const-number.js: -------------------------------------------------------------------------------- 1 | export const foo = 1; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-default-class.js: -------------------------------------------------------------------------------- 1 | export default class {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-default-number.js: -------------------------------------------------------------------------------- 1 | export default 42; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-default-value.js: -------------------------------------------------------------------------------- 1 | export default foo; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-function.js: -------------------------------------------------------------------------------- 1 | export function foo () {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-named-keyword-specifier.js: -------------------------------------------------------------------------------- 1 | export {try}; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/export-named-specifiers.js: -------------------------------------------------------------------------------- 1 | export {foo, bar}; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/export-declaration/invalid-export-batch-token.module.js: -------------------------------------------------------------------------------- 1 | export * + 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/for-of-object-pattern-const.js: -------------------------------------------------------------------------------- 1 | for (const {x, y} of z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/for-of/invalid-for-of-object-pattern.js: -------------------------------------------------------------------------------- 1 | for (var {x} = y of z); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/generator-expression-rest-param.js: -------------------------------------------------------------------------------- 1 | (function*(...x) {}) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/generator-method-with-params.js: -------------------------------------------------------------------------------- 1 | ({ *foo(x, y, z) {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/generator-method-with-yield.js: -------------------------------------------------------------------------------- 1 | ({ *foo() { yield; } }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/generator/incomplete-yield-delegate.js: -------------------------------------------------------------------------------- 1 | (function*() { yield* }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/invalid_escaped_surrogate_pairs.js: -------------------------------------------------------------------------------- 1 | var \uD83B\uDE00 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/identifier/invalid_function_await.module.js: -------------------------------------------------------------------------------- 1 | function await() {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/import-declaration/import-named-empty.js: -------------------------------------------------------------------------------- 1 | import {} from "foo"; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_complex_binding_without_init.js: -------------------------------------------------------------------------------- 1 | let [] 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_for_let_let.js: -------------------------------------------------------------------------------- 1 | for (let let;;;) {} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_forin_let_let.js: -------------------------------------------------------------------------------- 1 | for (let let in x); 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_let_declarations.js: -------------------------------------------------------------------------------- 1 | let x, y, z, let; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_let_forin.js: -------------------------------------------------------------------------------- 1 | for (let x = 0 in y){} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/lexical-declaration/invalid_trailing_comma_4.js: -------------------------------------------------------------------------------- 1 | let x, 2 | y = 3, 3 | -------------------------------------------------------------------------------- /test/fixtures/ES6/object-initialiser/proto-shorthands.js: -------------------------------------------------------------------------------- 1 | ({ __proto__, __proto__ }) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/object-literal-property-value-shorthand/migrated_0000.js: -------------------------------------------------------------------------------- 1 | x = { y, z } -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/arrow-rest-parameter-object.js: -------------------------------------------------------------------------------- 1 | (a, ...{b}) => c 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/rest-parameter/object-shorthand-method.js: -------------------------------------------------------------------------------- 1 | x = { method(...test) { } } -------------------------------------------------------------------------------- /test/fixtures/ES6/template-literals/line-terminators.source.js: -------------------------------------------------------------------------------- 1 | var source = '`\n\r\n`'; -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/invalid-yield-binding-property.js: -------------------------------------------------------------------------------- 1 | var {x: y = yield 3} = z; 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/invalid-yield-generator-parameter.js: -------------------------------------------------------------------------------- 1 | function *g(yield){} 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/invalid-yield-object-methods.js: -------------------------------------------------------------------------------- 1 | function *a(){({b(){yield}})} -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-function.js: -------------------------------------------------------------------------------- 1 | function *g() { yield function(){} } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-arg-super.js: -------------------------------------------------------------------------------- 1 | class A { *b() { yield super.c(); } } 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-function-expression-parameter.js: -------------------------------------------------------------------------------- 1 | (function(yield) {}) 2 | -------------------------------------------------------------------------------- /test/fixtures/ES6/yield/yield-parameter-object-pattern.js: -------------------------------------------------------------------------------- 1 | function f({yield: y}){} 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/empty-child-comment.js: -------------------------------------------------------------------------------- 1 | {/* Hello from this side */} 2 | -------------------------------------------------------------------------------- /test/fixtures/JSX/multi-attributes.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /test/fixtures/automatic-semicolon-insertion/migrated_0003.js: -------------------------------------------------------------------------------- 1 | { var x = 14, y = 3 2 | z; } -------------------------------------------------------------------------------- /test/fixtures/automatic-semicolon-insertion/migrated_0013.js: -------------------------------------------------------------------------------- 1 | { throw error 2 | error; } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0001.js: -------------------------------------------------------------------------------- 1 | 42 /* block comment 1 */ /* block comment 2 */ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0002.js: -------------------------------------------------------------------------------- 1 | var p1;/* block comment 1 */ /* block comment 2 */ -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0031.js: -------------------------------------------------------------------------------- 1 | switch (answer) { case 42: /* perfect */ bingo() } -------------------------------------------------------------------------------- /test/fixtures/comment/migrated_0032.js: -------------------------------------------------------------------------------- 1 | switch (answer) { case 42: bingo() /* perfect */ } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/dupe-param.js: -------------------------------------------------------------------------------- 1 | function a(x, x) {'use strict';} 2 | -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0007.js: -------------------------------------------------------------------------------- 1 | function hello(a, b) { sayHi(); } -------------------------------------------------------------------------------- /test/fixtures/declaration/function/migrated_0010.js: -------------------------------------------------------------------------------- 1 | var hi = function arguments() { }; -------------------------------------------------------------------------------- /test/fixtures/es2017/async/arrows/async-arrow-trailing-comma.js: -------------------------------------------------------------------------------- 1 | async (x,y,) => x 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/async-method-computed.js: -------------------------------------------------------------------------------- 1 | ({ async ["xyz"]() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/async-method-literal.js: -------------------------------------------------------------------------------- 1 | ({ async "xyz"() {} }) 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/class-async-method.js: -------------------------------------------------------------------------------- 1 | class X { async f(){} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/class-async-set.js: -------------------------------------------------------------------------------- 1 | class X { async set(v){} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/invalid-async-generator.js: -------------------------------------------------------------------------------- 1 | x = { async *g() {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/invalid-async-getter.js: -------------------------------------------------------------------------------- 1 | x = { async get g() {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/methods/invalid-async-setter.js: -------------------------------------------------------------------------------- 1 | x = {async set s(i) {} } 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/regular-identifier/async-arrow-parameter1.js: -------------------------------------------------------------------------------- 1 | async => 42; 2 | -------------------------------------------------------------------------------- /test/fixtures/es2017/async/regular-identifier/call-async-await.js: -------------------------------------------------------------------------------- 1 | a = async(await); 2 | --------------------------------------------------------------------------------