@lzehrung/codegraph 2.3.30 → 2.3.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/bin/cli.js +961 -649
  2. package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts +0 -7
  3. package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts.map +1 -1
  4. package/dist/graphs/symbol-graph-detailed/receiver-calls.js +2 -35
  5. package/dist/graphs/symbol-graph-detailed/receiver-calls.js.map +1 -1
  6. package/dist/impact/call-compatibility/providers/index.d.ts +12 -0
  7. package/dist/impact/call-compatibility/providers/index.d.ts.map +1 -1
  8. package/dist/impact/call-compatibility/providers/index.js +14 -20
  9. package/dist/impact/call-compatibility/providers/index.js.map +1 -1
  10. package/dist/impact/call-compatibility/providers/profiles.d.ts +80 -0
  11. package/dist/impact/call-compatibility/providers/profiles.d.ts.map +1 -0
  12. package/dist/impact/call-compatibility/providers/profiles.js +164 -0
  13. package/dist/impact/call-compatibility/providers/profiles.js.map +1 -0
  14. package/dist/impact/call-compatibility.d.ts.map +1 -1
  15. package/dist/impact/call-compatibility.js +71 -101
  16. package/dist/impact/call-compatibility.js.map +1 -1
  17. package/dist/impact/member-resolution-coverage.d.ts.map +1 -1
  18. package/dist/impact/member-resolution-coverage.js +1 -1
  19. package/dist/impact/member-resolution-coverage.js.map +1 -1
  20. package/dist/indexer/imports/binding-ranges.d.ts +1 -1
  21. package/dist/indexer/imports/binding-ranges.d.ts.map +1 -1
  22. package/dist/indexer/imports/import-binding-tables.d.ts +64 -0
  23. package/dist/indexer/imports/import-binding-tables.d.ts.map +1 -0
  24. package/dist/indexer/imports/import-binding-tables.js +419 -0
  25. package/dist/indexer/imports/import-binding-tables.js.map +1 -0
  26. package/dist/indexer/imports/language-specific.d.ts +3 -22
  27. package/dist/indexer/imports/language-specific.d.ts.map +1 -1
  28. package/dist/indexer/imports/language-specific.js +29 -362
  29. package/dist/indexer/imports/language-specific.js.map +1 -1
  30. package/dist/indexer/imports.d.ts.map +1 -1
  31. package/dist/indexer/imports.js +2 -1
  32. package/dist/indexer/imports.js.map +1 -1
  33. package/dist/indexer/navigation-goto.d.ts +1 -1
  34. package/dist/indexer/navigation-goto.d.ts.map +1 -1
  35. package/dist/indexer/navigation-goto.js +3 -2
  36. package/dist/indexer/navigation-goto.js.map +1 -1
  37. package/dist/util/dynamic-import-tables.d.ts +88 -0
  38. package/dist/util/dynamic-import-tables.d.ts.map +1 -0
  39. package/dist/util/dynamic-import-tables.js +100 -0
  40. package/dist/util/dynamic-import-tables.js.map +1 -0
  41. package/dist/util/member-access-tables.d.ts +72 -0
  42. package/dist/util/member-access-tables.d.ts.map +1 -0
  43. package/dist/util/member-access-tables.js +167 -0
  44. package/dist/util/member-access-tables.js.map +1 -0
  45. package/dist/util/member-access.d.ts.map +1 -1
  46. package/dist/util/member-access.js +44 -91
  47. package/dist/util/member-access.js.map +1 -1
  48. package/dist/util/specifiers.d.ts.map +1 -1
  49. package/dist/util/specifiers.js +10 -93
  50. package/dist/util/specifiers.js.map +1 -1
  51. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-goto.js","sourceRoot":"","sources":["../../src/indexer/navigation-goto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"navigation-goto.js","sourceRoot":"","sources":["../../src/indexer/navigation-goto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Per-language dynamic-import adapters for the runner in `./specifiers.js`.
3
+ *
4
+ * The runner and the shared constant-path fold stay in `./specifiers.js`; this module owns
5
+ * only the per-language call shapes and the path-fold profiles they name. The runner builds
6
+ * the table once and injects its fold implementations (`DynamicImportFoldHelpers`), so the
7
+ * two modules never import each other at runtime and no cycle forms.
8
+ */
9
+ /** Root a folded constant path is resolved against: the file's directory, the file itself,
10
+ * or the project root. */
11
+ export type DynamicBase = "fileDir" | "filePath" | "project";
12
+ /** A folded constant path: one rooted base plus its literal segments. */
13
+ export type FoldedPath = {
14
+ base: DynamicBase;
15
+ segments: string[];
16
+ };
17
+ /** Resolves a folded path against the root its base names. */
18
+ export type FoldedPathResolver = (folded: FoldedPath, fromFile: string, projectRoot: string) => string | null;
19
+ /**
20
+ * Per-language inputs to the shared constant-path fold: the base tokens that root a computed
21
+ * path and the join-style helper calls that combine a base with literal segments. Tokens are
22
+ * compared after whitespace removal, so `dirname(__FILE__)` and `process.cwd()` fold like
23
+ * identifiers. Languages without a concatenation operator only fold join-helper arguments.
24
+ */
25
+ export type PathFoldProfile = {
26
+ bases: Readonly<Record<string, DynamicBase>>;
27
+ joinHelpers: readonly string[];
28
+ /** Top-level concatenation operator between constant parts (PHP `.`). */
29
+ concat?: string;
30
+ };
31
+ export type DynamicImportPreparation = {
32
+ /** Python importlib alias tables collected once per file. */
33
+ pythonImportlibAliases?: Set<string>;
34
+ pythonImportModuleAliases?: Set<string>;
35
+ };
36
+ export type DynamicImportShapeContext = {
37
+ /** The text the shape's pattern ran over (comment-blanked for the JS family). */
38
+ text: string;
39
+ match: RegExpMatchArray;
40
+ fromFile: string;
41
+ projectRoot: string;
42
+ preparation: DynamicImportPreparation;
43
+ };
44
+ export type DynamicImportCallShape = {
45
+ /** Pattern over the entry's matching text; capture 1 holds the foldable argument, or the
46
+ * fold reads the argument from the match end (Python's escape-aware literal reader). */
47
+ pattern: RegExp;
48
+ fold: (context: DynamicImportShapeContext) => string | null;
49
+ };
50
+ export type DynamicImportEntry = {
51
+ /** Matching text, blanking comments through the shared trivia lexer where needed; string
52
+ * literals stay intact so folds can read their contents. */
53
+ text: (source: string) => string;
54
+ /** Non-code guard over the matching text; matches starting inside trivia are skipped. */
55
+ guard: (text: string) => Uint8Array | undefined;
56
+ /** Per-file preparation, evaluated once per extraction. */
57
+ prepare?: (source: string) => DynamicImportPreparation;
58
+ shapes: readonly DynamicImportCallShape[];
59
+ };
60
+ /**
61
+ * The shared fold implementation `./specifiers.js` injects. Keeping these as parameters rather
62
+ * than importing them is what keeps the entries here independent of the runner module.
63
+ */
64
+ export type DynamicImportFoldHelpers = {
65
+ /** Builds a shape fold that reads capture 1 as a constant path and resolves the fold. */
66
+ foldCapturedPath: (profile: PathFoldProfile, resolve: FoldedPathResolver) => (context: DynamicImportShapeContext) => string | null;
67
+ /** Folds a `new URL("...", import.meta.url)` argument list. */
68
+ foldNewUrlArgument: (argText: string, profile: PathFoldProfile) => FoldedPath | null;
69
+ resolveFoldedPathAgainstBase: FoldedPathResolver;
70
+ /** Resolves against the containing file's directory regardless of the named base. */
71
+ resolveFoldedPathAgainstFileDir: (folded: FoldedPath, fromFile: string) => string | null;
72
+ /** Resolves by concatenation onto the containing file's directory. */
73
+ resolveFoldedPathByConcatenation: (folded: FoldedPath, fromFile: string) => string | null;
74
+ /** Folds a Python dynamic-import call into a static module string. */
75
+ foldPythonDynamicModuleArgument: (source: string, match: RegExpMatchArray, preparation: DynamicImportPreparation) => string | null;
76
+ /** Collects the importlib alias tables a Python file's dynamic-import calls may use. */
77
+ collectPythonDynamicImportAliases: (source: string) => {
78
+ importlibAliases: Set<string>;
79
+ importModuleAliases: Set<string>;
80
+ };
81
+ };
82
+ /**
83
+ * Builds the dynamic-import adapter table keyed by registered language id. Callers supply the
84
+ * shared fold implementation; the per-file preparation and matching rules stay here with the
85
+ * language that needs them.
86
+ */
87
+ export declare function createDynamicImportEntries(folds: DynamicImportFoldHelpers): Readonly<Partial<Record<string, DynamicImportEntry>>>;
88
+ //# sourceMappingURL=dynamic-import-tables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-import-tables.d.ts","sourceRoot":"","sources":["../../src/util/dynamic-import-tables.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import { buildJsLikeLiteralMask, stripJsLikeComments } from "./comments.js";
2
+ import { PYTHON_IDENTIFIER_SOURCE } from "./identifiers.js";
3
+ import { buildTriviaMask } from "./trivia.js";
4
+ const JS_PATH_FOLD_PROFILE = {
5
+ bases: {
6
+ __dirname: "fileDir",
7
+ __filename: "filePath",
8
+ "import.meta.url": "filePath",
9
+ "process.cwd()": "project",
10
+ },
11
+ joinHelpers: ["path.join", "path.resolve"],
12
+ };
13
+ const RUBY_PATH_FOLD_PROFILE = {
14
+ bases: { __dir__: "fileDir" },
15
+ joinHelpers: ["File.join"],
16
+ };
17
+ const PHP_PATH_FOLD_PROFILE = {
18
+ bases: { __DIR__: "fileDir", "dirname(__FILE__)": "fileDir" },
19
+ joinHelpers: [],
20
+ concat: ".",
21
+ };
22
+ const JS_DYNAMIC_PATH_CALL_PATTERN = /(?<!["'`])\b(?:require|import)\s*\(\s*(path\.(?:join|resolve)\s*\((?:[^()]|\([^()]*\))*\))\s*\)/g;
23
+ const JS_DYNAMIC_URL_CALL_PATTERN = /(?<!["'`])\b(?:require|import)\s*\(\s*(new\s+URL\s*\([^)]*\))\s*\)/g;
24
+ const RUBY_REQUIRE_FILE_JOIN_PATTERN = /(?<![\p{XID_Continue}])require\s*\(?\s*(File\.join\s*\((?:[^()]|\([^()]*\))*\))/gu;
25
+ const PHP_COMPUTED_INCLUDE_PATTERN = /(?<![\p{XID_Continue}$])(?:include_once|include|require_once|require)\b\s*\(?\s*([^;\r\n]*?)\s*\)?\s*;/gu;
26
+ const PYTHON_DYNAMIC_CALL_PREFIX_PATTERN = new RegExp(String.raw `(?<![._\p{XID_Continue}])(${PYTHON_IDENTIFIER_SOURCE})(?:\s*\.\s*(${PYTHON_IDENTIFIER_SOURCE}))?\s*\(\s*(?:name\s*=\s*)?`, "gmu");
27
+ /**
28
+ * Builds the dynamic-import adapter table keyed by registered language id. Callers supply the
29
+ * shared fold implementation; the per-file preparation and matching rules stay here with the
30
+ * language that needs them.
31
+ */
32
+ export function createDynamicImportEntries(folds) {
33
+ const JS_TS_DYNAMIC_IMPORT_ENTRY = {
34
+ // Comments are blanked before matching so a `require(...)` inside a comment cannot match;
35
+ // string literals stay intact because the fold reads their contents.
36
+ text: stripJsLikeComments,
37
+ guard: buildJsLikeLiteralMask,
38
+ shapes: [
39
+ {
40
+ pattern: JS_DYNAMIC_PATH_CALL_PATTERN,
41
+ fold: folds.foldCapturedPath(JS_PATH_FOLD_PROFILE, folds.resolveFoldedPathAgainstBase),
42
+ },
43
+ {
44
+ pattern: JS_DYNAMIC_URL_CALL_PATTERN,
45
+ fold: ({ match, fromFile }) => {
46
+ const folded = folds.foldNewUrlArgument(match[1] ?? "", JS_PATH_FOLD_PROFILE);
47
+ return folded ? folds.resolveFoldedPathAgainstFileDir(folded, fromFile) : null;
48
+ },
49
+ },
50
+ ],
51
+ };
52
+ const RUBY_DYNAMIC_IMPORT_ENTRY = {
53
+ text: (source) => source,
54
+ guard: (text) => buildTriviaMask(text, "ruby"),
55
+ shapes: [
56
+ {
57
+ // Only the computed `require File.join(__dir__, ...)` form is folded here; bare-string
58
+ // requires flow through the static pipeline and `$LOAD_PATH` lookups stay external.
59
+ pattern: RUBY_REQUIRE_FILE_JOIN_PATTERN,
60
+ fold: folds.foldCapturedPath(RUBY_PATH_FOLD_PROFILE, folds.resolveFoldedPathByConcatenation),
61
+ },
62
+ ],
63
+ };
64
+ const PHP_DYNAMIC_IMPORT_ENTRY = {
65
+ text: (source) => source,
66
+ guard: (text) => buildTriviaMask(text, "php"),
67
+ shapes: [
68
+ {
69
+ // Computed `include`/`require` whose path is a constant chain rooted at `__DIR__` (or
70
+ // the legacy `dirname(__FILE__)`); plain string operands stay with the static pipeline
71
+ // and the include-path search stays external.
72
+ pattern: PHP_COMPUTED_INCLUDE_PATTERN,
73
+ fold: folds.foldCapturedPath(PHP_PATH_FOLD_PROFILE, folds.resolveFoldedPathByConcatenation),
74
+ },
75
+ ],
76
+ };
77
+ const PYTHON_DYNAMIC_IMPORT_ENTRY = {
78
+ text: (source) => source,
79
+ guard: (text) => buildTriviaMask(text, "python"),
80
+ prepare: (source) => {
81
+ const { importlibAliases, importModuleAliases } = folds.collectPythonDynamicImportAliases(source);
82
+ return { pythonImportlibAliases: importlibAliases, pythonImportModuleAliases: importModuleAliases };
83
+ },
84
+ shapes: [
85
+ {
86
+ pattern: PYTHON_DYNAMIC_CALL_PREFIX_PATTERN,
87
+ fold: ({ text, match, preparation }) => folds.foldPythonDynamicModuleArgument(text, match, preparation),
88
+ },
89
+ ],
90
+ };
91
+ const entries = {
92
+ js: JS_TS_DYNAMIC_IMPORT_ENTRY,
93
+ ts: JS_TS_DYNAMIC_IMPORT_ENTRY,
94
+ python: PYTHON_DYNAMIC_IMPORT_ENTRY,
95
+ ruby: RUBY_DYNAMIC_IMPORT_ENTRY,
96
+ php: PHP_DYNAMIC_IMPORT_ENTRY,
97
+ };
98
+ return entries;
99
+ }
100
+ //# sourceMappingURL=dynamic-import-tables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-import-tables.js","sourceRoot":"","sources":["../../src/util/dynamic-import-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAkC9C,MAAM,oBAAoB,GAAoB;IAC5C,KAAK,EAAE;QACL,SAAS,EAAE,SAAS;QACpB,UAAU,EAAE,UAAU;QACtB,iBAAiB,EAAE,UAAU;QAC7B,eAAe,EAAE,SAAS;KAC3B;IACD,WAAW,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC;CAC3C,CAAC;AAEF,MAAM,sBAAsB,GAAoB;IAC9C,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;IAC7B,WAAW,EAAE,CAAC,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,qBAAqB,GAAoB;IAC7C,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE;IAC7D,WAAW,EAAE,EAAE;IACf,MAAM,EAAE,GAAG;CACZ,CAAC;AAiEF,MAAM,4BAA4B,GAChC,kGAAkG,CAAC;AACrG,MAAM,2BAA2B,GAAG,qEAAqE,CAAC;AAC1G,MAAM,8BAA8B,GAClC,mFAAmF,CAAC;AACtF,MAAM,4BAA4B,GAChC,0GAA0G,CAAC;AAC7G,MAAM,kCAAkC,GAAG,IAAI,MAAM,CACnD,MAAM,CAAC,GAAG,CAAA,6BAA6B,wBAAwB,gBAAgB,wBAAwB,6BAA6B,EACpI,KAAK,CACN,CAAC;AAIF;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,KAA+B;IAE/B,MAAM,0BAA0B,GAAuB;QACrD,0FAA0F;QAC1F,qEAAqE;QACrE,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,sBAAsB;QAC7B,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,4BAA4B;gBACrC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,CAAC,4BAA4B,CAAC;aACvF;YACD;gBACE,OAAO,EAAE,2BAA2B;gBACpC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;oBAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,oBAAoB,CAAC,CAAC;oBAC9E,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACjF,CAAC;aACF;SACF;KACF,CAAC;IAEF,MAAM,yBAAyB,GAAuB;QACpD,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM;QACxB,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC;QAC9C,MAAM,EAAE;YACN;gBACE,uFAAuF;gBACvF,oFAAoF;gBACpF,OAAO,EAAE,8BAA8B;gBACvC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,KAAK,CAAC,gCAAgC,CAAC;aAC7F;SACF;KACF,CAAC;IAEF,MAAM,wBAAwB,GAAuB;QACnD,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM;QACxB,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC;QAC7C,MAAM,EAAE;YACN;gBACE,sFAAsF;gBACtF,uFAAuF;gBACvF,8CAA8C;gBAC9C,OAAO,EAAE,4BAA4B;gBACrC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,KAAK,CAAC,gCAAgC,CAAC;aAC5F;SACF;KACF,CAAC;IAEF,MAAM,2BAA2B,GAAuB;QACtD,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM;QACxB,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;QAChD,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YAClB,MAAM,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,GAAG,KAAK,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAC;YAClG,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,CAAC;QACtG,CAAC;QACD,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,kCAAkC;gBAC3C,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,+BAA+B,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC;aACxG;SACF;KACF,CAAC;IAEF,MAAM,OAAO,GAAG;QACd,EAAE,EAAE,0BAA0B;QAC9B,EAAE,EAAE,0BAA0B;QAC9B,MAAM,EAAE,2BAA2B;QACnC,IAAI,EAAE,yBAAyB;QAC/B,GAAG,EAAE,wBAAwB;KACgC,CAAC;IAChE,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Per-language member-access and receiver-shape tables for `./member-access.ts` and the receiver
3
+ * pass in `../graphs/symbol-graph-detailed/receiver-calls.ts`. Rows are keyed by language id,
4
+ * following the trivia-table precedent in `./trivia-tables.ts`: the walkers keep the algorithm,
5
+ * the table keeps the per-language node types, extraction shapes, and receiver keywords.
6
+ *
7
+ * Every registered language has a row. A document, style, or data format row carries only
8
+ * `omittedReason`; a source-language row declares each capability it has and names a one-line
9
+ * reason for each capability it omits, so an omission cannot flip silently.
10
+ * `tests/member-access-tables.test.ts` asserts both halves and re-derives every declared node
11
+ * type from that language's pinned grammar.
12
+ */
13
+ /** Receiver spellings that denote the type declaring the calling member, per language. */
14
+ export type ReceiverKeywords = {
15
+ /** Keywords naming the type that declares the calling member. */
16
+ own: readonly string[];
17
+ /** Keywords naming a supertype of the declaring type. */
18
+ supertype: readonly string[];
19
+ };
20
+ /**
21
+ * How one child of a member-access node is extracted: by field name with a positional fallback,
22
+ * by plain child index, or by named-child index with a plain-child fallback.
23
+ */
24
+ export type MemberAccessChild = {
25
+ field: string;
26
+ fallbackIndex: number;
27
+ } | {
28
+ index: number;
29
+ } | {
30
+ namedIndex: number;
31
+ };
32
+ export type MemberAccessShape = {
33
+ /**
34
+ * Member-access node types the shape applies to. A shape without `nodeTypes` is the language's
35
+ * fallback for every other member-access node and must be the last shape in its row.
36
+ */
37
+ nodeTypes?: readonly string[];
38
+ object: MemberAccessChild;
39
+ /** `{ navigation: true }` defers to `getNavigationExpressionProperty`'s navigation-suffix walk. */
40
+ property: MemberAccessChild | {
41
+ navigation: true;
42
+ };
43
+ };
44
+ export type MemberAccessRow = {
45
+ /** Why the language has no member-access capability at all; only document, style, and data formats set it. */
46
+ omittedReason?: string;
47
+ /** Member-expression node type for a support whose `nodeTypes.memberExpression` capability is absent. */
48
+ memberExpressionType?: string;
49
+ /** Node types added to the shared traversal base set in `memberAccessTraversalTypes`. */
50
+ extraTraversalTypes?: readonly string[];
51
+ /** Node types added to the shared generic member-access list in `isMemberAccessNode`. */
52
+ extraMemberAccessTypes?: readonly string[];
53
+ /** Extraction shapes for `getMemberAccessParts`, tried in order before the shared generic default. */
54
+ memberAccessShapes?: readonly MemberAccessShape[];
55
+ /** Why the language declares no shapes of its own: the shared generic default is its extraction. */
56
+ memberAccessOmittedReason?: string;
57
+ /** Kotlin fallback: a degraded `navigation_suffix` leaves the property as the expression's last named child. */
58
+ navigationFallbackLastChild?: true;
59
+ /** Identifiers that name the type declaring the calling member. */
60
+ receiverKeywords?: ReceiverKeywords;
61
+ /** Why the language declares no receiver keywords. */
62
+ receiverKeywordsOmittedReason?: string;
63
+ };
64
+ export declare const MEMBER_ACCESS_ROWS: Record<string, MemberAccessRow>;
65
+ /** Every language that declares receiver keywords, guarded by the registry-consistency test. */
66
+ export declare const receiverKeywordLanguageIds: readonly string[];
67
+ /** Languages that emit proven receiver `calls` edges from the shared keyword table. */
68
+ export declare function supportsReceiverCallEdges(languageId: string): boolean;
69
+ /** Languages where goto and references require proven receivers and do not fall back to a bare name. */
70
+ export declare function supportsReceiverMemberNavigation(languageId: string): boolean;
71
+ export declare function isKeywordReceiver(languageId: string, receiverName: string): boolean;
72
+ //# sourceMappingURL=member-access-tables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-access-tables.d.ts","sourceRoot":"","sources":["../../src/util/member-access-tables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,GAAG;IAC7B,iEAAiE;IACjE,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB,yDAAyD;IACzD,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,mGAAmG;IACnG,QAAQ,EAAE,iBAAiB,GAAG;QAAE,UAAU,EAAE,IAAI,CAAA;KAAE,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,8GAA8G;IAC9G,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yGAAyG;IACzG,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,yFAAyF;IACzF,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,yFAAyF;IACzF,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,sGAAsG;IACtG,kBAAkB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAClD,oGAAoG;IACpG,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,gHAAgH;IAChH,2BAA2B,CAAC,EAAE,IAAI,CAAC;IACnC,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,sDAAsD;IACtD,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACxC,CAAC;AAkBF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAgI9D,CAAC;AAEF,gGAAgG;AAChG,eAAO,MAAM,0BAA0B,EAAE,SAAS,MAAM,EAEvD,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,wGAAwG;AACxG,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5E;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAInF"}
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Per-language member-access and receiver-shape tables for `./member-access.ts` and the receiver
3
+ * pass in `../graphs/symbol-graph-detailed/receiver-calls.ts`. Rows are keyed by language id,
4
+ * following the trivia-table precedent in `./trivia-tables.ts`: the walkers keep the algorithm,
5
+ * the table keeps the per-language node types, extraction shapes, and receiver keywords.
6
+ *
7
+ * Every registered language has a row. A document, style, or data format row carries only
8
+ * `omittedReason`; a source-language row declares each capability it has and names a one-line
9
+ * reason for each capability it omits, so an omission cannot flip silently.
10
+ * `tests/member-access-tables.test.ts` asserts both halves and re-derives every declared node
11
+ * type from that language's pinned grammar.
12
+ */
13
+ /** C models dotted access as `field_expression`; C++ also exposes scoped `qualified_identifier`. */
14
+ const C_FIELD_ACCESS_SHAPE = {
15
+ nodeTypes: ["field_expression"],
16
+ object: { field: "argument", fallbackIndex: 0 },
17
+ property: { field: "field", fallbackIndex: 2 },
18
+ };
19
+ const CPP_QUALIFIED_ACCESS_SHAPE = {
20
+ nodeTypes: ["qualified_identifier"],
21
+ object: { field: "scope", fallbackIndex: 0 },
22
+ property: { field: "name", fallbackIndex: 2 },
23
+ };
24
+ const THIS_SUPER_RECEIVERS = { own: ["this"], supertype: ["super"] };
25
+ const SELF_RECEIVERS = { own: ["self"], supertype: ["super"] };
26
+ export const MEMBER_ACCESS_ROWS = {
27
+ adoc: { omittedReason: "AsciiDoc document format; embedded code blocks parse as their own language." },
28
+ astro: { omittedReason: "Astro document format; scripts parse as js/ts and templates as html." },
29
+ c: {
30
+ memberAccessShapes: [C_FIELD_ACCESS_SHAPE],
31
+ receiverKeywordsOmittedReason: "C has no receiver keyword; member access always names an explicit object or pointer.",
32
+ },
33
+ cpp: {
34
+ memberAccessShapes: [C_FIELD_ACCESS_SHAPE, CPP_QUALIFIED_ACCESS_SHAPE],
35
+ receiverKeywords: { own: ["this"], supertype: [] },
36
+ },
37
+ css: { omittedReason: "Style language; no member-access concept." },
38
+ csharp: {
39
+ memberAccessShapes: [{ object: { index: 0 }, property: { index: 2 } }],
40
+ receiverKeywords: { own: ["this"], supertype: ["base"] },
41
+ },
42
+ go: {
43
+ extraTraversalTypes: ["qualified_type"],
44
+ extraMemberAccessTypes: ["qualified_type"],
45
+ memberAccessShapes: [{ nodeTypes: ["qualified_type"], object: { namedIndex: 0 }, property: { namedIndex: 1 } }],
46
+ // Go has no receiver keyword: a method call's receiver is an ordinary value. The row still
47
+ // exists so go receivers must be proven rather than falling back to a bare name.
48
+ receiverKeywords: { own: [], supertype: [] },
49
+ },
50
+ hbs: { omittedReason: "Handlebars document format; embedded scripts parse as their own language." },
51
+ html: { omittedReason: "Document format; embedded scripts parse as their own language." },
52
+ java: {
53
+ memberAccessShapes: [
54
+ {
55
+ nodeTypes: ["method_invocation"],
56
+ object: { field: "object", fallbackIndex: 0 },
57
+ property: { field: "name", fallbackIndex: 2 },
58
+ },
59
+ {
60
+ nodeTypes: ["scoped_identifier", "scoped_type_identifier"],
61
+ object: { field: "scope", fallbackIndex: 0 },
62
+ property: { field: "name", fallbackIndex: 2 },
63
+ },
64
+ ],
65
+ receiverKeywords: THIS_SUPER_RECEIVERS,
66
+ },
67
+ js: {
68
+ memberAccessOmittedReason: "The shared generic default already reads member_expression's object and property fields.",
69
+ receiverKeywords: THIS_SUPER_RECEIVERS,
70
+ },
71
+ kotlin: {
72
+ memberAccessShapes: [
73
+ { nodeTypes: ["navigation_expression"], object: { namedIndex: 0 }, property: { navigation: true } },
74
+ ],
75
+ navigationFallbackLastChild: true,
76
+ receiverKeywords: THIS_SUPER_RECEIVERS,
77
+ },
78
+ less: { omittedReason: "Style language; no member-access concept." },
79
+ markdown: { omittedReason: "Document format; fenced code blocks parse as their own language." },
80
+ mdx: { omittedReason: "MDX document format; scripts parse as js/ts and templates as html." },
81
+ php: {
82
+ extraMemberAccessTypes: ["member_call_expression", "nullsafe_member_call_expression", "scoped_call_expression"],
83
+ memberAccessShapes: [
84
+ {
85
+ nodeTypes: ["member_call_expression", "nullsafe_member_call_expression"],
86
+ object: { field: "object", fallbackIndex: 0 },
87
+ property: { field: "name", fallbackIndex: 2 },
88
+ },
89
+ {
90
+ nodeTypes: ["scoped_call_expression"],
91
+ object: { field: "scope", fallbackIndex: 0 },
92
+ property: { field: "name", fallbackIndex: 2 },
93
+ },
94
+ ],
95
+ receiverKeywords: { own: ["$this", "self", "static"], supertype: ["parent"] },
96
+ },
97
+ python: {
98
+ memberExpressionType: "attribute",
99
+ memberAccessShapes: [
100
+ { object: { field: "object", fallbackIndex: 0 }, property: { field: "attribute", fallbackIndex: 2 } },
101
+ ],
102
+ receiverKeywords: { own: ["self", "cls"], supertype: [] },
103
+ },
104
+ rst: { omittedReason: "reStructuredText document format; embedded code blocks parse as their own language." },
105
+ ruby: {
106
+ memberExpressionType: "call",
107
+ memberAccessShapes: [
108
+ {
109
+ nodeTypes: ["scope_resolution"],
110
+ object: { field: "scope", fallbackIndex: 0 },
111
+ property: { field: "name", fallbackIndex: 2 },
112
+ },
113
+ // Ruby models every other member access as a `call` node with receiver and method fields.
114
+ { object: { field: "receiver", fallbackIndex: 0 }, property: { field: "method", fallbackIndex: 2 } },
115
+ ],
116
+ receiverKeywords: { own: ["self"], supertype: [] },
117
+ },
118
+ rust: {
119
+ memberAccessShapes: [
120
+ {
121
+ nodeTypes: ["scoped_identifier"],
122
+ object: { field: "path", fallbackIndex: 0 },
123
+ property: { field: "name", fallbackIndex: 2 },
124
+ },
125
+ ],
126
+ receiverKeywords: { own: ["self", "Self"], supertype: [] },
127
+ },
128
+ scss: { omittedReason: "Style language; no member-access concept." },
129
+ svelte: { omittedReason: "Svelte component format; script blocks parse as js/ts and templates as html." },
130
+ sql: { omittedReason: "Data language; no member-access concept." },
131
+ swift: {
132
+ memberAccessShapes: [
133
+ { nodeTypes: ["navigation_expression"], object: { namedIndex: 0 }, property: { navigation: true } },
134
+ ],
135
+ receiverKeywords: SELF_RECEIVERS,
136
+ },
137
+ ts: {
138
+ memberAccessOmittedReason: "The shared generic default already reads member_expression's object and property fields.",
139
+ receiverKeywords: THIS_SUPER_RECEIVERS,
140
+ },
141
+ tsx: {
142
+ memberAccessOmittedReason: "The shared generic default already reads member_expression's object and property fields.",
143
+ receiverKeywords: THIS_SUPER_RECEIVERS,
144
+ },
145
+ vue: { omittedReason: "Vue component format; script blocks parse as js/ts and templates as html." },
146
+ zig: {
147
+ memberAccessOmittedReason: "No per-language extraction today; the shared generic default is zig's behavior.",
148
+ receiverKeywords: { own: ["self"], supertype: [] },
149
+ },
150
+ };
151
+ /** Every language that declares receiver keywords, guarded by the registry-consistency test. */
152
+ export const receiverKeywordLanguageIds = Object.keys(MEMBER_ACCESS_ROWS).filter((languageId) => MEMBER_ACCESS_ROWS[languageId].receiverKeywords !== undefined);
153
+ /** Languages that emit proven receiver `calls` edges from the shared keyword table. */
154
+ export function supportsReceiverCallEdges(languageId) {
155
+ return MEMBER_ACCESS_ROWS[languageId]?.receiverKeywords !== undefined;
156
+ }
157
+ /** Languages where goto and references require proven receivers and do not fall back to a bare name. */
158
+ export function supportsReceiverMemberNavigation(languageId) {
159
+ return MEMBER_ACCESS_ROWS[languageId]?.receiverKeywords !== undefined;
160
+ }
161
+ export function isKeywordReceiver(languageId, receiverName) {
162
+ const keywords = MEMBER_ACCESS_ROWS[languageId]?.receiverKeywords;
163
+ if (!keywords)
164
+ return false;
165
+ return keywords.own.includes(receiverName) || keywords.supertype.includes(receiverName);
166
+ }
167
+ //# sourceMappingURL=member-access-tables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-access-tables.js","sourceRoot":"","sources":["../../src/util/member-access-tables.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"member-access.d.ts","sourceRoot":"","sources":["../../src/util/member-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAKpE;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,EAAE,CAE5E;AAED,wBAAgB,sCAAsC,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,EAAE,CAErF;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,CAW5E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAsBtF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAWlE;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElF;AAED,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnG;AAED,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,GAAG,cAAc,GAAG,IAAI,CAajH;AAiBD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,GAAG,iBAAiB,CAwDxG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,GAAG,EAAE,eAAe,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,cAAc,CAAC;IAC1B,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC,GAAG,iBAAiB,GAAG,IAAI,CA0C3B"}
1
+ {"version":3,"file":"member-access.d.ts","sourceRoot":"","sources":["../../src/util/member-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAsBF,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAGpE;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,EAAE,CAE5E;AAED,wBAAgB,sCAAsC,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,EAAE,CAErF;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,CAS5E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAMtF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAWlE;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElF;AAED,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnG;AAED,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,GAAG,cAAc,GAAG,IAAI,CAajH;AAgBD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,GAAG,iBAAiB,CAiBxG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,GAAG,EAAE,eAAe,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,cAAc,CAAC;IAC1B,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC,GAAG,iBAAiB,GAAG,IAAI,CA0C3B"}