@lzehrung/codegraph 2.3.24 → 2.3.25

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 (181) hide show
  1. package/README.md +1 -1
  2. package/codegraph-skill/codegraph/SKILL.md +1 -1
  3. package/dist/bin/cli.js +3420 -1620
  4. package/dist/bin/query-index-worker.js +569 -229
  5. package/dist/cli/context.d.ts.map +1 -1
  6. package/dist/cli/context.js +7 -4
  7. package/dist/cli/context.js.map +1 -1
  8. package/dist/cli/doctor.d.ts +1 -0
  9. package/dist/cli/doctor.d.ts.map +1 -1
  10. package/dist/cli/doctor.js +8 -1
  11. package/dist/cli/doctor.js.map +1 -1
  12. package/dist/document-links/asciidoc.d.ts.map +1 -1
  13. package/dist/document-links/asciidoc.js +33 -0
  14. package/dist/document-links/asciidoc.js.map +1 -1
  15. package/dist/document-links/language-ids.d.ts +10 -0
  16. package/dist/document-links/language-ids.d.ts.map +1 -0
  17. package/dist/document-links/language-ids.js +15 -0
  18. package/dist/document-links/language-ids.js.map +1 -0
  19. package/dist/document-links/markdown.d.ts.map +1 -1
  20. package/dist/document-links/markdown.js +103 -21
  21. package/dist/document-links/markdown.js.map +1 -1
  22. package/dist/document-links/shared.d.ts.map +1 -1
  23. package/dist/document-links/shared.js +1 -0
  24. package/dist/document-links/shared.js.map +1 -1
  25. package/dist/document-links.d.ts +1 -3
  26. package/dist/document-links.d.ts.map +1 -1
  27. package/dist/document-links.js +1 -8
  28. package/dist/document-links.js.map +1 -1
  29. package/dist/duplicates/unit-cache.d.ts +1 -1
  30. package/dist/duplicates/unit-cache.d.ts.map +1 -1
  31. package/dist/duplicates/unit-cache.js +4 -1
  32. package/dist/duplicates/unit-cache.js.map +1 -1
  33. package/dist/duplicates/units.d.ts +1 -0
  34. package/dist/duplicates/units.d.ts.map +1 -1
  35. package/dist/duplicates/units.js +55 -10
  36. package/dist/duplicates/units.js.map +1 -1
  37. package/dist/graphs/edge-resolution.d.ts.map +1 -1
  38. package/dist/graphs/edge-resolution.js +3 -0
  39. package/dist/graphs/edge-resolution.js.map +1 -1
  40. package/dist/graphs/external/stdlib.d.ts.map +1 -1
  41. package/dist/graphs/external/stdlib.js +18 -11
  42. package/dist/graphs/external/stdlib.js.map +1 -1
  43. package/dist/graphs/specifiers.d.ts +3 -2
  44. package/dist/graphs/specifiers.d.ts.map +1 -1
  45. package/dist/graphs/specifiers.js +76 -39
  46. package/dist/graphs/specifiers.js.map +1 -1
  47. package/dist/graphs/symbol-graph-detailed/receiver-calls.js +1 -1
  48. package/dist/graphs/symbol-graph-detailed/receiver-calls.js.map +1 -1
  49. package/dist/indexer/build-cache/options.d.ts +8 -2
  50. package/dist/indexer/build-cache/options.d.ts.map +1 -1
  51. package/dist/indexer/build-cache/options.js +10 -2
  52. package/dist/indexer/build-cache/options.js.map +1 -1
  53. package/dist/indexer/build-cache/reports.d.ts.map +1 -1
  54. package/dist/indexer/build-cache/reports.js +29 -21
  55. package/dist/indexer/build-cache/reports.js.map +1 -1
  56. package/dist/indexer/expand-star-imports.d.ts.map +1 -1
  57. package/dist/indexer/expand-star-imports.js +8 -3
  58. package/dist/indexer/expand-star-imports.js.map +1 -1
  59. package/dist/indexer/imports/language-specific.d.ts.map +1 -1
  60. package/dist/indexer/imports/language-specific.js +166 -32
  61. package/dist/indexer/imports/language-specific.js.map +1 -1
  62. package/dist/indexer/imports/native-captures.d.ts.map +1 -1
  63. package/dist/indexer/imports/native-captures.js +4 -3
  64. package/dist/indexer/imports/native-captures.js.map +1 -1
  65. package/dist/indexer/imports/python.d.ts +2 -0
  66. package/dist/indexer/imports/python.d.ts.map +1 -1
  67. package/dist/indexer/imports/python.js +113 -8
  68. package/dist/indexer/imports/python.js.map +1 -1
  69. package/dist/indexer/imports.d.ts.map +1 -1
  70. package/dist/indexer/imports.js +25 -12
  71. package/dist/indexer/imports.js.map +1 -1
  72. package/dist/indexer/locals-and-exports.d.ts.map +1 -1
  73. package/dist/indexer/locals-and-exports.js +153 -38
  74. package/dist/indexer/locals-and-exports.js.map +1 -1
  75. package/dist/indexer/navigation-goto.js +1 -1
  76. package/dist/indexer/navigation-goto.js.map +1 -1
  77. package/dist/indexer/scope-types.d.ts +1 -1
  78. package/dist/indexer/scope-types.d.ts.map +1 -1
  79. package/dist/indexer/scope.d.ts.map +1 -1
  80. package/dist/indexer/scope.js +43 -2
  81. package/dist/indexer/scope.js.map +1 -1
  82. package/dist/languages/definitions/c-family.d.ts +5 -0
  83. package/dist/languages/definitions/c-family.d.ts.map +1 -1
  84. package/dist/languages/definitions/c-family.js +27 -6
  85. package/dist/languages/definitions/c-family.js.map +1 -1
  86. package/dist/languages/definitions/c.d.ts.map +1 -1
  87. package/dist/languages/definitions/c.js +5 -0
  88. package/dist/languages/definitions/c.js.map +1 -1
  89. package/dist/languages/definitions/cpp.d.ts.map +1 -1
  90. package/dist/languages/definitions/cpp.js +41 -3
  91. package/dist/languages/definitions/cpp.js.map +1 -1
  92. package/dist/languages/definitions/csharp.d.ts.map +1 -1
  93. package/dist/languages/definitions/csharp.js +52 -21
  94. package/dist/languages/definitions/csharp.js.map +1 -1
  95. package/dist/languages/definitions/go.d.ts.map +1 -1
  96. package/dist/languages/definitions/go.js +10 -7
  97. package/dist/languages/definitions/go.js.map +1 -1
  98. package/dist/languages/definitions/html-stub.d.ts +6 -7
  99. package/dist/languages/definitions/html-stub.d.ts.map +1 -1
  100. package/dist/languages/definitions/html-stub.js +6 -7
  101. package/dist/languages/definitions/html-stub.js.map +1 -1
  102. package/dist/languages/definitions/html.js +13 -13
  103. package/dist/languages/definitions/html.js.map +1 -1
  104. package/dist/languages/definitions/java.d.ts.map +1 -1
  105. package/dist/languages/definitions/java.js +6 -0
  106. package/dist/languages/definitions/java.js.map +1 -1
  107. package/dist/languages/definitions/javascript.d.ts.map +1 -1
  108. package/dist/languages/definitions/javascript.js +48 -30
  109. package/dist/languages/definitions/javascript.js.map +1 -1
  110. package/dist/languages/definitions/kotlin.d.ts.map +1 -1
  111. package/dist/languages/definitions/kotlin.js +49 -61
  112. package/dist/languages/definitions/kotlin.js.map +1 -1
  113. package/dist/languages/definitions/php.js +1 -1
  114. package/dist/languages/definitions/php.js.map +1 -1
  115. package/dist/languages/definitions/python.d.ts.map +1 -1
  116. package/dist/languages/definitions/python.js +85 -20
  117. package/dist/languages/definitions/python.js.map +1 -1
  118. package/dist/languages/definitions/ruby.d.ts.map +1 -1
  119. package/dist/languages/definitions/ruby.js +13 -11
  120. package/dist/languages/definitions/ruby.js.map +1 -1
  121. package/dist/languages/definitions/rust.d.ts.map +1 -1
  122. package/dist/languages/definitions/rust.js +22 -5
  123. package/dist/languages/definitions/rust.js.map +1 -1
  124. package/dist/languages/definitions/scss.d.ts.map +1 -1
  125. package/dist/languages/definitions/scss.js +21 -17
  126. package/dist/languages/definitions/scss.js.map +1 -1
  127. package/dist/languages/definitions/sql.js +1 -1
  128. package/dist/languages/definitions/sql.js.map +1 -1
  129. package/dist/languages/definitions/swift.d.ts.map +1 -1
  130. package/dist/languages/definitions/swift.js +66 -16
  131. package/dist/languages/definitions/swift.js.map +1 -1
  132. package/dist/languages/definitions/typescript.d.ts.map +1 -1
  133. package/dist/languages/definitions/typescript.js +30 -9
  134. package/dist/languages/definitions/typescript.js.map +1 -1
  135. package/dist/languages/definitions/zig.d.ts.map +1 -1
  136. package/dist/languages/definitions/zig.js +26 -5
  137. package/dist/languages/definitions/zig.js.map +1 -1
  138. package/dist/languages/import-statement-parsers.d.ts +14 -1
  139. package/dist/languages/import-statement-parsers.d.ts.map +1 -1
  140. package/dist/languages/import-statement-parsers.js +473 -45
  141. package/dist/languages/import-statement-parsers.js.map +1 -1
  142. package/dist/languages/types.d.ts +11 -0
  143. package/dist/languages/types.d.ts.map +1 -1
  144. package/dist/languages.d.ts +1 -0
  145. package/dist/languages.d.ts.map +1 -1
  146. package/dist/languages.js +9 -2
  147. package/dist/languages.js.map +1 -1
  148. package/dist/native/backend-report-format.d.ts +4 -0
  149. package/dist/native/backend-report-format.d.ts.map +1 -0
  150. package/dist/native/backend-report-format.js +14 -0
  151. package/dist/native/backend-report-format.js.map +1 -0
  152. package/dist/native/contracts.d.ts +2 -0
  153. package/dist/native/contracts.d.ts.map +1 -1
  154. package/dist/util/comments.js +1 -1
  155. package/dist/util/comments.js.map +1 -1
  156. package/dist/util/member-access.d.ts +1 -1
  157. package/dist/util/member-access.d.ts.map +1 -1
  158. package/dist/util/member-access.js +5 -2
  159. package/dist/util/member-access.js.map +1 -1
  160. package/dist/util/project-files.js +1 -1
  161. package/dist/util/project-files.js.map +1 -1
  162. package/dist/util/resolution/rust.d.ts +8 -1
  163. package/dist/util/resolution/rust.d.ts.map +1 -1
  164. package/dist/util/resolution/rust.js +521 -7
  165. package/dist/util/resolution/rust.js.map +1 -1
  166. package/dist/util/resolution-candidates.d.ts +1 -1
  167. package/dist/util/resolution-candidates.d.ts.map +1 -1
  168. package/dist/util/resolution-candidates.js +11 -8
  169. package/dist/util/resolution-candidates.js.map +1 -1
  170. package/dist/util/resolution.d.ts +5 -0
  171. package/dist/util/resolution.d.ts.map +1 -1
  172. package/dist/util/resolution.js +18 -7
  173. package/dist/util/resolution.js.map +1 -1
  174. package/dist/util/rust-test-modules.d.ts.map +1 -1
  175. package/dist/util/rust-test-modules.js +2 -5
  176. package/dist/util/rust-test-modules.js.map +1 -1
  177. package/dist/util/specifiers.d.ts +8 -0
  178. package/dist/util/specifiers.d.ts.map +1 -1
  179. package/dist/util/specifiers.js +33 -7
  180. package/dist/util/specifiers.js.map +1 -1
  181. package/package.json +3 -3
@@ -1,52 +1,33 @@
1
1
  import { registerLanguage } from "../registry.js";
2
- function normalizeKotlinNativeQuery(kind, query) {
3
- if (kind === "imports") {
4
- return `
5
- (import (qualified_identifier) @mod) @stmt
6
- `;
7
- }
8
- if (kind === "importBindings") {
9
- return `
10
- (import (qualified_identifier) @from (identifier) @alias) @stmt
11
- (import (qualified_identifier) @from "*" @wild) @stmt
12
- (import (qualified_identifier) @from) @stmt
13
- `;
14
- }
15
- const normalized = query
16
- .replace(/\bimport_header\b/g, "import")
17
- .replace(/\bsimple_identifier\b/g, "identifier")
18
- .replace(/\btype_identifier\b/g, "identifier");
19
- return normalized;
20
- }
21
2
  export const KOTLIN_DEF = {
22
3
  id: "kotlin",
23
- extensions: [".kt", ".kts"],
4
+ extensions: [".kt", ".kts", ".ktm"],
24
5
  usesQueryDrivenLocals: true,
25
6
  structure: {
26
7
  blocks: [
27
8
  {
28
9
  type: "class_declaration",
29
- nameQuery: "(type_identifier) @chunk.name",
10
+ nameQuery: "(identifier) @chunk.name",
30
11
  captureId: "class",
31
12
  },
32
13
  {
33
14
  type: "object_declaration",
34
- nameQuery: "(type_identifier) @chunk.name",
15
+ nameQuery: "(identifier) @chunk.name",
35
16
  captureId: "object",
36
17
  },
37
18
  {
38
19
  type: "function_declaration",
39
- nameQuery: "(simple_identifier) @chunk.name",
20
+ nameQuery: "(identifier) @chunk.name",
40
21
  captureId: "function",
41
22
  },
42
23
  {
43
24
  type: "property_declaration",
44
- nameQuery: "(variable_declaration (simple_identifier) @chunk.name)",
25
+ nameQuery: "(variable_declaration (identifier) @chunk.name)",
45
26
  captureId: "property",
46
27
  },
47
28
  {
48
29
  type: "type_alias",
49
- nameQuery: "(type_identifier) @chunk.name",
30
+ nameQuery: "(identifier) @chunk.name",
50
31
  captureId: "type",
51
32
  },
52
33
  ],
@@ -64,36 +45,47 @@ export const KOTLIN_DEF = {
64
45
  },
65
46
  graph: {
66
47
  imports: `
67
- (import_header (identifier) @mod) @stmt
48
+ (import (qualified_identifier) @mod) @stmt
68
49
  `,
69
50
  exports: `
70
- (class_declaration (type_identifier) @name)
71
- (object_declaration (type_identifier) @name)
72
- (function_declaration (simple_identifier) @name)
73
- (property_declaration (variable_declaration (simple_identifier) @name))
74
- (type_alias (type_identifier) @name)
75
- (enum_entry (simple_identifier) @name)
51
+ (source_file
52
+ [
53
+ (class_declaration name: (identifier) @name)
54
+ (object_declaration name: (identifier) @name)
55
+ (function_declaration name: (identifier) @name)
56
+ (property_declaration (variable_declaration (identifier) @name))
57
+ (type_alias type: (identifier) @name)
58
+ ])
59
+ (class_body
60
+ [
61
+ (class_declaration name: (identifier) @name)
62
+ (object_declaration name: (identifier) @name)
63
+ (function_declaration name: (identifier) @name)
64
+ (property_declaration (variable_declaration (identifier) @name))
65
+ (type_alias type: (identifier) @name)
66
+ ])
67
+ (enum_class_body (enum_entry (identifier) @name))
76
68
  `,
77
69
  locals: `
78
- (class_declaration (type_identifier) @name)
79
- (object_declaration (type_identifier) @name)
80
- (function_declaration (simple_identifier) @name)
81
- (property_declaration (variable_declaration (simple_identifier) @name))
82
- (type_alias (type_identifier) @name)
83
- (enum_entry (simple_identifier) @name)
84
- (parameter (simple_identifier) @name)
85
- (class_parameter (simple_identifier) @name)
86
- (type_parameter (type_identifier) @name)
70
+ (class_declaration name: (identifier) @name)
71
+ (object_declaration name: (identifier) @name)
72
+ (function_declaration name: (identifier) @name)
73
+ (property_declaration (variable_declaration (identifier) @name))
74
+ (type_alias type: (identifier) @name)
75
+ (enum_entry (identifier) @name)
76
+ (parameter (identifier) @name)
77
+ (class_parameter (identifier) @name)
78
+ (type_parameter (identifier) @name)
87
79
  `,
88
80
  importBindings: `
89
- (import_header (identifier) @from (import_alias (type_identifier) @alias)) @stmt
90
- (import_header (identifier) @from (wildcard_import) @wild) @stmt
91
- (import_header (identifier) @from) @stmt
81
+ (import (qualified_identifier) @from (identifier) @alias) @stmt
82
+ (import (qualified_identifier) @from ("*") @wild) @stmt
83
+ (import (qualified_identifier) @from) @stmt
92
84
  `,
93
85
  },
94
86
  nodeTypes: {
95
- identifier: ["identifier", "interpolated_identifier", "simple_identifier", "type_identifier"],
96
- propertyIdentifier: ["simple_identifier", "type_identifier"],
87
+ identifier: ["identifier"],
88
+ propertyIdentifier: ["identifier"],
97
89
  memberExpression: "navigation_expression",
98
90
  },
99
91
  classifyDefinition: (node) => {
@@ -112,23 +104,23 @@ export const KOTLIN_DEF = {
112
104
  const parent = node.parent;
113
105
  if (!parent)
114
106
  return false;
115
- if (parent.type === "class_declaration" && node.type === "type_identifier")
107
+ if (parent.type === "class_declaration" && node.type === "identifier")
116
108
  return true;
117
- if (parent.type === "object_declaration" && node.type === "type_identifier")
109
+ if (parent.type === "object_declaration" && node.type === "identifier")
118
110
  return true;
119
- if (parent.type === "function_declaration" && (node.type === "simple_identifier" || node.type === "identifier"))
111
+ if (parent.type === "function_declaration" && node.type === "identifier")
120
112
  return true;
121
- if (parent.type === "type_alias" && node.type === "type_identifier")
113
+ if (parent.type === "type_alias" && node.type === "identifier")
122
114
  return true;
123
- if (parent.type === "variable_declaration" && node.type === "simple_identifier")
115
+ if (parent.type === "variable_declaration" && node.type === "identifier")
124
116
  return true;
125
- if (parent.type === "parameter" && (node.type === "simple_identifier" || node.type === "identifier"))
117
+ if (parent.type === "parameter" && node.type === "identifier")
126
118
  return true;
127
- if (parent.type === "class_parameter" && (node.type === "simple_identifier" || node.type === "identifier"))
119
+ if (parent.type === "class_parameter" && node.type === "identifier")
128
120
  return true;
129
- if (parent.type === "enum_entry" && (node.type === "simple_identifier" || node.type === "identifier"))
121
+ if (parent.type === "enum_entry" && node.type === "identifier")
130
122
  return true;
131
- if (parent.type === "type_parameter" && node.type === "type_identifier")
123
+ if (parent.type === "type_parameter" && node.type === "identifier")
132
124
  return true;
133
125
  return false;
134
126
  },
@@ -136,15 +128,11 @@ export const KOTLIN_DEF = {
136
128
  createsFunctionScope: (node) => node.type === "function_declaration" || node.type === "anonymous_function" || node.type === "lambda_literal",
137
129
  createsBlockScope: (node) => node.type === "function_body" ||
138
130
  node.type === "class_body" ||
139
- node.type === "control_structure_body" ||
131
+ node.type === "block" ||
140
132
  node.type === "catch_block" ||
141
133
  node.type === "finally_block",
142
134
  supportsCrossModuleSymbols: true,
143
- native: {
144
- normalizeQuery: normalizeKotlinNativeQuery,
145
- authoritativeKinds: ["imports", "importBindings", "exports", "locals"],
146
- notes: ["normalizes kotlin import and identifier node names for the native grammar"],
147
- },
135
+ exportScopeBlockers: ["function_body", "lambda_literal", "anonymous_function"],
148
136
  };
149
137
  registerLanguage(KOTLIN_DEF);
150
138
  //# sourceMappingURL=kotlin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../../src/languages/definitions/kotlin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../../src/languages/definitions/kotlin.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { registerLanguage } from "../registry.js";
2
2
  export const PHP_DEF = {
3
3
  id: "php",
4
- extensions: [".php"],
4
+ extensions: [".php", ".phtml", ".php4", ".php8"],
5
5
  usesQueryDrivenLocals: true,
6
6
  structure: {
7
7
  blocks: [
@@ -1 +1 @@
1
- {"version":3,"file":"php.js","sourceRoot":"","sources":["../../../src/languages/definitions/php.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"php.js","sourceRoot":"","sources":["../../../src/languages/definitions/php.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/python.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD,eAAO,MAAM,UAAU,EAAE,kBAuIxB,CAAC"}
1
+ {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/python.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAkB,MAAM,aAAa,CAAC;AAuBtE,eAAO,MAAM,UAAU,EAAE,kBAmLxB,CAAC"}
@@ -1,8 +1,25 @@
1
1
  import { registerLanguage } from "../registry.js";
2
2
  import { hasNonAsciiCodePoint } from "../../util/identifiers.js";
3
+ function isTypeAliasLeftName(node) {
4
+ const parent = node.parent;
5
+ if (!parent)
6
+ return false;
7
+ if (parent.type === "type") {
8
+ const stmt = parent.parent;
9
+ return stmt?.type === "type_alias_statement" && stmt.childForFieldName("left")?.id === parent.id;
10
+ }
11
+ if (parent.type === "generic_type") {
12
+ const typeNode = parent.parent;
13
+ const stmt = typeNode?.parent;
14
+ return (typeNode?.type === "type" &&
15
+ stmt?.type === "type_alias_statement" &&
16
+ stmt.childForFieldName("left")?.id === typeNode.id);
17
+ }
18
+ return false;
19
+ }
3
20
  export const PYTHON_DEF = {
4
21
  id: "python",
5
- extensions: [".py", ".pyi"],
22
+ extensions: [".py", ".pyi", ".pyw"],
6
23
  usesQueryDrivenLocals: true,
7
24
  structure: {
8
25
  blocks: [
@@ -26,9 +43,14 @@ export const PYTHON_DEF = {
26
43
  // Top level assignments
27
44
  {
28
45
  type: "assignment",
29
- nameQuery: "left: (identifier) @chunk.name",
46
+ nameQuery: "left: [(identifier) @chunk.name (pattern_list (identifier) @chunk.name) (tuple_pattern (identifier) @chunk.name)]",
30
47
  captureId: "module_var",
31
48
  },
49
+ {
50
+ type: "type_alias_statement",
51
+ nameQuery: "left: (type [(identifier) @chunk.name (generic_type (identifier) @chunk.name)])",
52
+ captureId: "type",
53
+ },
32
54
  // Imports
33
55
  { type: "import_statement", captureId: "imports" },
34
56
  { type: "import_from_statement", captureId: "imports" },
@@ -55,35 +77,60 @@ export const PYTHON_DEF = {
55
77
  // This is a known limitation - such patterns are rare in practice.
56
78
  exports: `
57
79
  ;; __all__ = ["a", "b"] - simple list assignment
58
- (assignment left: (identifier) @left right: (list (string)+ @all_item)) @stmt
80
+ (module (expression_statement (assignment left: (identifier) @left right: (list (string) @all_item)) @stmt))
59
81
  ;; __all__ = ("a", "b") - tuple assignment
60
- (assignment left: (identifier) @left right: (tuple (string)+ @all_item)) @stmt
82
+ (module (expression_statement (assignment left: (identifier) @left right: (tuple (string) @all_item)) @stmt))
61
83
  ;; __all__ = ["a"] + ["b"] - concatenation (captures strings in both sides)
62
- (assignment left: (identifier) @left right: (binary_operator (list (string)+ @all_item))) @stmt
63
- (assignment left: (identifier) @left right: (binary_operator right: (list (string)+ @all_item))) @stmt
84
+ (module (expression_statement (assignment left: (identifier) @left right: (binary_operator (list (string) @all_item))) @stmt))
85
+ (module (expression_statement (assignment left: (identifier) @left right: (binary_operator right: (list (string) @all_item))) @stmt))
64
86
  ;; __all__.extend(["a"]) - extend pattern
65
- (expression_statement (call function: (attribute object: (identifier) @left attribute: (identifier) @method) arguments: (argument_list (list (string)+ @all_item)))) @stmt
87
+ (module (expression_statement (call function: (attribute object: (identifier) @left attribute: (identifier) @method) arguments: (argument_list (list (string) @all_item)))) @stmt)
66
88
  ;; __all__.append("a") - append pattern
67
- (expression_statement (call function: (attribute object: (identifier) @left attribute: (identifier) @method) arguments: (argument_list (string) @all_item))) @stmt
89
+ (module (expression_statement (call function: (attribute object: (identifier) @left attribute: (identifier) @method) arguments: (argument_list (string) @all_item))) @stmt)
68
90
  ;; __all__ += ["a"] - augmented assignment
69
- (augmented_assignment left: (identifier) @left right: (list (string)+ @all_item)) @stmt
70
- (function_definition name: (identifier) @name)
71
- (class_definition name: (identifier) @name)
72
- (assignment left: (identifier) @name)
91
+ (module (expression_statement (augmented_assignment left: (identifier) @left right: (list (string) @all_item)) @stmt))
92
+ ;; An empty static list or tuple still defines an explicit export set.
93
+ (module (expression_statement (assignment left: (identifier) @left right: [(list) (tuple)]) @stmt))
94
+ (module (function_definition name: (identifier) @name))
95
+ (module (class_definition name: (identifier) @name))
96
+ (module (decorated_definition (function_definition name: (identifier) @name)))
97
+ (module (decorated_definition (class_definition name: (identifier) @name)))
98
+ (module (expression_statement (assignment left: (identifier) @name)))
99
+ (module (expression_statement (assignment left: [(pattern_list (identifier) @name) (tuple_pattern (identifier) @name)])))
100
+ (module (expression_statement (named_expression name: (identifier) @name)))
101
+ (module (type_alias_statement left: (type [(identifier) @name (generic_type (identifier) @name)])))
102
+ (class_definition body: (block (function_definition name: (identifier) @name)))
103
+ (class_definition body: (block (class_definition name: (identifier) @name)))
104
+ (class_definition body: (block (decorated_definition (function_definition name: (identifier) @name))))
105
+ (class_definition body: (block (decorated_definition (class_definition name: (identifier) @name))))
106
+ (class_definition body: (block (expression_statement (assignment left: (identifier) @name))))
107
+ (class_definition body: (block (expression_statement (assignment left: [(pattern_list (identifier) @name) (tuple_pattern (identifier) @name)]))))
108
+ (class_definition body: (block (expression_statement (named_expression name: (identifier) @name))))
109
+ (class_definition body: (block (type_alias_statement left: (type [(identifier) @name (generic_type (identifier) @name)]))))
73
110
  `,
74
111
  locals: `
75
112
  (function_definition name: (identifier) @name)
76
113
  (class_definition name: (identifier) @name)
77
114
  (assignment left: (identifier) @name)
78
- ;; \`case Point(x=x, y=y):\` binds the right-hand identifier of a keyword
79
- ;; pattern as a new local, distinct from the left-hand attribute name it
80
- ;; matches against.
115
+ (assignment left: [(pattern_list (identifier) @name) (tuple_pattern (identifier) @name)])
116
+ (named_expression name: (identifier) @name)
117
+ (type_alias_statement left: (type [(identifier) @name (generic_type (identifier) @name)]))
118
+ ;; \`case Point(x=px, y=py):\` is case_pattern -> class_pattern ->
119
+ ;; case_pattern -> keyword_pattern. The binding is the dotted_name child;
120
+ ;; the left-hand attribute is a bare identifier and must not be captured.
121
+ ;; Anchoring to the first and last (named) child restricts the match to a
122
+ ;; single-segment dotted_name, so a qualified value like \`x=module.CONST\`
123
+ ;; does not create locals for \`module\` or \`CONST\`.
124
+ (keyword_pattern (dotted_name . (identifier) @name .))
81
125
  ;; A bare identifier in a case pattern is represented as a single-name
82
126
  ;; dotted_name inside a case_pattern. Nested tuple/list/or patterns
83
- ;; preserve this shape for each capture.
84
- (case_pattern (dotted_name (identifier) @name))
127
+ ;; preserve this shape for each capture. The same anchor keeps a qualified
128
+ ;; value pattern such as \`case module.CONST:\` from creating locals.
129
+ (case_pattern (dotted_name . (identifier) @name .))
85
130
  ;; \`case value as alias:\` binds the direct identifier child as its alias.
86
- (as_pattern (identifier) @name)
131
+ ;; \`except E as err\` / \`with ctx as handle\` put the binding in alias.
132
+ (as_pattern !alias (identifier) @name)
133
+ (as_pattern alias: (as_pattern_target (identifier) @name))
87
134
  ;; \`case [head, *tail]:\` binds the capture after the splat.
88
135
  (splat_pattern (identifier) @name)
89
136
  `,
@@ -104,14 +151,22 @@ export const PYTHON_DEF = {
104
151
  return "function";
105
152
  if (t === "class_definition")
106
153
  return "class";
154
+ if (isTypeAliasLeftName(n))
155
+ return "type";
107
156
  return "variable";
108
157
  },
109
158
  scopeDeclarationNames: (node) => {
110
159
  const parentType = node.parent?.type;
111
160
  return (parentType === "case_pattern" ||
112
161
  parentType === "as_pattern" ||
162
+ parentType === "as_pattern_target" ||
113
163
  parentType === "splat_pattern" ||
114
- parentType === "dotted_name");
164
+ parentType === "dotted_name" ||
165
+ parentType === "named_expression" ||
166
+ parentType === "pattern_list" ||
167
+ parentType === "tuple_pattern" ||
168
+ parentType === "type" ||
169
+ parentType === "generic_type");
115
170
  },
116
171
  isDeclarationName: (node) => {
117
172
  const parent = node.parent;
@@ -121,16 +176,26 @@ export const PYTHON_DEF = {
121
176
  parent.namedChildren.length === 1 &&
122
177
  (parent.parent?.type === "keyword_pattern" || parent.parent?.type === "case_pattern"))
123
178
  return true;
124
- if (parent?.type === "as_pattern")
179
+ if (t === "as_pattern_target")
125
180
  return true;
181
+ if (t === "as_pattern")
182
+ return parent?.childForFieldName("alias") == null;
126
183
  if (t === "splat_pattern")
127
184
  return true;
185
+ if (t === "named_expression")
186
+ return parent?.childForFieldName("name")?.id === node.id;
187
+ if (t === "pattern_list" || t === "tuple_pattern")
188
+ return true;
189
+ if (isTypeAliasLeftName(node))
190
+ return true;
128
191
  return !!t && ["function_definition", "class_definition", "assignment", "aliased_import"].includes(t);
129
192
  },
130
193
  createsBlockScope: (n) => n.type === "module" || n.type === "block",
131
194
  createsFunctionScope: (n) => n.type === "function_definition" || n.type === "lambda",
132
195
  membersAreImplicitlyInScope: false,
133
196
  supportsCrossModuleSymbols: true,
197
+ // A function body and a class body are both `block`, so only the function form blocks exports.
198
+ exportScopeBlockers: ["function_definition>block"],
134
199
  normalizeIdentifier: (name) => (hasNonAsciiCodePoint(name) ? name.normalize("NFKC") : name),
135
200
  };
136
201
  registerLanguage(PYTHON_DEF);
@@ -1 +1 @@
1
- {"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/languages/definitions/python.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/languages/definitions/python.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ruby.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/ruby.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGtD,eAAO,MAAM,QAAQ,EAAE,kBAkFtB,CAAC"}
1
+ {"version":3,"file":"ruby.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/ruby.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGtD,eAAO,MAAM,QAAQ,EAAE,kBAoFtB,CAAC"}
@@ -1,17 +1,17 @@
1
1
  import { registerLanguage } from "../registry.js";
2
2
  export const RUBY_DEF = {
3
3
  id: "ruby",
4
- extensions: [".rb"],
4
+ extensions: [".rb", ".rbw", ".rake", ".gemspec"],
5
5
  structure: {
6
6
  blocks: [
7
7
  {
8
8
  type: "class",
9
- nameQuery: "name: (constant) @chunk.name",
9
+ nameQuery: "name: [(constant) (scope_resolution)] @chunk.name",
10
10
  captureId: "class",
11
11
  },
12
12
  {
13
13
  type: "module",
14
- nameQuery: "name: (constant) @chunk.name",
14
+ nameQuery: "name: [(constant) (scope_resolution)] @chunk.name",
15
15
  captureId: "module",
16
16
  },
17
17
  {
@@ -30,23 +30,25 @@ export const RUBY_DEF = {
30
30
  },
31
31
  graph: {
32
32
  imports: `
33
- (call method: (identifier) @method arguments: (argument_list (string (string_content) @mod)) (#match? @method "^(require|require_relative)$")) @stmt
33
+ (call method: (identifier) @method arguments: (argument_list (string (string_content) @mod)) (#match? @method "^(require|require_relative|load|autoload)$")) @stmt
34
34
  `,
35
35
  exports: `
36
- (class name: (constant) @name)
37
- (module name: (constant) @name)
38
- (method name: (identifier) @name)
36
+ (class name: [(constant) (scope_resolution)] @name)
37
+ (module name: [(constant) (scope_resolution)] @name)
38
+ (method name: [(identifier) (setter)] @name)
39
+ (singleton_method name: [(identifier) (setter)] @name)
39
40
  (assignment left: (constant) @name)
40
41
  `,
41
42
  locals: `
42
- (class name: (constant) @name)
43
- (module name: (constant) @name)
44
- (method name: (identifier) @name)
43
+ (class name: [(constant) (scope_resolution)] @name)
44
+ (module name: [(constant) (scope_resolution)] @name)
45
+ (method name: [(identifier) (setter)] @name)
46
+ (singleton_method name: [(identifier) (setter)] @name)
45
47
  (assignment left: (identifier) @name)
46
48
  (assignment left: (constant) @name)
47
49
  `,
48
50
  importBindings: `
49
- ((call method: (identifier) @method arguments: (argument_list (string (string_content) @from))) @stmt (#match? @method "^(require|require_relative)$"))
51
+ ((call method: (identifier) @method arguments: (argument_list (string (string_content) @from))) @stmt (#match? @method "^(require|require_relative|load|autoload)$"))
50
52
  `,
51
53
  },
52
54
  nodeTypes: {
@@ -1 +1 @@
1
- {"version":3,"file":"ruby.js","sourceRoot":"","sources":["../../../src/languages/definitions/ruby.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,QAAQ,GAAuB;IAC1C,EAAE,EAAE,MAAM;IACV,UAAU,EAAE,CAAC,KAAK,CAAC;IACnB,SAAS,EAAE;QACT,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,8BAA8B;gBACzC,SAAS,EAAE,OAAO;aACnB;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,8BAA8B;gBACzC,SAAS,EAAE,QAAQ;aACpB;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,gCAAgC;gBAC3C,SAAS,EAAE,QAAQ;aACpB;YACD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,SAAS,EAAE,gCAAgC;gBAC3C,SAAS,EAAE,QAAQ;aACpB;SACF;QACD,WAAW,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC;QACvE,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,KAAK,EAAE;QACL,OAAO,EAAE;;KAER;QACD,OAAO,EAAE;;;;;KAKR;QACD,MAAM,EAAE;;;;;;KAMP;QACD,cAAc,EAAE;;KAEf;KACF;IACD,SAAS,EAAE;QACT,UAAU,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;QACtC,gBAAgB,EAAE,MAAM;KACzB;IACD,0BAA0B,EAAE,IAAI;IAChC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,MAAM,KAAK,GAAG,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACrD,IACE,UAAU,EAAE,IAAI,KAAK,YAAY;YACjC,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;YACpD,KAAK,EAAE,IAAI,KAAK,MAAM;YACtB,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,KAAK,QAAQ;YACtD,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,KAAK,EACjD,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,YAAY;IAC/F,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB;IAC1F,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;IAC9E,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACrB,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACnF,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACpF,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACpF,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QAC9F,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACxF,OAAO,KAAK,CAAC;IACf,CAAC;CACF,CAAC;AACF,gBAAgB,CAAC,QAAQ,CAAC,CAAC"}
1
+ {"version":3,"file":"ruby.js","sourceRoot":"","sources":["../../../src/languages/definitions/ruby.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rust.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/rust.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD,eAAO,MAAM,QAAQ,EAAE,kBA8HtB,CAAC"}
1
+ {"version":3,"file":"rust.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/rust.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD,eAAO,MAAM,QAAQ,EAAE,kBA+ItB,CAAC"}
@@ -48,8 +48,11 @@ export const RUST_DEF = {
48
48
  `,
49
49
  exports: `
50
50
  (function_item name: (identifier) @name) @stmt
51
+ (function_signature_item name: (identifier) @name) @stmt
51
52
  (struct_item name: (type_identifier) @name) @stmt
52
53
  (trait_item name: (type_identifier) @name) @stmt
54
+ (type_item name: (type_identifier) @name) @stmt
55
+ (associated_type name: (type_identifier) @name) @stmt
53
56
  (enum_item name: (type_identifier) @name) @stmt
54
57
  (enum_variant name: (identifier) @name) @stmt
55
58
  (const_item name: (identifier) @name) @stmt
@@ -63,14 +66,19 @@ export const RUST_DEF = {
63
66
  ;; form above. The shared path may itself be scoped, so it is captured
64
67
  ;; generically rather than requiring a single bare identifier segment.
65
68
  (use_declaration argument: (scoped_use_list path: (_) @from list: (use_list (identifier) @src))) @stmt
66
- ;; Aliased members inside a group (\`use foo::{Bar as Baz}\`) export
67
- ;; under their alias, matching how a single aliased import behaves.
68
- (use_declaration argument: (scoped_use_list path: (_) @from list: (use_list (use_as_clause alias: (identifier) @src)))) @stmt
69
+ ;; Aliased members (\`use foo::Bar as Baz;\` and \`use foo::{Bar as Baz}\`) export under the
70
+ ;; alias while keeping the original member as the source, so a consumer of the alias
71
+ ;; resolves to the real definition.
72
+ (use_declaration argument: (use_as_clause path: (scoped_identifier path: (_) @from name: (identifier) @src) alias: (identifier) @alias)) @stmt
73
+ (use_declaration argument: (scoped_use_list path: (_) @from list: (use_list (use_as_clause path: (identifier) @src alias: (identifier) @alias)))) @stmt
69
74
  `,
70
75
  locals: `
71
76
  (function_item name: (identifier) @name)
77
+ (function_signature_item name: (identifier) @name)
72
78
  (struct_item name: (type_identifier) @name)
73
79
  (trait_item name: (type_identifier) @name)
80
+ (type_item name: (type_identifier) @name)
81
+ (associated_type name: (type_identifier) @name)
74
82
  (enum_item name: (type_identifier) @name)
75
83
  (enum_variant name: (identifier) @name)
76
84
  (const_item name: (identifier) @name)
@@ -98,14 +106,17 @@ export const RUST_DEF = {
98
106
  memberExpression: "field_expression",
99
107
  },
100
108
  supportsCrossModuleSymbols: true,
109
+ exportScopeBlockers: ["block"],
101
110
  scopeDeclarationNames: (node) => node.parent?.type === "macro_definition",
102
111
  classifyDefinition: (node) => {
103
112
  const parent = node.parent;
104
113
  if (!parent)
105
114
  return "variable";
106
- if (parent.type === "function_item" || parent.type === "macro_definition")
115
+ if (parent.type === "function_item" ||
116
+ parent.type === "function_signature_item" ||
117
+ parent.type === "macro_definition")
107
118
  return "function";
108
- if (parent.type === "enum_item")
119
+ if (parent.type === "enum_item" || parent.type === "type_item" || parent.type === "associated_type")
109
120
  return "type";
110
121
  if (parent.type === "struct_item" || parent.type === "trait_item")
111
122
  return "class";
@@ -120,10 +131,16 @@ export const RUST_DEF = {
120
131
  return false;
121
132
  if (p.type === "function_item" && p.childForFieldName("name")?.id === node.id)
122
133
  return true;
134
+ if (p.type === "function_signature_item" && p.childForFieldName("name")?.id === node.id)
135
+ return true;
123
136
  if (p.type === "struct_item" && p.childForFieldName("name")?.id === node.id)
124
137
  return true;
125
138
  if (p.type === "trait_item" && p.childForFieldName("name")?.id === node.id)
126
139
  return true;
140
+ if (p.type === "type_item" && p.childForFieldName("name")?.id === node.id)
141
+ return true;
142
+ if (p.type === "associated_type" && p.childForFieldName("name")?.id === node.id)
143
+ return true;
127
144
  if (p.type === "enum_item" && p.childForFieldName("name")?.id === node.id)
128
145
  return true;
129
146
  if (p.type === "enum_variant" && p.childForFieldName("name")?.id === node.id)
@@ -1 +1 @@
1
- {"version":3,"file":"rust.js","sourceRoot":"","sources":["../../../src/languages/definitions/rust.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rust.js","sourceRoot":"","sources":["../../../src/languages/definitions/rust.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scss.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/scss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAWtD,eAAO,MAAM,QAAQ,EAAE,kBA8CtB,CAAC"}
1
+ {"version":3,"file":"scss.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/scss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGtD,eAAO,MAAM,QAAQ,EAAE,kBAuDtB,CAAC"}