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

Function isValidPropertyAccess

test/fixtures/snapshot/typescript.js:75118–75127  ·  view source on GitHub ↗
(node, propertyName)

Source from the content-addressed store, hash-verified

75116 || !!parent && ts.isEntityNameExpression(name) && parent === getResolvedSymbol(ts.getFirstIdentifier(name));
75117 }
75118 function isValidPropertyAccess(node, propertyName) {
75119 switch (node.kind) {
75120 case 206 /* SyntaxKind.PropertyAccessExpression */:
75121 return isValidPropertyAccessWithType(node, node.expression.kind === 106 /* SyntaxKind.SuperKeyword */, propertyName, getWidenedType(checkExpression(node.expression)));
75122 case 161 /* SyntaxKind.QualifiedName */:
75123 return isValidPropertyAccessWithType(node, /*isSuper*/ false, propertyName, getWidenedType(checkExpression(node.left)));
75124 case 200 /* SyntaxKind.ImportType */:
75125 return isValidPropertyAccessWithType(node, /*isSuper*/ false, propertyName, getTypeFromTypeNode(node));
75126 }
75127 }
75128 /**
75129 * Checks if an existing property access is valid for completions purposes.
75130 * @param node a property access-like node where we want to check if we can access a property.

Callers 1

createTypeCheckerFunction · 0.85

Calls 4

getWidenedTypeFunction · 0.85
getTypeFromTypeNodeFunction · 0.85
checkExpressionFunction · 0.70

Tested by

no test coverage detected