MCPcopy Create free account
hub / github.com/nodejs/node / chunkObjectLiteralElements

Function chunkObjectLiteralElements

test/fixtures/snapshot/typescript.js:96709–96732  ·  view source on GitHub ↗
(elements)

Source from the content-addressed store, hash-verified

96707 return ts.visitEachChild(node, visitor, context);
96708 }
96709 function chunkObjectLiteralElements(elements) {
96710 var chunkObject;
96711 var objects = [];
96712 for (var _i = 0, elements_5 = elements; _i < elements_5.length; _i++) {
96713 var e = elements_5[_i];
96714 if (e.kind === 298 /* SyntaxKind.SpreadAssignment */) {
96715 if (chunkObject) {
96716 objects.push(factory.createObjectLiteralExpression(chunkObject));
96717 chunkObject = undefined;
96718 }
96719 var target = e.expression;
96720 objects.push(ts.visitNode(target, visitor, ts.isExpression));
96721 }
96722 else {
96723 chunkObject = ts.append(chunkObject, e.kind === 296 /* SyntaxKind.PropertyAssignment */
96724 ? factory.createPropertyAssignment(e.name, ts.visitNode(e.initializer, visitor, ts.isExpression))
96725 : ts.visitNode(e, visitor, ts.isObjectLiteralElementLike));
96726 }
96727 }
96728 if (chunkObject) {
96729 objects.push(factory.createObjectLiteralExpression(chunkObject));
96730 }
96731 return objects;
96732 }
96733 function visitObjectLiteralExpression(node) {
96734 if (node.transformFlags & 32768 /* TransformFlags.ContainsObjectRestOrSpread */) {
96735 // spread elements emit like so:

Callers 1

Calls 2

pushMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected