extends.js 982 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. // "ArrowFunctionExpression"
  2. class a extends (() => {}) {}
  3. // "AssignmentExpression"
  4. class a extends (b = c) {}
  5. // "AwaitExpression"
  6. async function f() {
  7. class a extends (await b) {}
  8. }
  9. // "BinaryExpression"
  10. class a extends (b + c) {}
  11. // "CallExpression"
  12. class a extends b() {}
  13. // "ClassExpression"
  14. class a extends class {} {}
  15. // "ConditionalExpression"
  16. class a extends (b ? c : d) {}
  17. // "FunctionExpression"
  18. class a extends (function() {}) {}
  19. // "LogicalExpression"
  20. class a extends (b || c) {}
  21. // "MemberExpression"
  22. class a extends b.c {}
  23. // "NewExpression"
  24. class a extends (new B()) {}
  25. // "ObjectExpression"
  26. class a extends ({}) {}
  27. // "SequenceExpression"
  28. class a extends (b, c) {}
  29. // "TaggedTemplateExpression"
  30. class a extends `` {}
  31. // "UnaryExpression"
  32. class a extends (void b) {}
  33. // "UpdateExpression"
  34. class a extends (++b) {}
  35. // "YieldExpression"
  36. function* f() {
  37. // Flow has a bug parsing it.
  38. // class a extends (yield 1) {}
  39. }
  40. x = class extends (++b) {}