(item ast.Expression)
| 1622 | } |
| 1623 | |
| 1624 | func (self *_parser) reinterpretAsDestructAssignTarget(item ast.Expression) ast.Expression { |
| 1625 | switch item := item.(type) { |
| 1626 | case nil: |
| 1627 | return nil |
| 1628 | case *ast.ArrayLiteral: |
| 1629 | return self.reinterpretAsArrayAssignmentPattern(item) |
| 1630 | case *ast.ObjectLiteral: |
| 1631 | return self.reinterpretAsObjectAssignmentPattern(item) |
| 1632 | case ast.Pattern, *ast.Identifier, *ast.DotExpression, *ast.PrivateDotExpression, *ast.BracketExpression: |
| 1633 | return item |
| 1634 | } |
| 1635 | self.error(item.Idx0(), "Invalid destructuring assignment target") |
| 1636 | return &ast.BadExpression{From: item.Idx0(), To: item.Idx1()} |
| 1637 | } |
| 1638 | |
| 1639 | func (self *_parser) reinterpretAsDestructBindingTarget(item ast.Expression) ast.BindingTarget { |
| 1640 | switch item := item.(type) { |
no test coverage detected