MCPcopy Index your code
hub / github.com/nodejs/node / visitArrayAssignmentTarget

Function visitArrayAssignmentTarget

test/fixtures/snapshot/typescript.js:95762–95800  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

95760 return factory.createAssignmentTargetWrapper(parameter, createPrivateIdentifierAssignment(info, receiver, parameter, 63 /* SyntaxKind.EqualsToken */));
95761 }
95762 function visitArrayAssignmentTarget(node) {
95763 var target = ts.getTargetOfBindingOrAssignmentElement(node);
95764 if (target) {
95765 var wrapped = void 0;
95766 if (ts.isPrivateIdentifierPropertyAccessExpression(target)) {
95767 wrapped = wrapPrivateIdentifierForDestructuringTarget(target);
95768 }
95769 else if (shouldTransformSuperInStaticInitializers &&
95770 ts.isSuperProperty(target) &&
95771 currentStaticPropertyDeclarationOrStaticBlock &&
95772 currentClassLexicalEnvironment) {
95773 var classConstructor = currentClassLexicalEnvironment.classConstructor, superClassReference = currentClassLexicalEnvironment.superClassReference, facts = currentClassLexicalEnvironment.facts;
95774 if (facts & 1 /* ClassFacts.ClassWasDecorated */) {
95775 wrapped = visitInvalidSuperProperty(target);
95776 }
95777 else if (classConstructor && superClassReference) {
95778 var name = ts.isElementAccessExpression(target) ? ts.visitNode(target.argumentExpression, visitor, ts.isExpression) :
95779 ts.isIdentifier(target.name) ? factory.createStringLiteralFromNode(target.name) :
95780 undefined;
95781 if (name) {
95782 var temp = factory.createTempVariable(/*recordTempVariable*/ undefined);
95783 wrapped = factory.createAssignmentTargetWrapper(temp, factory.createReflectSetCall(superClassReference, name, temp, classConstructor));
95784 }
95785 }
95786 }
95787 if (wrapped) {
95788 if (ts.isAssignmentExpression(node)) {
95789 return factory.updateBinaryExpression(node, wrapped, node.operatorToken, ts.visitNode(node.right, visitor, ts.isExpression));
95790 }
95791 else if (ts.isSpreadElement(node)) {
95792 return factory.updateSpreadElement(node, wrapped);
95793 }
95794 else {
95795 return wrapped;
95796 }
95797 }
95798 }
95799 return ts.visitNode(node, visitorDestructuringTarget);
95800 }
95801 function visitObjectAssignmentTarget(node) {
95802 if (ts.isObjectBindingOrAssignmentElement(node) && !ts.isShorthandPropertyAssignment(node)) {
95803 var target = ts.getTargetOfBindingOrAssignmentElement(node);

Callers

nothing calls this directly

Tested by

no test coverage detected