@stupidloud/codegraph 0.9.5 → 0.9.9

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 (302) hide show
  1. package/README.md +252 -116
  2. package/dist/bin/codegraph.js +52 -82
  3. package/dist/bin/codegraph.js.map +1 -1
  4. package/dist/context/formatter.d.ts.map +1 -1
  5. package/dist/context/formatter.js +25 -6
  6. package/dist/context/formatter.js.map +1 -1
  7. package/dist/context/index.d.ts +22 -0
  8. package/dist/context/index.d.ts.map +1 -1
  9. package/dist/context/index.js +257 -6
  10. package/dist/context/index.js.map +1 -1
  11. package/dist/context/markers.d.ts +19 -0
  12. package/dist/context/markers.d.ts.map +1 -0
  13. package/dist/context/markers.js +22 -0
  14. package/dist/context/markers.js.map +1 -0
  15. package/dist/db/queries.d.ts +88 -0
  16. package/dist/db/queries.d.ts.map +1 -1
  17. package/dist/db/queries.js +251 -7
  18. package/dist/db/queries.js.map +1 -1
  19. package/dist/db/sqlite-adapter.d.ts +7 -0
  20. package/dist/db/sqlite-adapter.d.ts.map +1 -1
  21. package/dist/db/sqlite-adapter.js +3 -0
  22. package/dist/db/sqlite-adapter.js.map +1 -1
  23. package/dist/directory.d.ts.map +1 -1
  24. package/dist/directory.js +6 -20
  25. package/dist/directory.js.map +1 -1
  26. package/dist/extraction/generated-detection.d.ts +30 -0
  27. package/dist/extraction/generated-detection.d.ts.map +1 -0
  28. package/dist/extraction/generated-detection.js +80 -0
  29. package/dist/extraction/generated-detection.js.map +1 -0
  30. package/dist/extraction/grammars.d.ts +17 -1
  31. package/dist/extraction/grammars.d.ts.map +1 -1
  32. package/dist/extraction/grammars.js +65 -1
  33. package/dist/extraction/grammars.js.map +1 -1
  34. package/dist/extraction/index.d.ts +15 -2
  35. package/dist/extraction/index.d.ts.map +1 -1
  36. package/dist/extraction/index.js +206 -98
  37. package/dist/extraction/index.js.map +1 -1
  38. package/dist/extraction/languages/c-cpp.d.ts.map +1 -1
  39. package/dist/extraction/languages/c-cpp.js +45 -0
  40. package/dist/extraction/languages/c-cpp.js.map +1 -1
  41. package/dist/extraction/languages/csharp.d.ts.map +1 -1
  42. package/dist/extraction/languages/csharp.js +2 -1
  43. package/dist/extraction/languages/csharp.js.map +1 -1
  44. package/dist/extraction/languages/go.d.ts.map +1 -1
  45. package/dist/extraction/languages/go.js +18 -2
  46. package/dist/extraction/languages/go.js.map +1 -1
  47. package/dist/extraction/languages/index.d.ts.map +1 -1
  48. package/dist/extraction/languages/index.js +2 -0
  49. package/dist/extraction/languages/index.js.map +1 -1
  50. package/dist/extraction/languages/java.d.ts.map +1 -1
  51. package/dist/extraction/languages/java.js +6 -0
  52. package/dist/extraction/languages/java.js.map +1 -1
  53. package/dist/extraction/languages/kotlin.d.ts.map +1 -1
  54. package/dist/extraction/languages/kotlin.js +6 -0
  55. package/dist/extraction/languages/kotlin.js.map +1 -1
  56. package/dist/extraction/languages/objc.d.ts +3 -0
  57. package/dist/extraction/languages/objc.d.ts.map +1 -0
  58. package/dist/extraction/languages/objc.js +133 -0
  59. package/dist/extraction/languages/objc.js.map +1 -0
  60. package/dist/extraction/mybatis-extractor.d.ts +48 -0
  61. package/dist/extraction/mybatis-extractor.d.ts.map +1 -0
  62. package/dist/extraction/mybatis-extractor.js +198 -0
  63. package/dist/extraction/mybatis-extractor.js.map +1 -0
  64. package/dist/extraction/tree-sitter-types.d.ts +14 -0
  65. package/dist/extraction/tree-sitter-types.d.ts.map +1 -1
  66. package/dist/extraction/tree-sitter.d.ts +84 -0
  67. package/dist/extraction/tree-sitter.d.ts.map +1 -1
  68. package/dist/extraction/tree-sitter.js +681 -20
  69. package/dist/extraction/tree-sitter.js.map +1 -1
  70. package/dist/extraction/vue-extractor.d.ts +15 -0
  71. package/dist/extraction/vue-extractor.d.ts.map +1 -1
  72. package/dist/extraction/vue-extractor.js +88 -0
  73. package/dist/extraction/vue-extractor.js.map +1 -1
  74. package/dist/extraction/wasm-runtime-flags.d.ts.map +1 -1
  75. package/dist/extraction/wasm-runtime-flags.js +1 -0
  76. package/dist/extraction/wasm-runtime-flags.js.map +1 -1
  77. package/dist/graph/traversal.d.ts.map +1 -1
  78. package/dist/graph/traversal.js +5 -2
  79. package/dist/graph/traversal.js.map +1 -1
  80. package/dist/index.d.ts +66 -3
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +105 -1
  83. package/dist/index.js.map +1 -1
  84. package/dist/installer/config-writer.d.ts +7 -8
  85. package/dist/installer/config-writer.d.ts.map +1 -1
  86. package/dist/installer/config-writer.js +7 -27
  87. package/dist/installer/config-writer.js.map +1 -1
  88. package/dist/installer/index.d.ts +3 -20
  89. package/dist/installer/index.d.ts.map +1 -1
  90. package/dist/installer/index.js +8 -39
  91. package/dist/installer/index.js.map +1 -1
  92. package/dist/installer/instructions-template.d.ts +11 -21
  93. package/dist/installer/instructions-template.d.ts.map +1 -1
  94. package/dist/installer/instructions-template.js +12 -56
  95. package/dist/installer/instructions-template.js.map +1 -1
  96. package/dist/installer/targets/antigravity.d.ts +57 -0
  97. package/dist/installer/targets/antigravity.d.ts.map +1 -0
  98. package/dist/installer/targets/antigravity.js +308 -0
  99. package/dist/installer/targets/antigravity.js.map +1 -0
  100. package/dist/installer/targets/claude.d.ts +10 -1
  101. package/dist/installer/targets/claude.d.ts.map +1 -1
  102. package/dist/installer/targets/claude.js +25 -40
  103. package/dist/installer/targets/claude.js.map +1 -1
  104. package/dist/installer/targets/codex.d.ts.map +1 -1
  105. package/dist/installer/targets/codex.js +15 -13
  106. package/dist/installer/targets/codex.js.map +1 -1
  107. package/dist/installer/targets/cursor.d.ts.map +1 -1
  108. package/dist/installer/targets/cursor.js +9 -38
  109. package/dist/installer/targets/cursor.js.map +1 -1
  110. package/dist/installer/targets/gemini.d.ts +26 -0
  111. package/dist/installer/targets/gemini.d.ts.map +1 -0
  112. package/dist/installer/targets/gemini.js +167 -0
  113. package/dist/installer/targets/gemini.js.map +1 -0
  114. package/dist/installer/targets/hermes.d.ts.map +1 -1
  115. package/dist/installer/targets/hermes.js +57 -3
  116. package/dist/installer/targets/hermes.js.map +1 -1
  117. package/dist/installer/targets/kiro.d.ts +27 -0
  118. package/dist/installer/targets/kiro.d.ts.map +1 -0
  119. package/dist/installer/targets/kiro.js +178 -0
  120. package/dist/installer/targets/kiro.js.map +1 -0
  121. package/dist/installer/targets/opencode.d.ts.map +1 -1
  122. package/dist/installer/targets/opencode.js +15 -13
  123. package/dist/installer/targets/opencode.js.map +1 -1
  124. package/dist/installer/targets/registry.d.ts.map +1 -1
  125. package/dist/installer/targets/registry.js +6 -0
  126. package/dist/installer/targets/registry.js.map +1 -1
  127. package/dist/installer/targets/shared.d.ts.map +1 -1
  128. package/dist/installer/targets/shared.js +3 -2
  129. package/dist/installer/targets/shared.js.map +1 -1
  130. package/dist/installer/targets/types.d.ts +1 -16
  131. package/dist/installer/targets/types.d.ts.map +1 -1
  132. package/dist/mcp/daemon-paths.d.ts +46 -0
  133. package/dist/mcp/daemon-paths.d.ts.map +1 -0
  134. package/dist/mcp/daemon-paths.js +125 -0
  135. package/dist/mcp/daemon-paths.js.map +1 -0
  136. package/dist/mcp/daemon.d.ts +161 -0
  137. package/dist/mcp/daemon.d.ts.map +1 -0
  138. package/dist/mcp/daemon.js +403 -0
  139. package/dist/mcp/daemon.js.map +1 -0
  140. package/dist/mcp/engine.d.ts +105 -0
  141. package/dist/mcp/engine.d.ts.map +1 -0
  142. package/dist/mcp/engine.js +270 -0
  143. package/dist/mcp/engine.js.map +1 -0
  144. package/dist/mcp/index.d.ts +67 -53
  145. package/dist/mcp/index.d.ts.map +1 -1
  146. package/dist/mcp/index.js +315 -388
  147. package/dist/mcp/index.js.map +1 -1
  148. package/dist/mcp/proxy.d.ts +81 -0
  149. package/dist/mcp/proxy.d.ts.map +1 -0
  150. package/dist/mcp/proxy.js +510 -0
  151. package/dist/mcp/proxy.js.map +1 -0
  152. package/dist/mcp/server-instructions.d.ts +1 -1
  153. package/dist/mcp/server-instructions.d.ts.map +1 -1
  154. package/dist/mcp/server-instructions.js +21 -21
  155. package/dist/mcp/session.d.ts +77 -0
  156. package/dist/mcp/session.d.ts.map +1 -0
  157. package/dist/mcp/session.js +294 -0
  158. package/dist/mcp/session.js.map +1 -0
  159. package/dist/mcp/tools.d.ts +160 -14
  160. package/dist/mcp/tools.d.ts.map +1 -1
  161. package/dist/mcp/tools.js +1622 -322
  162. package/dist/mcp/tools.js.map +1 -1
  163. package/dist/mcp/transport.d.ts +111 -29
  164. package/dist/mcp/transport.d.ts.map +1 -1
  165. package/dist/mcp/transport.js +181 -71
  166. package/dist/mcp/transport.js.map +1 -1
  167. package/dist/mcp/version.d.ts +19 -0
  168. package/dist/mcp/version.d.ts.map +1 -0
  169. package/dist/mcp/version.js +71 -0
  170. package/dist/mcp/version.js.map +1 -0
  171. package/dist/resolution/callback-synthesizer.d.ts +10 -0
  172. package/dist/resolution/callback-synthesizer.d.ts.map +1 -0
  173. package/dist/resolution/callback-synthesizer.js +1300 -0
  174. package/dist/resolution/callback-synthesizer.js.map +1 -0
  175. package/dist/resolution/frameworks/csharp.d.ts.map +1 -1
  176. package/dist/resolution/frameworks/csharp.js +36 -8
  177. package/dist/resolution/frameworks/csharp.js.map +1 -1
  178. package/dist/resolution/frameworks/drupal.d.ts.map +1 -1
  179. package/dist/resolution/frameworks/drupal.js +44 -12
  180. package/dist/resolution/frameworks/drupal.js.map +1 -1
  181. package/dist/resolution/frameworks/expo-modules.d.ts +3 -0
  182. package/dist/resolution/frameworks/expo-modules.d.ts.map +1 -0
  183. package/dist/resolution/frameworks/expo-modules.js +143 -0
  184. package/dist/resolution/frameworks/expo-modules.js.map +1 -0
  185. package/dist/resolution/frameworks/express.d.ts.map +1 -1
  186. package/dist/resolution/frameworks/express.js +102 -19
  187. package/dist/resolution/frameworks/express.js.map +1 -1
  188. package/dist/resolution/frameworks/fabric.d.ts +3 -0
  189. package/dist/resolution/frameworks/fabric.d.ts.map +1 -0
  190. package/dist/resolution/frameworks/fabric.js +354 -0
  191. package/dist/resolution/frameworks/fabric.js.map +1 -0
  192. package/dist/resolution/frameworks/go.d.ts.map +1 -1
  193. package/dist/resolution/frameworks/go.js +6 -3
  194. package/dist/resolution/frameworks/go.js.map +1 -1
  195. package/dist/resolution/frameworks/index.d.ts +5 -0
  196. package/dist/resolution/frameworks/index.d.ts.map +1 -1
  197. package/dist/resolution/frameworks/index.js +25 -1
  198. package/dist/resolution/frameworks/index.js.map +1 -1
  199. package/dist/resolution/frameworks/java.d.ts.map +1 -1
  200. package/dist/resolution/frameworks/java.js +339 -12
  201. package/dist/resolution/frameworks/java.js.map +1 -1
  202. package/dist/resolution/frameworks/laravel.d.ts.map +1 -1
  203. package/dist/resolution/frameworks/laravel.js +17 -8
  204. package/dist/resolution/frameworks/laravel.js.map +1 -1
  205. package/dist/resolution/frameworks/nestjs.d.ts.map +1 -1
  206. package/dist/resolution/frameworks/nestjs.js +324 -0
  207. package/dist/resolution/frameworks/nestjs.js.map +1 -1
  208. package/dist/resolution/frameworks/play.d.ts +19 -0
  209. package/dist/resolution/frameworks/play.d.ts.map +1 -0
  210. package/dist/resolution/frameworks/play.js +111 -0
  211. package/dist/resolution/frameworks/play.js.map +1 -0
  212. package/dist/resolution/frameworks/python.d.ts.map +1 -1
  213. package/dist/resolution/frameworks/python.js +134 -16
  214. package/dist/resolution/frameworks/python.js.map +1 -1
  215. package/dist/resolution/frameworks/react-native.d.ts +3 -0
  216. package/dist/resolution/frameworks/react-native.d.ts.map +1 -0
  217. package/dist/resolution/frameworks/react-native.js +360 -0
  218. package/dist/resolution/frameworks/react-native.js.map +1 -0
  219. package/dist/resolution/frameworks/react.d.ts.map +1 -1
  220. package/dist/resolution/frameworks/react.js +96 -3
  221. package/dist/resolution/frameworks/react.js.map +1 -1
  222. package/dist/resolution/frameworks/ruby.d.ts.map +1 -1
  223. package/dist/resolution/frameworks/ruby.js +106 -2
  224. package/dist/resolution/frameworks/ruby.js.map +1 -1
  225. package/dist/resolution/frameworks/rust.d.ts.map +1 -1
  226. package/dist/resolution/frameworks/rust.js +102 -5
  227. package/dist/resolution/frameworks/rust.js.map +1 -1
  228. package/dist/resolution/frameworks/swift-objc.d.ts +37 -0
  229. package/dist/resolution/frameworks/swift-objc.d.ts.map +1 -0
  230. package/dist/resolution/frameworks/swift-objc.js +252 -0
  231. package/dist/resolution/frameworks/swift-objc.js.map +1 -0
  232. package/dist/resolution/frameworks/swift.d.ts.map +1 -1
  233. package/dist/resolution/frameworks/swift.js +30 -6
  234. package/dist/resolution/frameworks/swift.js.map +1 -1
  235. package/dist/resolution/go-module.d.ts +26 -0
  236. package/dist/resolution/go-module.d.ts.map +1 -0
  237. package/dist/resolution/go-module.js +78 -0
  238. package/dist/resolution/go-module.js.map +1 -0
  239. package/dist/resolution/import-resolver.d.ts +28 -0
  240. package/dist/resolution/import-resolver.d.ts.map +1 -1
  241. package/dist/resolution/import-resolver.js +617 -5
  242. package/dist/resolution/import-resolver.js.map +1 -1
  243. package/dist/resolution/index.d.ts +11 -0
  244. package/dist/resolution/index.d.ts.map +1 -1
  245. package/dist/resolution/index.js +156 -3
  246. package/dist/resolution/index.js.map +1 -1
  247. package/dist/resolution/name-matcher.d.ts.map +1 -1
  248. package/dist/resolution/name-matcher.js +212 -0
  249. package/dist/resolution/name-matcher.js.map +1 -1
  250. package/dist/resolution/swift-objc-bridge.d.ts +134 -0
  251. package/dist/resolution/swift-objc-bridge.d.ts.map +1 -0
  252. package/dist/resolution/swift-objc-bridge.js +256 -0
  253. package/dist/resolution/swift-objc-bridge.js.map +1 -0
  254. package/dist/resolution/types.d.ts +44 -0
  255. package/dist/resolution/types.d.ts.map +1 -1
  256. package/dist/resolution/workspace-packages.d.ts +48 -0
  257. package/dist/resolution/workspace-packages.d.ts.map +1 -0
  258. package/dist/resolution/workspace-packages.js +208 -0
  259. package/dist/resolution/workspace-packages.js.map +1 -0
  260. package/dist/search/query-utils.d.ts +18 -0
  261. package/dist/search/query-utils.d.ts.map +1 -1
  262. package/dist/search/query-utils.js +30 -0
  263. package/dist/search/query-utils.js.map +1 -1
  264. package/dist/sync/git-hooks.d.ts.map +1 -1
  265. package/dist/sync/git-hooks.js +2 -0
  266. package/dist/sync/git-hooks.js.map +1 -1
  267. package/dist/sync/index.d.ts +3 -1
  268. package/dist/sync/index.d.ts.map +1 -1
  269. package/dist/sync/index.js +8 -1
  270. package/dist/sync/index.js.map +1 -1
  271. package/dist/sync/watcher.d.ts +212 -8
  272. package/dist/sync/watcher.d.ts.map +1 -1
  273. package/dist/sync/watcher.js +465 -51
  274. package/dist/sync/watcher.js.map +1 -1
  275. package/dist/sync/worktree.d.ts +54 -0
  276. package/dist/sync/worktree.d.ts.map +1 -0
  277. package/dist/sync/worktree.js +137 -0
  278. package/dist/sync/worktree.js.map +1 -0
  279. package/dist/types.d.ts +9 -1
  280. package/dist/types.d.ts.map +1 -1
  281. package/dist/types.js +3 -0
  282. package/dist/types.js.map +1 -1
  283. package/package.json +1 -1
  284. package/scripts/agent-eval/arms-F.sh +21 -0
  285. package/scripts/agent-eval/arms-matrix.sh +37 -0
  286. package/scripts/agent-eval/bench-readme.sh +28 -0
  287. package/scripts/agent-eval/bench-why-repo.sh +22 -0
  288. package/scripts/agent-eval/block-read-hook.sh +19 -0
  289. package/scripts/agent-eval/hook-settings.json +15 -0
  290. package/scripts/agent-eval/itrun.sh +24 -11
  291. package/scripts/agent-eval/parse-arms.mjs +116 -0
  292. package/scripts/agent-eval/parse-bench-readme.mjs +84 -0
  293. package/scripts/agent-eval/probe-context.mjs +21 -0
  294. package/scripts/agent-eval/probe-explore.mjs +40 -0
  295. package/scripts/agent-eval/probe-node.mjs +20 -0
  296. package/scripts/agent-eval/probe-sweep.mjs +119 -0
  297. package/scripts/agent-eval/probe-trace.mjs +20 -0
  298. package/scripts/agent-eval/run-arms.sh +56 -0
  299. package/scripts/agent-eval/seq-matrix.mjs +137 -0
  300. package/scripts/npm-sdk.js +75 -0
  301. package/scripts/pack-npm.sh +25 -1
  302. package/scripts/prepare-release.mjs +270 -0
@@ -2,6 +2,49 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cppExtractor = exports.cExtractor = void 0;
4
4
  const tree_sitter_helpers_1 = require("../tree-sitter-helpers");
5
+ function extractCppQualifiedMethodName(node, source) {
6
+ const declarator = (0, tree_sitter_helpers_1.getChildByField)(node, 'declarator');
7
+ if (!declarator)
8
+ return undefined;
9
+ const queue = [declarator];
10
+ while (queue.length > 0) {
11
+ const current = queue.shift();
12
+ if (current.type === 'qualified_identifier') {
13
+ const text = (0, tree_sitter_helpers_1.getNodeText)(current, source).trim();
14
+ const parts = text.split('::').filter(Boolean);
15
+ return parts[parts.length - 1];
16
+ }
17
+ for (let i = 0; i < current.namedChildCount; i++) {
18
+ const child = current.namedChild(i);
19
+ if (child)
20
+ queue.push(child);
21
+ }
22
+ }
23
+ return undefined;
24
+ }
25
+ function extractCppReceiverType(node, source) {
26
+ const declarator = (0, tree_sitter_helpers_1.getChildByField)(node, 'declarator');
27
+ if (!declarator)
28
+ return undefined;
29
+ const queue = [declarator];
30
+ while (queue.length > 0) {
31
+ const current = queue.shift();
32
+ if (current.type === 'qualified_identifier') {
33
+ const text = (0, tree_sitter_helpers_1.getNodeText)(current, source).trim();
34
+ const parts = text.split('::').filter(Boolean);
35
+ if (parts.length > 1) {
36
+ return parts.slice(0, -1).join('::');
37
+ }
38
+ return undefined;
39
+ }
40
+ for (let i = 0; i < current.namedChildCount; i++) {
41
+ const child = current.namedChild(i);
42
+ if (child)
43
+ queue.push(child);
44
+ }
45
+ }
46
+ return undefined;
47
+ }
5
48
  exports.cExtractor = {
6
49
  functionTypes: ['function_definition'],
7
50
  classTypes: [],
@@ -64,6 +107,8 @@ exports.cppExtractor = {
64
107
  nameField: 'declarator',
65
108
  bodyField: 'body',
66
109
  paramsField: 'parameters',
110
+ resolveName: extractCppQualifiedMethodName,
111
+ getReceiverType: extractCppReceiverType,
67
112
  getVisibility: (node) => {
68
113
  // Check for access specifier in parent
69
114
  const parent = node.parent;
@@ -1 +1 @@
1
- {"version":3,"file":"c-cpp.js","sourceRoot":"","sources":["../../../src/extraction/languages/c-cpp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"c-cpp.js","sourceRoot":"","sources":["../../../src/extraction/languages/c-cpp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/csharp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,eAAO,MAAM,eAAe,EAAE,iBA8D7B,CAAC"}
1
+ {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/csharp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,eAAO,MAAM,eAAe,EAAE,iBA+D7B,CAAC"}
@@ -18,7 +18,8 @@ exports.csharpExtractor = {
18
18
  propertyTypes: ['property_declaration'],
19
19
  nameField: 'name',
20
20
  bodyField: 'body',
21
- paramsField: 'parameter_list',
21
+ paramsField: 'parameters',
22
+ returnField: 'type',
22
23
  getVisibility: (node) => {
23
24
  for (let i = 0; i < node.childCount; i++) {
24
25
  const child = node.child(i);
@@ -1 +1 @@
1
- {"version":3,"file":"csharp.js","sourceRoot":"","sources":["../../../src/extraction/languages/csharp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"csharp.js","sourceRoot":"","sources":["../../../src/extraction/languages/csharp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"go.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/go.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,eAAO,MAAM,WAAW,EAAE,iBA+CzB,CAAC"}
1
+ {"version":3,"file":"go.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/go.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,eAAO,MAAM,WAAW,EAAE,iBA+DzB,CAAC"}
@@ -41,6 +41,18 @@ exports.goExtractor = {
41
41
  return 'interface';
42
42
  return undefined;
43
43
  },
44
+ isExported: (node, source) => {
45
+ // Go: a symbol is exported when its identifier starts with an uppercase letter.
46
+ // Look at the `name` field directly (works for function_declaration,
47
+ // method_declaration, type_spec, and var_spec / const_spec via extractor flow).
48
+ const nameNode = (0, tree_sitter_helpers_1.getChildByField)(node, 'name');
49
+ if (nameNode) {
50
+ const text = (0, tree_sitter_helpers_1.getNodeText)(nameNode, source);
51
+ const first = text.charCodeAt(0);
52
+ return first >= 65 && first <= 90; // A-Z
53
+ }
54
+ return false;
55
+ },
44
56
  getReceiverType: (node, source) => {
45
57
  // Go method_declaration has a "receiver" field: func (sl *scrapeLoop) run(...)
46
58
  // The receiver is a parameter_list containing a parameter_declaration
@@ -50,8 +62,12 @@ exports.goExtractor = {
50
62
  return undefined;
51
63
  // Find the type identifier inside the receiver
52
64
  const text = (0, tree_sitter_helpers_1.getNodeText)(receiver, source);
53
- // Extract type name from patterns like "(sl *Type)", "(sl Type)", "(*Type)", "(Type)"
54
- const match = text.match(/\*?\s*([A-Za-z_][A-Za-z0-9_]*)\s*\)/);
65
+ // Extract type name from "(sl *Type)", "(sl Type)", "(*Type)", "(Type)" and
66
+ // generic receivers "(s *Stack[T])". Anchor on the opening "(" and skip an
67
+ // optional receiver var name; the old `name)`-anchored pattern never matched
68
+ // the `[T])` suffix, so generic-type methods were orphaned from their type
69
+ // (no struct→method `contains` edge). (#583)
70
+ const match = text.match(/\(\s*(?:[A-Za-z_]\w*\s+)?\*?\s*([A-Za-z_]\w*)/);
55
71
  return match?.[1];
56
72
  },
57
73
  };
@@ -1 +1 @@
1
- {"version":3,"file":"go.js","sourceRoot":"","sources":["../../../src/extraction/languages/go.ts"],"names":[],"mappings":";;;AAAA,gEAAsE;AAGzD,QAAA,WAAW,GAAsB;IAC5C,aAAa,EAAE,CAAC,sBAAsB,CAAC;IACvC,UAAU,EAAE,EAAE,EAAE,0BAA0B;IAC1C,WAAW,EAAE,CAAC,oBAAoB,CAAC;IACnC,cAAc,EAAE,EAAE,EAAG,+CAA+C;IACpE,WAAW,EAAE,EAAE,EAAM,+CAA+C;IACpE,SAAS,EAAE,EAAE;IACb,cAAc,EAAE,CAAC,WAAW,CAAC,EAAE,uBAAuB;IACtD,WAAW,EAAE,CAAC,oBAAoB,CAAC;IACnC,SAAS,EAAE,CAAC,iBAAiB,CAAC;IAC9B,aAAa,EAAE,CAAC,iBAAiB,EAAE,uBAAuB,EAAE,mBAAmB,CAAC;IAChF,kBAAkB,EAAE,IAAI;IACxB,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;IACjB,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,QAAQ;IACrB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,IAAA,qCAAe,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,IAAA,qCAAe,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,IAAI,GAAG,GAAG,IAAA,iCAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,GAAG,IAAI,GAAG,GAAG,IAAA,iCAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,oBAAoB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;QACtC,0EAA0E;QAC1E,8DAA8D;QAC9D,MAAM,SAAS,GAAG,IAAA,qCAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAC;QACjC,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa;YAAE,OAAO,QAAQ,CAAC;QACtD,IAAI,SAAS,CAAC,IAAI,KAAK,gBAAgB;YAAE,OAAO,WAAW,CAAC;QAC5D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAChC,+EAA+E;QAC/E,sEAAsE;QACtE,kFAAkF;QAClF,MAAM,QAAQ,GAAG,IAAA,qCAAe,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,+CAA+C;QAC/C,MAAM,IAAI,GAAG,IAAA,iCAAW,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC3C,sFAAsF;QACtF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAChE,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"go.js","sourceRoot":"","sources":["../../../src/extraction/languages/go.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAoB9D,eAAO,MAAM,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAqBnE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAqB9D,eAAO,MAAM,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAsBnE,CAAC"}
@@ -24,6 +24,7 @@ const pascal_1 = require("./pascal");
24
24
  const scala_1 = require("./scala");
25
25
  const lua_1 = require("./lua");
26
26
  const luau_1 = require("./luau");
27
+ const objc_1 = require("./objc");
27
28
  exports.EXTRACTORS = {
28
29
  typescript: typescript_1.typescriptExtractor,
29
30
  tsx: typescript_1.typescriptExtractor,
@@ -45,5 +46,6 @@ exports.EXTRACTORS = {
45
46
  scala: scala_1.scalaExtractor,
46
47
  lua: lua_1.luaExtractor,
47
48
  luau: luau_1.luauExtractor,
49
+ objc: objc_1.objcExtractor,
48
50
  };
49
51
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extraction/languages/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAKH,6CAAmD;AACnD,6CAAmD;AACnD,qCAA2C;AAC3C,6BAAmC;AACnC,iCAAuC;AACvC,iCAAuC;AACvC,mCAAmD;AACnD,qCAA2C;AAC3C,+BAAqC;AACrC,iCAAuC;AACvC,mCAAyC;AACzC,qCAA2C;AAC3C,iCAAuC;AACvC,qCAA2C;AAC3C,mCAAyC;AACzC,+BAAqC;AACrC,iCAAuC;AAE1B,QAAA,UAAU,GAAiD;IACtE,UAAU,EAAE,gCAAmB;IAC/B,GAAG,EAAE,gCAAmB;IACxB,UAAU,EAAE,gCAAmB;IAC/B,GAAG,EAAE,gCAAmB;IACxB,MAAM,EAAE,wBAAe;IACvB,EAAE,EAAE,gBAAW;IACf,IAAI,EAAE,oBAAa;IACnB,IAAI,EAAE,oBAAa;IACnB,CAAC,EAAE,kBAAU;IACb,GAAG,EAAE,oBAAY;IACjB,MAAM,EAAE,wBAAe;IACvB,GAAG,EAAE,kBAAY;IACjB,IAAI,EAAE,oBAAa;IACnB,KAAK,EAAE,sBAAc;IACrB,MAAM,EAAE,wBAAe;IACvB,IAAI,EAAE,oBAAa;IACnB,MAAM,EAAE,wBAAe;IACvB,KAAK,EAAE,sBAAc;IACrB,GAAG,EAAE,kBAAY;IACjB,IAAI,EAAE,oBAAa;CACpB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extraction/languages/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAKH,6CAAmD;AACnD,6CAAmD;AACnD,qCAA2C;AAC3C,6BAAmC;AACnC,iCAAuC;AACvC,iCAAuC;AACvC,mCAAmD;AACnD,qCAA2C;AAC3C,+BAAqC;AACrC,iCAAuC;AACvC,mCAAyC;AACzC,qCAA2C;AAC3C,iCAAuC;AACvC,qCAA2C;AAC3C,mCAAyC;AACzC,+BAAqC;AACrC,iCAAuC;AACvC,iCAAuC;AAE1B,QAAA,UAAU,GAAiD;IACtE,UAAU,EAAE,gCAAmB;IAC/B,GAAG,EAAE,gCAAmB;IACxB,UAAU,EAAE,gCAAmB;IAC/B,GAAG,EAAE,gCAAmB;IACxB,MAAM,EAAE,wBAAe;IACvB,EAAE,EAAE,gBAAW;IACf,IAAI,EAAE,oBAAa;IACnB,IAAI,EAAE,oBAAa;IACnB,CAAC,EAAE,kBAAU;IACb,GAAG,EAAE,oBAAY;IACjB,MAAM,EAAE,wBAAe;IACvB,GAAG,EAAE,kBAAY;IACjB,IAAI,EAAE,oBAAa;IACnB,KAAK,EAAE,sBAAc;IACrB,MAAM,EAAE,wBAAe;IACvB,IAAI,EAAE,oBAAa;IACnB,MAAM,EAAE,wBAAe;IACvB,KAAK,EAAE,sBAAc;IACrB,GAAG,EAAE,kBAAY;IACjB,IAAI,EAAE,oBAAa;IACnB,IAAI,EAAE,oBAAa;CACpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/java.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,eAAO,MAAM,aAAa,EAAE,iBAsD3B,CAAC"}
1
+ {"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/java.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,eAAO,MAAM,aAAa,EAAE,iBA8D3B,CAAC"}
@@ -60,5 +60,11 @@ exports.javaExtractor = {
60
60
  }
61
61
  return null;
62
62
  },
63
+ packageTypes: ['package_declaration'],
64
+ extractPackage: (node, source) => {
65
+ // package_declaration → scoped_identifier or identifier (single-segment)
66
+ const id = node.namedChildren.find((c) => c.type === 'scoped_identifier' || c.type === 'identifier');
67
+ return id ? source.substring(id.startIndex, id.endIndex).trim() : null;
68
+ },
63
69
  };
64
70
  //# sourceMappingURL=java.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"java.js","sourceRoot":"","sources":["../../../src/extraction/languages/java.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"java.js","sourceRoot":"","sources":["../../../src/extraction/languages/java.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"kotlin.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/kotlin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AA4B9D,eAAO,MAAM,eAAe,EAAE,iBA+M7B,CAAC"}
1
+ {"version":3,"file":"kotlin.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/kotlin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AA4B9D,eAAO,MAAM,eAAe,EAAE,iBAqN7B,CAAC"}
@@ -249,5 +249,11 @@ exports.kotlinExtractor = {
249
249
  }
250
250
  return null;
251
251
  },
252
+ packageTypes: ['package_header'],
253
+ extractPackage: (node, source) => {
254
+ // package_header → identifier (dotted: `com.example.foo`)
255
+ const id = node.namedChildren.find((c) => c.type === 'identifier');
256
+ return id ? source.substring(id.startIndex, id.endIndex).trim() : null;
257
+ },
252
258
  };
253
259
  //# sourceMappingURL=kotlin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../../src/extraction/languages/kotlin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../../src/extraction/languages/kotlin.ts"],"names":[],"mappings":";;;AACA,gEAAsE;AAGtE,mEAAmE;AACnE,SAAS,kBAAkB,CAAC,IAAgB;IAC1C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,MAAM,GAAG,IAAI,CAAC;QAC1D,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC;YACzF,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW;gBAAE,gBAAgB,GAAG,IAAI,CAAC;QACrE,CAAC;QACD,8DAA8D;QAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAClC,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC;oBACtF,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW;wBAAE,gBAAgB,GAAG,IAAI,CAAC;gBACrE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,IAAI,gBAAgB,CAAC;AACpC,CAAC;AAEY,QAAA,eAAe,GAAsB;IAChD,aAAa,EAAE,CAAC,sBAAsB,CAAC;IACvC,UAAU,EAAE,CAAC,mBAAmB,CAAC;IACjC,WAAW,EAAE,CAAC,sBAAsB,CAAC,EAAE,uCAAuC;IAC9E,cAAc,EAAE,EAAE,EAAE,gCAAgC;IACpD,WAAW,EAAE,EAAE,EAAE,2BAA2B;IAC5C,SAAS,EAAE,EAAE,EAAE,gCAAgC;IAC/C,eAAe,EAAE,CAAC,YAAY,CAAC;IAC/B,cAAc,EAAE,CAAC,YAAY,CAAC;IAC9B,WAAW,EAAE,CAAC,eAAe,CAAC;IAC9B,SAAS,EAAE,CAAC,iBAAiB,CAAC;IAC9B,aAAa,EAAE,CAAC,sBAAsB,CAAC;IACvC,UAAU,EAAE,CAAC,sBAAsB,CAAC;IACpC,mBAAmB,EAAE,CAAC,oBAAoB,CAAC;IAC3C,SAAS,EAAE,mBAAmB;IAC9B,SAAS,EAAE,eAAe;IAC1B,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACvB,8CAA8C;QAC9C,2EAA2E;QAC3E,+CAA+C;QAC/C,qEAAqE;QACrE,wEAAwE;QACxE,sFAAsF;QACtF,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC;YAClC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC3E,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAsB;YAAE,OAAO,KAAK,CAAC;QAEhF,gFAAgF;QAChF,2EAA2E;QAC3E,qEAAqE;QACrE,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,GAAG;gBAAE,OAAO,KAAK,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAE5C,8BAA8B;QAC9B,+EAA+E;QAC/E,oFAAoF;QACpF,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC1C,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC1B,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;4BAC1C,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC;4BACnB,MAAM;wBACR,CAAC;oBACH,CAAC;oBACD,IAAI,QAAQ;wBAAE,MAAM;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;QACD,gFAAgF;QAChF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAChD,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;oBACtB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAE5B,4BAA4B;QAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAE7B,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAE5B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,wDAAwD;YACxD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACrC,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;oBACrD,MAAM,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBACxC,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;4BAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;4BACjC,IAAI,IAAI;gCAAE,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;wBAChC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,sFAAsF;QACtF,mFAAmF;QACnF,oFAAoF;QAEpF,GAAG,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IACD,WAAW,EAAE,2BAA2B;IACxC,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE;QAChC,kFAAkF;QAClF,kFAAkF;QAClF,6BAA6B;QAC7B,EAAE;QACF,sFAAsF;QACtF,+EAA+E;QAC/E,8EAA8E;QAC9E,yCAAyC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACpC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;oBAC1C,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YACD,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC;gBACjH,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1B,sEAAsE;QACtE,2CAA2C;QAC3C,4DAA4D;QAC5D,uDAAuD;QACvD,0DAA0D;QAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW;gBAAE,OAAO,WAAW,CAAC;YACnD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC3C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAChC,oDAAoD;QACpD,gEAAgE;QAChE,qDAAqD;QACrD,IAAI,aAAa,GAAsB,IAAI,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC/B,aAAa,GAAG,KAAK,CAAC;YACxB,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;gBAC/C,oDAAoD;gBACpD,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC;gBACjG,OAAO,MAAM,CAAC,CAAC,CAAC,IAAA,iCAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,iCAAW,EAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YACnF,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,CAAC,IAAI,KAAK,2BAA2B,EAAE,CAAC;gBAC5F,uCAAuC;gBACvC,MAAM;YACR,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC7B,0DAA0D;QAC1D,MAAM,MAAM,GAAG,IAAA,qCAAe,EAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,IAAA,qCAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,IAAI,GAAG,GAAG,IAAA,iCAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,IAAI,IAAI,GAAG,IAAA,iCAAW,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,2CAA2C;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,KAAK,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;gBACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE,OAAO,QAAQ,CAAC;gBAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAAE,OAAO,SAAS,CAAC;gBAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAAE,OAAO,WAAW,CAAC;gBACnD,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAAE,OAAO,UAAU,CAAC;YACnD,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC,CAAC,4BAA4B;IAC/C,CAAC;IACD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAClB,qDAAqD;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QAChB,6CAA6C;QAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,KAAK,EAAE,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3E,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QACvF,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;QAC7G,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,YAAY,EAAE,CAAC,gBAAgB,CAAC;IAChC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC/B,0DAA0D;QAC1D,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QAC/E,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { LanguageExtractor } from '../tree-sitter-types';
2
+ export declare const objcExtractor: LanguageExtractor;
3
+ //# sourceMappingURL=objc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objc.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/objc.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAuDhF,eAAO,MAAM,aAAa,EAAE,iBA8E3B,CAAC"}
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.objcExtractor = void 0;
4
+ const tree_sitter_helpers_1 = require("../tree-sitter-helpers");
5
+ function findCompoundStatement(node) {
6
+ for (let i = 0; i < node.namedChildCount; i++) {
7
+ const child = node.namedChild(i);
8
+ if (child?.type === 'compound_statement') {
9
+ return child;
10
+ }
11
+ }
12
+ return null;
13
+ }
14
+ /** Build ObjC selector: `greet`, `doThing:`, or `doThing:with:`. */
15
+ function extractObjcMethodName(node, source) {
16
+ if (node.type !== 'method_definition' && node.type !== 'method_declaration') {
17
+ return undefined;
18
+ }
19
+ const identifiers = node.namedChildren.filter((c) => c.type === 'identifier');
20
+ if (identifiers.length === 0)
21
+ return undefined;
22
+ const hasParameters = node.namedChildren.some((c) => c.type === 'method_parameter');
23
+ const firstIdentifier = identifiers[0];
24
+ if (!firstIdentifier)
25
+ return undefined;
26
+ if (!hasParameters) {
27
+ return (0, tree_sitter_helpers_1.getNodeText)(firstIdentifier, source);
28
+ }
29
+ return identifiers.map((id) => `${(0, tree_sitter_helpers_1.getNodeText)(id, source)}:`).join('');
30
+ }
31
+ function extractObjcPropertyName(node, source) {
32
+ if (node.type !== 'property_declaration')
33
+ return null;
34
+ const structDecl = node.namedChildren.find((c) => c.type === 'struct_declaration');
35
+ if (!structDecl)
36
+ return null;
37
+ const structDeclarator = structDecl.namedChildren.find((c) => c.type === 'struct_declarator');
38
+ if (!structDeclarator)
39
+ return null;
40
+ let current = structDeclarator;
41
+ while (current) {
42
+ const inner = (0, tree_sitter_helpers_1.getChildByField)(current, 'declarator') ||
43
+ current.namedChildren.find((c) => c.type === 'identifier' || c.type === 'pointer_declarator');
44
+ if (!inner)
45
+ break;
46
+ if (inner.type === 'identifier') {
47
+ return (0, tree_sitter_helpers_1.getNodeText)(inner, source);
48
+ }
49
+ current = inner;
50
+ }
51
+ return null;
52
+ }
53
+ exports.objcExtractor = {
54
+ functionTypes: ['function_definition'],
55
+ // Only @interface emits a class node; @implementation reuses it via visitNode.
56
+ classTypes: ['class_interface'],
57
+ methodTypes: ['method_definition'],
58
+ interfaceTypes: ['protocol_declaration'],
59
+ interfaceKind: 'protocol',
60
+ structTypes: ['struct_specifier'],
61
+ enumTypes: ['enum_specifier'],
62
+ enumMemberTypes: ['enumerator'],
63
+ typeAliasTypes: ['type_definition'],
64
+ importTypes: ['preproc_include'],
65
+ callTypes: ['call_expression', 'message_expression'],
66
+ variableTypes: ['declaration'],
67
+ propertyTypes: ['property_declaration'],
68
+ nameField: 'declarator',
69
+ bodyField: 'body',
70
+ paramsField: 'parameters',
71
+ resolveName: extractObjcMethodName,
72
+ extractPropertyName: extractObjcPropertyName,
73
+ resolveBody: (node, bodyField) => {
74
+ const fromField = (0, tree_sitter_helpers_1.getChildByField)(node, bodyField);
75
+ if (fromField) {
76
+ return fromField;
77
+ }
78
+ return findCompoundStatement(node);
79
+ },
80
+ resolveTypeAliasKind: (node, _source) => {
81
+ for (let i = 0; i < node.namedChildCount; i++) {
82
+ const child = node.namedChild(i);
83
+ if (!child)
84
+ continue;
85
+ if (child.type === 'enum_specifier' && (0, tree_sitter_helpers_1.getChildByField)(child, 'body'))
86
+ return 'enum';
87
+ if (child.type === 'struct_specifier' && (0, tree_sitter_helpers_1.getChildByField)(child, 'body'))
88
+ return 'struct';
89
+ }
90
+ return undefined;
91
+ },
92
+ isStatic: (node) => /^\s*\+/.test(node.text),
93
+ visitNode: (node, ctx) => {
94
+ if (node.type !== 'class_implementation')
95
+ return false;
96
+ const classNameNode = node.namedChildren.find((c) => c.type === 'identifier');
97
+ if (!classNameNode)
98
+ return true;
99
+ const className = (0, tree_sitter_helpers_1.getNodeText)(classNameNode, ctx.source);
100
+ const classNode = ctx.nodes.find((n) => n.name === className && n.filePath === ctx.filePath && n.kind === 'class') ?? ctx.createNode('class', className, node, {});
101
+ if (!classNode)
102
+ return true;
103
+ ctx.pushScope(classNode.id);
104
+ for (let i = 0; i < node.namedChildCount; i++) {
105
+ const child = node.namedChild(i);
106
+ if (child?.type === 'implementation_definition') {
107
+ for (let j = 0; j < child.namedChildCount; j++) {
108
+ const implChild = child.namedChild(j);
109
+ if (implChild)
110
+ ctx.visitNode(implChild);
111
+ }
112
+ }
113
+ }
114
+ ctx.popScope();
115
+ return true;
116
+ },
117
+ extractImport: (node, source) => {
118
+ const importText = source.substring(node.startIndex, node.endIndex).trim();
119
+ const systemLib = node.namedChildren.find((c) => c.type === 'system_lib_string');
120
+ if (systemLib) {
121
+ return { moduleName: (0, tree_sitter_helpers_1.getNodeText)(systemLib, source).replace(/^<|>$/g, ''), signature: importText };
122
+ }
123
+ const stringLiteral = node.namedChildren.find((c) => c.type === 'string_literal');
124
+ if (stringLiteral) {
125
+ const stringContent = stringLiteral.namedChildren.find((c) => c.type === 'string_content');
126
+ if (stringContent) {
127
+ return { moduleName: (0, tree_sitter_helpers_1.getNodeText)(stringContent, source), signature: importText };
128
+ }
129
+ }
130
+ return null;
131
+ },
132
+ };
133
+ //# sourceMappingURL=objc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objc.js","sourceRoot":"","sources":["../../../src/extraction/languages/objc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import { ExtractionResult } from '../types';
2
+ /**
3
+ * MyBatisExtractor — parses MyBatis mapper XML files.
4
+ *
5
+ * MyBatis splits a DAO interface across two files: a Java interface (parsed by
6
+ * tree-sitter) declares the method, and an XML mapper file holds the SQL keyed
7
+ * by `<namespace>` (the fully-qualified Java type name) and `id` (the method
8
+ * name). Without the XML side in the graph, `trace(Controller, ...DAO.method)`
9
+ * dead-ends at the interface method — the SQL it actually runs is invisible,
10
+ * and "what does this query touch" / "where is this column written" can't be
11
+ * answered.
12
+ *
13
+ * This extractor emits one method-shaped node per `<select|insert|update|
14
+ * delete>` and per `<sql>` fragment, qualified as `<namespace>::<id>` so the
15
+ * MyBatis framework synthesizer (`src/resolution/frameworks/mybatis.ts`) can
16
+ * link the matching Java method → XML statement by suffix-matching qualified
17
+ * names. `<include refid="...">` inside a statement yields an unresolved
18
+ * reference to the SQL fragment, also keyed by `<namespace>::<refid>`.
19
+ *
20
+ * Non-mapper XML (Maven `pom.xml`, Spring beans XML, `web.xml`, log4j config,
21
+ * etc.) is detected by the absence of a `<mapper namespace="...">` root and
22
+ * returns just a file node — we still need the file row so the watcher can
23
+ * track it, but we emit no symbols.
24
+ */
25
+ export declare class MyBatisExtractor {
26
+ private filePath;
27
+ private source;
28
+ private nodes;
29
+ private edges;
30
+ private unresolvedReferences;
31
+ private errors;
32
+ private lineStarts;
33
+ constructor(filePath: string, source: string);
34
+ extract(): ExtractionResult;
35
+ private createFileNode;
36
+ /**
37
+ * Find the `<mapper namespace="X">` opening tag. Returns the namespace and
38
+ * the byte offsets of the body (between the opening and closing tag) so
39
+ * statement extraction can be scoped to mapper contents.
40
+ */
41
+ private findMapperRoot;
42
+ private extractMapper;
43
+ private buildSignature;
44
+ private previewSql;
45
+ private computeLineStarts;
46
+ private getLineNumber;
47
+ }
48
+ //# sourceMappingURL=mybatis-extractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mybatis-extractor.d.ts","sourceRoot":"","sources":["../../src/extraction/mybatis-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,gBAAgB,EAA6B,MAAM,UAAU,CAAC;AAG9F;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,UAAU,CAAgB;gBAEtB,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAM5C,OAAO,IAAI,gBAAgB;IA2B3B,OAAO,CAAC,cAAc;IAoBtB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,aAAa;IA2DrB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,aAAa;CAWtB"}