MCPcopy Create free account
hub / github.com/Effect-TS/effect / parseDeclarationMembersTs

Function parseDeclarationMembersTs

packages/tools/jsdocs/src/Jsdocs.ts:3120–3133  ·  view source on GitHub ↗
(
  node: ts.Node,
  diagnostics: Array<JSDocModelDiagnostic>,
  linkContext: { readonly checker: ts.TypeChecker; readonly entry: ProgramCacheEntry; readonly cwd: string }
)

Source from the content-addressed store, hash-verified

3118}
3119
3120function parseDeclarationMembersTs(
3121 node: ts.Node,
3122 diagnostics: Array<JSDocModelDiagnostic>,
3123 linkContext: { readonly checker: ts.TypeChecker; readonly entry: ProgramCacheEntry; readonly cwd: string }
3124): Array<ParsedMember> {
3125 if (ts.isInterfaceDeclaration(node)) return parseTsMembers(node.members, diagnostics, linkContext)
3126 if (ts.isClassDeclaration(node)) return parseTsMembers(node.members, diagnostics, linkContext)
3127 if (ts.isTypeAliasDeclaration(node)) return parseMembersFromTsType(node.type, diagnostics, linkContext)
3128 if (ts.isVariableStatement(node)) {
3129 return node.declarationList.declarations.flatMap((d) => parseMembersFromTsType(d.type, diagnostics, linkContext))
3130 }
3131 if (ts.isFunctionDeclaration(node)) return parseMembersFromTsType(node.type, diagnostics, linkContext)
3132 return []
3133}
3134
3135function hasDeclareModifier(node: ts.Node): boolean {
3136 return ts.canHaveModifiers(node) &&

Callers 2

parseNamespaceTsFunction · 0.85
parseSourceFileDocsFunction · 0.85

Calls 2

parseTsMembersFunction · 0.85
parseMembersFromTsTypeFunction · 0.85

Tested by

no test coverage detected