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

Function addClassMembers

test/fixtures/snapshot/typescript.js:99587–99613  ·  view source on GitHub ↗

* Adds statements to the class body function for a class to define the members of the * class. * * @param statements The statements for the class body function. * @param node The ClassExpression or ClassDeclaration node.

(statements, node)

Source from the content-addressed store, hash-verified

99585 * @param node The ClassExpression or ClassDeclaration node.
99586 */
99587 function addClassMembers(statements, node) {
99588 for (var _i = 0, _a = node.members; _i < _a.length; _i++) {
99589 var member = _a[_i];
99590 switch (member.kind) {
99591 case 234 /* SyntaxKind.SemicolonClassElement */:
99592 statements.push(transformSemicolonClassElementToStatement(member));
99593 break;
99594 case 169 /* SyntaxKind.MethodDeclaration */:
99595 statements.push(transformClassMethodDeclarationToStatement(getClassMemberPrefix(node, member), member, node));
99596 break;
99597 case 172 /* SyntaxKind.GetAccessor */:
99598 case 173 /* SyntaxKind.SetAccessor */:
99599 var accessors = ts.getAllAccessorDeclarations(node.members, member);
99600 if (member === accessors.firstAccessor) {
99601 statements.push(transformAccessorsToStatement(getClassMemberPrefix(node, member), accessors, node));
99602 }
99603 break;
99604 case 171 /* SyntaxKind.Constructor */:
99605 case 170 /* SyntaxKind.ClassStaticBlockDeclaration */:
99606 // Constructors are handled in visitClassExpression/visitClassDeclaration
99607 break;
99608 default:
99609 ts.Debug.failBadSyntaxKind(member, currentSourceFile && currentSourceFile.fileName);
99610 break;
99611 }
99612 }
99613 }
99614 /**
99615 * Transforms a SemicolonClassElement into a statement for a class body function.
99616 *

Callers 1

transformClassBodyFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…