@optave/codegraph 3.10.0 → 3.11.1
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.
- package/README.md +40 -33
- package/dist/ast-analysis/engine.d.ts.map +1 -1
- package/dist/ast-analysis/engine.js +91 -60
- package/dist/ast-analysis/engine.js.map +1 -1
- package/dist/ast-analysis/rules/index.d.ts.map +1 -1
- package/dist/ast-analysis/rules/index.js +77 -0
- package/dist/ast-analysis/rules/index.js.map +1 -1
- package/dist/ast-analysis/visitor-utils.d.ts +3 -0
- package/dist/ast-analysis/visitor-utils.d.ts.map +1 -1
- package/dist/ast-analysis/visitor-utils.js +83 -49
- package/dist/ast-analysis/visitor-utils.js.map +1 -1
- package/dist/ast-analysis/visitors/ast-store-visitor.d.ts.map +1 -1
- package/dist/ast-analysis/visitors/ast-store-visitor.js +78 -62
- package/dist/ast-analysis/visitors/ast-store-visitor.js.map +1 -1
- package/dist/ast-analysis/visitors/dataflow-visitor.d.ts.map +1 -1
- package/dist/ast-analysis/visitors/dataflow-visitor.js +61 -42
- package/dist/ast-analysis/visitors/dataflow-visitor.js.map +1 -1
- package/dist/cli/commands/audit.js +1 -1
- package/dist/cli/commands/audit.js.map +1 -1
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +2 -0
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/check.js +1 -1
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/children.js +1 -1
- package/dist/cli/commands/children.js.map +1 -1
- package/dist/cli/commands/diff-impact.js +1 -1
- package/dist/cli/commands/diff-impact.js.map +1 -1
- package/dist/cli/commands/embed.d.ts.map +1 -1
- package/dist/cli/commands/embed.js +49 -4
- package/dist/cli/commands/embed.js.map +1 -1
- package/dist/cli/commands/roles.js +1 -1
- package/dist/cli/commands/roles.js.map +1 -1
- package/dist/cli/commands/structure.js +1 -1
- package/dist/cli/commands/structure.js.map +1 -1
- package/dist/cli/shared/options.js +1 -1
- package/dist/cli/shared/options.js.map +1 -1
- package/dist/db/connection.d.ts.map +1 -1
- package/dist/db/connection.js +8 -0
- package/dist/db/connection.js.map +1 -1
- package/dist/domain/analysis/dependencies.d.ts.map +1 -1
- package/dist/domain/analysis/dependencies.js +106 -80
- package/dist/domain/analysis/dependencies.js.map +1 -1
- package/dist/domain/analysis/fn-impact.d.ts.map +1 -1
- package/dist/domain/analysis/fn-impact.js +77 -52
- package/dist/domain/analysis/fn-impact.js.map +1 -1
- package/dist/domain/analysis/module-map.d.ts.map +1 -1
- package/dist/domain/analysis/module-map.js +132 -121
- package/dist/domain/analysis/module-map.js.map +1 -1
- package/dist/domain/graph/builder/helpers.d.ts +4 -4
- package/dist/domain/graph/builder/helpers.d.ts.map +1 -1
- package/dist/domain/graph/builder/helpers.js +47 -33
- package/dist/domain/graph/builder/helpers.js.map +1 -1
- package/dist/domain/graph/builder/incremental.d.ts +6 -6
- package/dist/domain/graph/builder/incremental.d.ts.map +1 -1
- package/dist/domain/graph/builder/incremental.js +148 -99
- package/dist/domain/graph/builder/incremental.js.map +1 -1
- package/dist/domain/graph/builder/pipeline.d.ts +1 -0
- package/dist/domain/graph/builder/pipeline.d.ts.map +1 -1
- package/dist/domain/graph/builder/pipeline.js +23 -637
- package/dist/domain/graph/builder/pipeline.js.map +1 -1
- package/dist/domain/graph/builder/stages/build-edges.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/build-edges.js +141 -98
- package/dist/domain/graph/builder/stages/build-edges.js.map +1 -1
- package/dist/domain/graph/builder/stages/build-structure.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/build-structure.js +82 -65
- package/dist/domain/graph/builder/stages/build-structure.js.map +1 -1
- package/dist/domain/graph/builder/stages/detect-changes.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/detect-changes.js +84 -56
- package/dist/domain/graph/builder/stages/detect-changes.js.map +1 -1
- package/dist/domain/graph/builder/stages/finalize.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/finalize.js +60 -51
- package/dist/domain/graph/builder/stages/finalize.js.map +1 -1
- package/dist/domain/graph/builder/stages/insert-nodes.d.ts +8 -6
- package/dist/domain/graph/builder/stages/insert-nodes.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/insert-nodes.js +107 -122
- package/dist/domain/graph/builder/stages/insert-nodes.js.map +1 -1
- package/dist/domain/graph/builder/stages/native-db-lifecycle.d.ts +14 -0
- package/dist/domain/graph/builder/stages/native-db-lifecycle.d.ts.map +1 -0
- package/dist/domain/graph/builder/stages/native-db-lifecycle.js +77 -0
- package/dist/domain/graph/builder/stages/native-db-lifecycle.js.map +1 -0
- package/dist/domain/graph/builder/stages/native-orchestrator.d.ts +62 -0
- package/dist/domain/graph/builder/stages/native-orchestrator.d.ts.map +1 -0
- package/dist/domain/graph/builder/stages/native-orchestrator.js +747 -0
- package/dist/domain/graph/builder/stages/native-orchestrator.js.map +1 -0
- package/dist/domain/graph/builder/stages/resolve-imports.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/resolve-imports.js +73 -22
- package/dist/domain/graph/builder/stages/resolve-imports.js.map +1 -1
- package/dist/domain/graph/cycles.d.ts +6 -4
- package/dist/domain/graph/cycles.d.ts.map +1 -1
- package/dist/domain/graph/cycles.js +50 -55
- package/dist/domain/graph/cycles.js.map +1 -1
- package/dist/domain/graph/journal.d.ts.map +1 -1
- package/dist/domain/graph/journal.js +89 -70
- package/dist/domain/graph/journal.js.map +1 -1
- package/dist/domain/graph/watcher.d.ts.map +1 -1
- package/dist/domain/graph/watcher.js +28 -20
- package/dist/domain/graph/watcher.js.map +1 -1
- package/dist/domain/parser.d.ts +12 -23
- package/dist/domain/parser.d.ts.map +1 -1
- package/dist/domain/parser.js +153 -80
- package/dist/domain/parser.js.map +1 -1
- package/dist/domain/search/generator.d.ts +3 -1
- package/dist/domain/search/generator.d.ts.map +1 -1
- package/dist/domain/search/generator.js +68 -45
- package/dist/domain/search/generator.js.map +1 -1
- package/dist/domain/search/models.d.ts +18 -0
- package/dist/domain/search/models.d.ts.map +1 -1
- package/dist/domain/search/models.js +72 -4
- package/dist/domain/search/models.js.map +1 -1
- package/dist/domain/search/search/hybrid.d.ts.map +1 -1
- package/dist/domain/search/search/hybrid.js +49 -40
- package/dist/domain/search/search/hybrid.js.map +1 -1
- package/dist/domain/search/search/semantic.d.ts.map +1 -1
- package/dist/domain/search/search/semantic.js +69 -49
- package/dist/domain/search/search/semantic.js.map +1 -1
- package/dist/domain/wasm-worker-entry.js +209 -137
- package/dist/domain/wasm-worker-entry.js.map +1 -1
- package/dist/extractors/c.js +25 -6
- package/dist/extractors/c.js.map +1 -1
- package/dist/extractors/cpp.js +47 -6
- package/dist/extractors/cpp.js.map +1 -1
- package/dist/extractors/cuda.js +90 -14
- package/dist/extractors/cuda.js.map +1 -1
- package/dist/extractors/elixir.js +108 -4
- package/dist/extractors/elixir.js.map +1 -1
- package/dist/extractors/erlang.js +56 -20
- package/dist/extractors/erlang.js.map +1 -1
- package/dist/extractors/fsharp.d.ts +7 -0
- package/dist/extractors/fsharp.d.ts.map +1 -1
- package/dist/extractors/fsharp.js +94 -0
- package/dist/extractors/fsharp.js.map +1 -1
- package/dist/extractors/gleam.d.ts.map +1 -1
- package/dist/extractors/gleam.js +29 -33
- package/dist/extractors/gleam.js.map +1 -1
- package/dist/extractors/groovy.js +41 -1
- package/dist/extractors/groovy.js.map +1 -1
- package/dist/extractors/haskell.js +48 -4
- package/dist/extractors/haskell.js.map +1 -1
- package/dist/extractors/helpers.d.ts +79 -1
- package/dist/extractors/helpers.d.ts.map +1 -1
- package/dist/extractors/helpers.js +137 -0
- package/dist/extractors/helpers.js.map +1 -1
- package/dist/extractors/java.d.ts.map +1 -1
- package/dist/extractors/java.js +37 -49
- package/dist/extractors/java.js.map +1 -1
- package/dist/extractors/javascript.d.ts.map +1 -1
- package/dist/extractors/javascript.js +44 -44
- package/dist/extractors/javascript.js.map +1 -1
- package/dist/extractors/julia.js +198 -74
- package/dist/extractors/julia.js.map +1 -1
- package/dist/extractors/kotlin.js +4 -0
- package/dist/extractors/kotlin.js.map +1 -1
- package/dist/extractors/objc.js +184 -47
- package/dist/extractors/objc.js.map +1 -1
- package/dist/extractors/python.js +7 -4
- package/dist/extractors/python.js.map +1 -1
- package/dist/extractors/r.d.ts.map +1 -1
- package/dist/extractors/r.js +103 -87
- package/dist/extractors/r.js.map +1 -1
- package/dist/extractors/scala.d.ts.map +1 -1
- package/dist/extractors/scala.js +18 -32
- package/dist/extractors/scala.js.map +1 -1
- package/dist/extractors/solidity.d.ts.map +1 -1
- package/dist/extractors/solidity.js +55 -69
- package/dist/extractors/solidity.js.map +1 -1
- package/dist/extractors/verilog.js +80 -15
- package/dist/extractors/verilog.js.map +1 -1
- package/dist/features/boundaries.d.ts.map +1 -1
- package/dist/features/boundaries.js +49 -39
- package/dist/features/boundaries.js.map +1 -1
- package/dist/features/cfg.d.ts.map +1 -1
- package/dist/features/cfg.js +90 -63
- package/dist/features/cfg.js.map +1 -1
- package/dist/features/check.d.ts.map +1 -1
- package/dist/features/check.js +43 -34
- package/dist/features/check.js.map +1 -1
- package/dist/features/cochange.d.ts.map +1 -1
- package/dist/features/cochange.js +68 -56
- package/dist/features/cochange.js.map +1 -1
- package/dist/features/complexity.d.ts.map +1 -1
- package/dist/features/complexity.js +105 -75
- package/dist/features/complexity.js.map +1 -1
- package/dist/features/dataflow.d.ts.map +1 -1
- package/dist/features/dataflow.js +37 -29
- package/dist/features/dataflow.js.map +1 -1
- package/dist/features/flow.d.ts.map +1 -1
- package/dist/features/flow.js +31 -22
- package/dist/features/flow.js.map +1 -1
- package/dist/features/graph-enrichment.d.ts.map +1 -1
- package/dist/features/graph-enrichment.js +77 -70
- package/dist/features/graph-enrichment.js.map +1 -1
- package/dist/features/owners.d.ts +17 -26
- package/dist/features/owners.d.ts.map +1 -1
- package/dist/features/owners.js +120 -109
- package/dist/features/owners.js.map +1 -1
- package/dist/features/sequence.d.ts.map +1 -1
- package/dist/features/sequence.js +59 -54
- package/dist/features/sequence.js.map +1 -1
- package/dist/features/structure-query.d.ts.map +1 -1
- package/dist/features/structure-query.js +60 -60
- package/dist/features/structure-query.js.map +1 -1
- package/dist/features/structure.js +28 -36
- package/dist/features/structure.js.map +1 -1
- package/dist/graph/algorithms/leiden/optimiser.d.ts.map +1 -1
- package/dist/graph/algorithms/leiden/optimiser.js +100 -69
- package/dist/graph/algorithms/leiden/optimiser.js.map +1 -1
- package/dist/graph/classifiers/roles.d.ts.map +1 -1
- package/dist/graph/classifiers/roles.js +63 -59
- package/dist/graph/classifiers/roles.js.map +1 -1
- package/dist/infrastructure/config.d.ts +1 -1
- package/dist/infrastructure/config.d.ts.map +1 -1
- package/dist/infrastructure/config.js +1 -1
- package/dist/infrastructure/config.js.map +1 -1
- package/dist/mcp/tool-registry.d.ts.map +1 -1
- package/dist/mcp/tool-registry.js +4 -0
- package/dist/mcp/tool-registry.js.map +1 -1
- package/dist/mcp/tools/semantic-search.d.ts +1 -0
- package/dist/mcp/tools/semantic-search.d.ts.map +1 -1
- package/dist/mcp/tools/semantic-search.js +1 -0
- package/dist/mcp/tools/semantic-search.js.map +1 -1
- package/dist/presentation/cfg.d.ts.map +1 -1
- package/dist/presentation/cfg.js +44 -29
- package/dist/presentation/cfg.js.map +1 -1
- package/dist/presentation/flow.d.ts.map +1 -1
- package/dist/presentation/flow.js +58 -38
- package/dist/presentation/flow.js.map +1 -1
- package/dist/types.d.ts +16 -2
- package/dist/types.d.ts.map +1 -1
- package/grammars/tree-sitter-erlang.wasm +0 -0
- package/grammars/tree-sitter-fsharp.wasm +0 -0
- package/grammars/tree-sitter-fsharp_signature.wasm +0 -0
- package/grammars/tree-sitter-gleam.wasm +0 -0
- package/package.json +10 -10
- package/src/ast-analysis/engine.ts +145 -61
- package/src/ast-analysis/rules/index.ts +87 -0
- package/src/ast-analysis/visitor-utils.ts +86 -46
- package/src/ast-analysis/visitors/ast-store-visitor.ts +104 -69
- package/src/ast-analysis/visitors/dataflow-visitor.ts +86 -47
- package/src/cli/commands/audit.ts +1 -1
- package/src/cli/commands/build.ts +2 -0
- package/src/cli/commands/check.ts +1 -1
- package/src/cli/commands/children.ts +1 -1
- package/src/cli/commands/diff-impact.ts +1 -1
- package/src/cli/commands/embed.ts +54 -4
- package/src/cli/commands/roles.ts +1 -1
- package/src/cli/commands/structure.ts +1 -1
- package/src/cli/shared/options.ts +1 -1
- package/src/db/connection.ts +8 -0
- package/src/domain/analysis/dependencies.ts +166 -85
- package/src/domain/analysis/fn-impact.ts +120 -50
- package/src/domain/analysis/module-map.ts +175 -140
- package/src/domain/graph/builder/helpers.ts +85 -76
- package/src/domain/graph/builder/incremental.ts +223 -131
- package/src/domain/graph/builder/pipeline.ts +32 -785
- package/src/domain/graph/builder/stages/build-edges.ts +207 -142
- package/src/domain/graph/builder/stages/build-structure.ts +115 -82
- package/src/domain/graph/builder/stages/detect-changes.ts +107 -64
- package/src/domain/graph/builder/stages/finalize.ts +72 -70
- package/src/domain/graph/builder/stages/insert-nodes.ts +154 -120
- package/src/domain/graph/builder/stages/native-db-lifecycle.ts +74 -0
- package/src/domain/graph/builder/stages/native-orchestrator.ts +942 -0
- package/src/domain/graph/builder/stages/resolve-imports.ts +79 -25
- package/src/domain/graph/cycles.ts +51 -49
- package/src/domain/graph/journal.ts +84 -69
- package/src/domain/graph/watcher.ts +29 -25
- package/src/domain/parser.ts +170 -67
- package/src/domain/search/generator.ts +132 -74
- package/src/domain/search/models.ts +75 -4
- package/src/domain/search/search/hybrid.ts +53 -42
- package/src/domain/search/search/semantic.ts +105 -65
- package/src/domain/wasm-worker-entry.ts +243 -153
- package/src/extractors/c.ts +27 -8
- package/src/extractors/cpp.ts +50 -8
- package/src/extractors/cuda.ts +90 -16
- package/src/extractors/elixir.ts +103 -4
- package/src/extractors/erlang.ts +63 -20
- package/src/extractors/fsharp.ts +104 -0
- package/src/extractors/gleam.ts +40 -39
- package/src/extractors/groovy.ts +45 -1
- package/src/extractors/haskell.ts +45 -4
- package/src/extractors/helpers.ts +205 -1
- package/src/extractors/java.ts +42 -45
- package/src/extractors/javascript.ts +44 -43
- package/src/extractors/julia.ts +191 -77
- package/src/extractors/kotlin.ts +4 -0
- package/src/extractors/objc.ts +171 -47
- package/src/extractors/python.ts +5 -3
- package/src/extractors/r.ts +104 -82
- package/src/extractors/scala.ts +24 -36
- package/src/extractors/solidity.ts +59 -78
- package/src/extractors/verilog.ts +83 -15
- package/src/features/boundaries.ts +64 -46
- package/src/features/cfg.ts +145 -74
- package/src/features/check.ts +60 -43
- package/src/features/cochange.ts +95 -72
- package/src/features/complexity.ts +134 -79
- package/src/features/dataflow.ts +57 -34
- package/src/features/flow.ts +48 -24
- package/src/features/graph-enrichment.ts +105 -70
- package/src/features/owners.ts +186 -146
- package/src/features/sequence.ts +99 -69
- package/src/features/structure-query.ts +94 -79
- package/src/features/structure.ts +56 -56
- package/src/graph/algorithms/leiden/optimiser.ts +142 -87
- package/src/graph/classifiers/roles.ts +64 -54
- package/src/infrastructure/config.ts +1 -1
- package/src/mcp/tool-registry.ts +5 -0
- package/src/mcp/tools/semantic-search.ts +2 -0
- package/src/presentation/cfg.ts +48 -32
- package/src/presentation/flow.ts +100 -52
- package/src/types.ts +16 -1
|
@@ -1,11 +1,28 @@
|
|
|
1
|
-
import type { SubDeclaration, TreeSitterNode, TypeMapEntry } from '../types.js';
|
|
1
|
+
import type { ExtractorOutput, Import, SubDeclaration, TreeSitterNode, TypeMapEntry } from '../types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Maximum recursion depth for tree-sitter AST walkers.
|
|
4
4
|
* Shared across all language extractors to prevent stack overflow on deeply nested ASTs.
|
|
5
5
|
*/
|
|
6
6
|
export declare const MAX_WALK_DEPTH = 200;
|
|
7
|
+
/** Convert a tree-sitter node's start row to a 1-based source line. */
|
|
8
|
+
export declare function nodeStartLine(node: TreeSitterNode): number;
|
|
7
9
|
export declare function nodeEndLine(node: TreeSitterNode): number;
|
|
8
10
|
export declare function findChild(node: TreeSitterNode, type: string): TreeSitterNode | null;
|
|
11
|
+
/**
|
|
12
|
+
* Find the first child whose type is in `types`. Useful when several grammar
|
|
13
|
+
* variants name the same conceptual node differently (e.g. `string` vs
|
|
14
|
+
* `string_literal`). Returns the first match in document order, or null.
|
|
15
|
+
*/
|
|
16
|
+
export declare function findFirstChildOfTypes(node: TreeSitterNode, types: readonly string[]): TreeSitterNode | null;
|
|
17
|
+
/**
|
|
18
|
+
* Iterate the direct children of `node` in document order, skipping nulls and
|
|
19
|
+
* tokens whose type appears in `skipTypes`. Mirrors the common
|
|
20
|
+
* `for (let i = 0; i < node.childCount; i++) { const c = node.child(i); if (...) continue; ... }`
|
|
21
|
+
* idiom while letting callers filter out grammar punctuation (`,`, `(`, `{`, etc.).
|
|
22
|
+
*/
|
|
23
|
+
export declare function iterChildren(node: TreeSitterNode, skipTypes?: ReadonlySet<string>): Generator<TreeSitterNode>;
|
|
24
|
+
/** Common punctuation tokens — handy as a `skipTypes` set for `iterChildren`. */
|
|
25
|
+
export declare const PUNCTUATION_TOKENS: ReadonlySet<string>;
|
|
9
26
|
/**
|
|
10
27
|
* Merge a type-map entry, keeping the higher-confidence one.
|
|
11
28
|
* Shared across all language extractors that build type maps for call resolution.
|
|
@@ -50,4 +67,65 @@ export declare function stripQuotes(text: string): string;
|
|
|
50
67
|
*/
|
|
51
68
|
export declare function lastPathSegment(path: string, separator?: string): string;
|
|
52
69
|
export declare function extractModifierVisibility(node: TreeSitterNode, modifierTypes?: Set<string>): 'public' | 'private' | 'protected' | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* Append a `Call` to the extractor output. `line` defaults to the start line of
|
|
72
|
+
* `node`; pass `extra` for `receiver` / `dynamic` flags.
|
|
73
|
+
*/
|
|
74
|
+
export declare function pushCall(ctx: ExtractorOutput, node: TreeSitterNode, name: string, extra?: {
|
|
75
|
+
receiver?: string;
|
|
76
|
+
dynamic?: boolean;
|
|
77
|
+
}): void;
|
|
78
|
+
/**
|
|
79
|
+
* Append an `Import` to the extractor output. `line` defaults to the start
|
|
80
|
+
* line of `node`. If `names` is empty, the source basename (split on `/`) is
|
|
81
|
+
* used as a single-name fallback — matching the convention in gleam, julia,
|
|
82
|
+
* and similar module-path imports.
|
|
83
|
+
*/
|
|
84
|
+
export declare function pushImport(ctx: ExtractorOutput, node: TreeSitterNode, source: string, names: string[], flags?: Partial<Omit<Import, 'source' | 'names' | 'line'>>): void;
|
|
85
|
+
/**
|
|
86
|
+
* Options for {@link extractSimpleParameters}.
|
|
87
|
+
*/
|
|
88
|
+
export interface ExtractParametersOptions {
|
|
89
|
+
/** Tree-sitter types that mark a single parameter node (e.g. `formal_parameter`). */
|
|
90
|
+
paramTypes: readonly string[];
|
|
91
|
+
/**
|
|
92
|
+
* Field name on each parameter that holds the bound identifier. Defaults to
|
|
93
|
+
* `'name'`. Pass `null` to use the parameter node itself when its type is in
|
|
94
|
+
* `paramTypes` and it has no `name` field (e.g. R's bare `identifier`).
|
|
95
|
+
*/
|
|
96
|
+
nameField?: string | null;
|
|
97
|
+
/**
|
|
98
|
+
* If true, when `nameField` lookup fails fall back to the first `identifier`
|
|
99
|
+
* child of the parameter. Useful for Gleam / Solidity-style grammars.
|
|
100
|
+
*/
|
|
101
|
+
fallbackToIdentifier?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Optional type-map sink. When provided, the parameter's `type` field text
|
|
104
|
+
* (if present) is recorded with the given confidence.
|
|
105
|
+
*/
|
|
106
|
+
typeMap?: Map<string, TypeMapEntry>;
|
|
107
|
+
/** Confidence used when writing into `typeMap`. Defaults to `0.9`. */
|
|
108
|
+
typeMapConfidence?: number;
|
|
109
|
+
/**
|
|
110
|
+
* Optional callback to derive the type text from the parameter's `type`
|
|
111
|
+
* field node. Defaults to `node.text`. Use this for languages where the
|
|
112
|
+
* `type` field is wrapped (e.g. Java `generic_type` → first child).
|
|
113
|
+
*/
|
|
114
|
+
resolveType?: (typeNode: TreeSitterNode) => string | undefined;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Extract parameters from a parameter-list node using a uniform pattern.
|
|
118
|
+
*
|
|
119
|
+
* This collapses the boilerplate in `extract*Params` helpers across
|
|
120
|
+
* Java/Julia/Gleam/Solidity/R/etc. — each one walks the parameter list,
|
|
121
|
+
* matches a parameter node type, reads the `name` field, and pushes a
|
|
122
|
+
* `SubDeclaration` with `kind: 'parameter'`.
|
|
123
|
+
*/
|
|
124
|
+
export declare function extractSimpleParameters(paramListNode: TreeSitterNode | null, options: ExtractParametersOptions): SubDeclaration[];
|
|
125
|
+
/**
|
|
126
|
+
* Resolve the identifier node that names a parameter. Used by
|
|
127
|
+
* {@link extractSimpleParameters}; exposed so language-specific extractors
|
|
128
|
+
* can reuse the same lookup logic in custom loops.
|
|
129
|
+
*/
|
|
130
|
+
export declare function resolveParamName(paramNode: TreeSitterNode, nameField: string | null, fallbackToIdentifier: boolean): TreeSitterNode | null;
|
|
53
131
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/extractors/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/extractors/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,MAAM,EACN,cAAc,EACd,cAAc,EACd,YAAY,EACb,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAE1D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAExD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAMnF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,cAAc,GAAG,IAAI,CAMvB;AAED;;;;;GAKG;AACH,wBAAiB,YAAY,CAC3B,IAAI,EAAE,cAAc,EACpB,SAAS,GAAE,WAAW,CAAC,MAAM,CAAkB,GAC9C,SAAS,CAAC,cAAc,CAAC,CAO3B;AAID,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAWjD,CAAC;AAEH;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,IAAI,CAKN;AAiBD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAK7F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAQzF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,QAAQ,GAAG,SAAS,CASzE;AAID;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,SAAS,GAAE,MAAe,GACzB,MAAM,GAAG,IAAI,CAUf;AAgBD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,cAAc,EAC7B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAC5B,SAAS,GAAE,MAAe,EAC1B,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,cAAc,CAAC,YAAY,CAAC,GACpE,cAAc,EAAE,CAclB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,MAAM,CAE7E;AAgBD,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,cAAc,EACpB,aAAa,GAAE,GAAG,CAAC,MAAM,CAA0B,GAClD,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAQhD;AAUD;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,IAAI,CAMN;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,GAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC,CAAM,GAC7D,IAAI,CAMN;AAID;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qFAAqF;IACrF,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpC,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,MAAM,GAAG,SAAS,CAAC;CAChE;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,cAAc,GAAG,IAAI,EACpC,OAAO,EAAE,wBAAwB,GAChC,cAAc,EAAE,CAclB;AAiBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,oBAAoB,EAAE,OAAO,GAC5B,cAAc,GAAG,IAAI,CAUvB"}
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
* Shared across all language extractors to prevent stack overflow on deeply nested ASTs.
|
|
4
4
|
*/
|
|
5
5
|
export const MAX_WALK_DEPTH = 200;
|
|
6
|
+
/** Convert a tree-sitter node's start row to a 1-based source line. */
|
|
7
|
+
export function nodeStartLine(node) {
|
|
8
|
+
return node.startPosition.row + 1;
|
|
9
|
+
}
|
|
6
10
|
export function nodeEndLine(node) {
|
|
7
11
|
return node.endPosition.row + 1;
|
|
8
12
|
}
|
|
@@ -14,6 +18,49 @@ export function findChild(node, type) {
|
|
|
14
18
|
}
|
|
15
19
|
return null;
|
|
16
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Find the first child whose type is in `types`. Useful when several grammar
|
|
23
|
+
* variants name the same conceptual node differently (e.g. `string` vs
|
|
24
|
+
* `string_literal`). Returns the first match in document order, or null.
|
|
25
|
+
*/
|
|
26
|
+
export function findFirstChildOfTypes(node, types) {
|
|
27
|
+
for (let i = 0; i < node.childCount; i++) {
|
|
28
|
+
const child = node.child(i);
|
|
29
|
+
if (child && types.includes(child.type))
|
|
30
|
+
return child;
|
|
31
|
+
}
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Iterate the direct children of `node` in document order, skipping nulls and
|
|
36
|
+
* tokens whose type appears in `skipTypes`. Mirrors the common
|
|
37
|
+
* `for (let i = 0; i < node.childCount; i++) { const c = node.child(i); if (...) continue; ... }`
|
|
38
|
+
* idiom while letting callers filter out grammar punctuation (`,`, `(`, `{`, etc.).
|
|
39
|
+
*/
|
|
40
|
+
export function* iterChildren(node, skipTypes = EMPTY_SKIP_SET) {
|
|
41
|
+
for (let i = 0; i < node.childCount; i++) {
|
|
42
|
+
const child = node.child(i);
|
|
43
|
+
if (!child)
|
|
44
|
+
continue;
|
|
45
|
+
if (skipTypes.has(child.type))
|
|
46
|
+
continue;
|
|
47
|
+
yield child;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
const EMPTY_SKIP_SET = new Set();
|
|
51
|
+
/** Common punctuation tokens — handy as a `skipTypes` set for `iterChildren`. */
|
|
52
|
+
export const PUNCTUATION_TOKENS = new Set([
|
|
53
|
+
',',
|
|
54
|
+
';',
|
|
55
|
+
'(',
|
|
56
|
+
')',
|
|
57
|
+
'[',
|
|
58
|
+
']',
|
|
59
|
+
'{',
|
|
60
|
+
'}',
|
|
61
|
+
':',
|
|
62
|
+
'.',
|
|
63
|
+
]);
|
|
17
64
|
/**
|
|
18
65
|
* Merge a type-map entry, keeping the higher-confidence one.
|
|
19
66
|
* Shared across all language extractors that build type maps for call resolution.
|
|
@@ -176,4 +223,94 @@ export function extractModifierVisibility(node, modifierTypes = DEFAULT_MODIFIER
|
|
|
176
223
|
}
|
|
177
224
|
return undefined;
|
|
178
225
|
}
|
|
226
|
+
// ── Output-push helpers ────────────────────────────────────────────────────
|
|
227
|
+
//
|
|
228
|
+
// Most extractors finish with `ctx.calls.push({ name, line: node.startPosition.row + 1 })`
|
|
229
|
+
// or `ctx.imports.push({ source, names, line: node.startPosition.row + 1 })`.
|
|
230
|
+
// Centralising the construction keeps `line` derivation consistent and removes
|
|
231
|
+
// the ~108 hand-rolled `startPosition.row + 1` literals scattered across
|
|
232
|
+
// language extractors.
|
|
233
|
+
/**
|
|
234
|
+
* Append a `Call` to the extractor output. `line` defaults to the start line of
|
|
235
|
+
* `node`; pass `extra` for `receiver` / `dynamic` flags.
|
|
236
|
+
*/
|
|
237
|
+
export function pushCall(ctx, node, name, extra = {}) {
|
|
238
|
+
if (!name)
|
|
239
|
+
return;
|
|
240
|
+
const call = { name, line: nodeStartLine(node) };
|
|
241
|
+
if (extra.receiver !== undefined)
|
|
242
|
+
call.receiver = extra.receiver;
|
|
243
|
+
if (extra.dynamic !== undefined)
|
|
244
|
+
call.dynamic = extra.dynamic;
|
|
245
|
+
ctx.calls.push(call);
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Append an `Import` to the extractor output. `line` defaults to the start
|
|
249
|
+
* line of `node`. If `names` is empty, the source basename (split on `/`) is
|
|
250
|
+
* used as a single-name fallback — matching the convention in gleam, julia,
|
|
251
|
+
* and similar module-path imports.
|
|
252
|
+
*/
|
|
253
|
+
export function pushImport(ctx, node, source, names, flags = {}) {
|
|
254
|
+
if (!source)
|
|
255
|
+
return;
|
|
256
|
+
const resolved = names.length > 0 ? names : [lastPathSegment(source, '/') || source];
|
|
257
|
+
const entry = { source, names: resolved, line: nodeStartLine(node) };
|
|
258
|
+
Object.assign(entry, flags);
|
|
259
|
+
ctx.imports.push(entry);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Extract parameters from a parameter-list node using a uniform pattern.
|
|
263
|
+
*
|
|
264
|
+
* This collapses the boilerplate in `extract*Params` helpers across
|
|
265
|
+
* Java/Julia/Gleam/Solidity/R/etc. — each one walks the parameter list,
|
|
266
|
+
* matches a parameter node type, reads the `name` field, and pushes a
|
|
267
|
+
* `SubDeclaration` with `kind: 'parameter'`.
|
|
268
|
+
*/
|
|
269
|
+
export function extractSimpleParameters(paramListNode, options) {
|
|
270
|
+
const params = [];
|
|
271
|
+
if (!paramListNode)
|
|
272
|
+
return params;
|
|
273
|
+
const { paramTypes, nameField = 'name', fallbackToIdentifier = false } = options;
|
|
274
|
+
for (let i = 0; i < paramListNode.childCount; i++) {
|
|
275
|
+
const param = paramListNode.child(i);
|
|
276
|
+
if (!param || !paramTypes.includes(param.type))
|
|
277
|
+
continue;
|
|
278
|
+
const nameNode = resolveParamName(param, nameField, fallbackToIdentifier);
|
|
279
|
+
if (!nameNode)
|
|
280
|
+
continue;
|
|
281
|
+
params.push({ name: nameNode.text, kind: 'parameter', line: nodeStartLine(param) });
|
|
282
|
+
recordParamType(param, nameNode.text, options);
|
|
283
|
+
}
|
|
284
|
+
return params;
|
|
285
|
+
}
|
|
286
|
+
/** Record a parameter's declared type into the type-map sink, if configured. */
|
|
287
|
+
function recordParamType(param, paramName, options) {
|
|
288
|
+
const { typeMap, resolveType, typeMapConfidence = 0.9 } = options;
|
|
289
|
+
if (!typeMap)
|
|
290
|
+
return;
|
|
291
|
+
const typeNode = param.childForFieldName('type');
|
|
292
|
+
if (!typeNode)
|
|
293
|
+
return;
|
|
294
|
+
const typeText = resolveType ? resolveType(typeNode) : typeNode.text;
|
|
295
|
+
if (!typeText)
|
|
296
|
+
return;
|
|
297
|
+
setTypeMapEntry(typeMap, paramName, typeText, typeMapConfidence);
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Resolve the identifier node that names a parameter. Used by
|
|
301
|
+
* {@link extractSimpleParameters}; exposed so language-specific extractors
|
|
302
|
+
* can reuse the same lookup logic in custom loops.
|
|
303
|
+
*/
|
|
304
|
+
export function resolveParamName(paramNode, nameField, fallbackToIdentifier) {
|
|
305
|
+
if (nameField === null) {
|
|
306
|
+
return paramNode;
|
|
307
|
+
}
|
|
308
|
+
const named = paramNode.childForFieldName(nameField);
|
|
309
|
+
if (named)
|
|
310
|
+
return named;
|
|
311
|
+
if (fallbackToIdentifier) {
|
|
312
|
+
return findChild(paramNode, 'identifier');
|
|
313
|
+
}
|
|
314
|
+
return null;
|
|
315
|
+
}
|
|
179
316
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/extractors/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/extractors/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../src/extractors/java.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../src/extractors/java.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAGf,cAAc,EAEf,MAAM,aAAa,CAAC;AAcrB;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,eAAe,CAY3F"}
|
package/dist/extractors/java.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { extractBodyMembers, extractModifierVisibility, findChild, findParentNode, lastPathSegment, nodeEndLine, } from './helpers.js';
|
|
1
|
+
import { extractBodyMembers, extractModifierVisibility, extractSimpleParameters, findChild, findParentNode, lastPathSegment, nodeEndLine, nodeStartLine, pushCall, pushImport, } from './helpers.js';
|
|
2
2
|
/**
|
|
3
3
|
* Extract symbols from Java files.
|
|
4
4
|
*/
|
|
@@ -59,14 +59,14 @@ function handleJavaClassDecl(node, ctx) {
|
|
|
59
59
|
ctx.definitions.push({
|
|
60
60
|
name: nameNode.text,
|
|
61
61
|
kind: 'class',
|
|
62
|
-
line: node
|
|
62
|
+
line: nodeStartLine(node),
|
|
63
63
|
endLine: nodeEndLine(node),
|
|
64
64
|
children: classChildren.length > 0 ? classChildren : undefined,
|
|
65
65
|
});
|
|
66
66
|
extractJavaSuperclass(node, nameNode.text, ctx);
|
|
67
67
|
const interfaces = node.childForFieldName('interfaces');
|
|
68
68
|
if (interfaces) {
|
|
69
|
-
extractJavaInterfaces(interfaces, nameNode.text, node
|
|
69
|
+
extractJavaInterfaces(interfaces, nameNode.text, nodeStartLine(node), ctx);
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
/** Extract the superclass (extends) relationship from a Java class declaration. */
|
|
@@ -76,7 +76,7 @@ function extractJavaSuperclass(node, className, ctx) {
|
|
|
76
76
|
return;
|
|
77
77
|
const superName = findJavaSuperTypeName(superclass);
|
|
78
78
|
if (superName) {
|
|
79
|
-
ctx.classes.push({ name: className, extends: superName, line: node
|
|
79
|
+
ctx.classes.push({ name: className, extends: superName, line: nodeStartLine(node) });
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
/** Find the type name from a superclass node (handles generic_type unwrapping). */
|
|
@@ -128,7 +128,7 @@ function handleJavaInterfaceDecl(node, ctx) {
|
|
|
128
128
|
ctx.definitions.push({
|
|
129
129
|
name: nameNode.text,
|
|
130
130
|
kind: 'interface',
|
|
131
|
-
line: node
|
|
131
|
+
line: nodeStartLine(node),
|
|
132
132
|
endLine: nodeEndLine(node),
|
|
133
133
|
});
|
|
134
134
|
const body = node.childForFieldName('body');
|
|
@@ -145,8 +145,8 @@ function extractJavaInterfaceMethods(body, ifaceName, ctx) {
|
|
|
145
145
|
ctx.definitions.push({
|
|
146
146
|
name: `${ifaceName}.${methName.text}`,
|
|
147
147
|
kind: 'method',
|
|
148
|
-
line: child
|
|
149
|
-
endLine: child
|
|
148
|
+
line: nodeStartLine(child),
|
|
149
|
+
endLine: nodeEndLine(child),
|
|
150
150
|
});
|
|
151
151
|
}
|
|
152
152
|
}
|
|
@@ -160,7 +160,7 @@ function handleJavaEnumDecl(node, ctx) {
|
|
|
160
160
|
ctx.definitions.push({
|
|
161
161
|
name: nameNode.text,
|
|
162
162
|
kind: 'enum',
|
|
163
|
-
line: node
|
|
163
|
+
line: nodeStartLine(node),
|
|
164
164
|
endLine: nodeEndLine(node),
|
|
165
165
|
children: enumChildren.length > 0 ? enumChildren : undefined,
|
|
166
166
|
});
|
|
@@ -178,7 +178,7 @@ function handleJavaMethodDecl(node, ctx) {
|
|
|
178
178
|
ctx.definitions.push({
|
|
179
179
|
name: fullName,
|
|
180
180
|
kind: 'method',
|
|
181
|
-
line: node
|
|
181
|
+
line: nodeStartLine(node),
|
|
182
182
|
endLine: nodeEndLine(node),
|
|
183
183
|
children: params.length > 0 ? params : undefined,
|
|
184
184
|
visibility: extractModifierVisibility(node),
|
|
@@ -194,7 +194,7 @@ function handleJavaConstructorDecl(node, ctx) {
|
|
|
194
194
|
ctx.definitions.push({
|
|
195
195
|
name: fullName,
|
|
196
196
|
kind: 'method',
|
|
197
|
-
line: node
|
|
197
|
+
line: nodeStartLine(node),
|
|
198
198
|
endLine: nodeEndLine(node),
|
|
199
199
|
children: params.length > 0 ? params : undefined,
|
|
200
200
|
visibility: extractModifierVisibility(node),
|
|
@@ -206,12 +206,7 @@ function handleJavaImportDecl(node, ctx) {
|
|
|
206
206
|
if (child && (child.type === 'scoped_identifier' || child.type === 'identifier')) {
|
|
207
207
|
const fullPath = child.text;
|
|
208
208
|
const lastName = lastPathSegment(fullPath, '.');
|
|
209
|
-
ctx
|
|
210
|
-
source: fullPath,
|
|
211
|
-
names: [lastName],
|
|
212
|
-
line: node.startPosition.row + 1,
|
|
213
|
-
javaImport: true,
|
|
214
|
-
});
|
|
209
|
+
pushImport(ctx, node, fullPath, [lastName], { javaImport: true });
|
|
215
210
|
}
|
|
216
211
|
if (child && child.type === 'asterisk') {
|
|
217
212
|
const lastImport = ctx.imports[ctx.imports.length - 1];
|
|
@@ -225,24 +220,26 @@ function handleJavaMethodInvocation(node, ctx) {
|
|
|
225
220
|
if (!nameNode)
|
|
226
221
|
return;
|
|
227
222
|
const obj = node.childForFieldName('object');
|
|
228
|
-
|
|
229
|
-
if (obj)
|
|
230
|
-
call.receiver = obj.text;
|
|
231
|
-
ctx.calls.push(call);
|
|
223
|
+
pushCall(ctx, node, nameNode.text, obj ? { receiver: obj.text } : {});
|
|
232
224
|
}
|
|
233
225
|
function handleJavaLocalVarDecl(node, ctx) {
|
|
234
226
|
const typeNode = node.childForFieldName('type');
|
|
235
227
|
if (!typeNode)
|
|
236
228
|
return;
|
|
237
|
-
const typeName = typeNode
|
|
229
|
+
const typeName = resolveJavaTypeText(typeNode);
|
|
238
230
|
if (!typeName)
|
|
239
231
|
return;
|
|
240
232
|
for (let i = 0; i < node.childCount; i++) {
|
|
241
233
|
const child = node.child(i);
|
|
242
234
|
if (child?.type === 'variable_declarator') {
|
|
243
235
|
const nameNode = child.childForFieldName('name');
|
|
244
|
-
|
|
245
|
-
|
|
236
|
+
// Use direct Map.set (last-wins) for local variable declarations.
|
|
237
|
+
// Local variable types are method-scoped and should override any
|
|
238
|
+
// prior entry (e.g. a same-named constructor parameter). Using
|
|
239
|
+
// setTypeMapEntry (first-wins on tie) would let a constructor
|
|
240
|
+
// parameter type block a local variable's more-specific concrete type.
|
|
241
|
+
if (nameNode && ctx.typeMap)
|
|
242
|
+
ctx.typeMap.set(nameNode.text, { type: typeName, confidence: 0.9 });
|
|
246
243
|
}
|
|
247
244
|
}
|
|
248
245
|
}
|
|
@@ -250,9 +247,17 @@ function handleJavaObjectCreation(node, ctx) {
|
|
|
250
247
|
const typeNode = node.childForFieldName('type');
|
|
251
248
|
if (!typeNode)
|
|
252
249
|
return;
|
|
253
|
-
const typeName = typeNode
|
|
250
|
+
const typeName = resolveJavaTypeText(typeNode);
|
|
254
251
|
if (typeName)
|
|
255
|
-
ctx
|
|
252
|
+
pushCall(ctx, node, typeName);
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Resolve a Java type node's text, unwrapping `generic_type` to its base name.
|
|
256
|
+
* Used wherever we need the bare type identifier (local var decls, object
|
|
257
|
+
* creation, parameter types).
|
|
258
|
+
*/
|
|
259
|
+
function resolveJavaTypeText(typeNode) {
|
|
260
|
+
return typeNode.type === 'generic_type' ? typeNode.child(0)?.text : typeNode.text;
|
|
256
261
|
}
|
|
257
262
|
const JAVA_PARENT_TYPES = [
|
|
258
263
|
'class_declaration',
|
|
@@ -263,30 +268,13 @@ function findJavaParentClass(node) {
|
|
|
263
268
|
return findParentNode(node, JAVA_PARENT_TYPES);
|
|
264
269
|
}
|
|
265
270
|
// ── Child extraction helpers ────────────────────────────────────────────────
|
|
271
|
+
const JAVA_PARAM_TYPES = ['formal_parameter', 'spread_parameter'];
|
|
266
272
|
function extractJavaParameters(paramListNode, typeMap) {
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
if (!param)
|
|
273
|
-
continue;
|
|
274
|
-
if (param.type === 'formal_parameter' || param.type === 'spread_parameter') {
|
|
275
|
-
const nameNode = param.childForFieldName('name');
|
|
276
|
-
if (nameNode) {
|
|
277
|
-
params.push({ name: nameNode.text, kind: 'parameter', line: param.startPosition.row + 1 });
|
|
278
|
-
if (typeMap) {
|
|
279
|
-
const typeNode = param.childForFieldName('type');
|
|
280
|
-
if (typeNode) {
|
|
281
|
-
const typeName = typeNode.type === 'generic_type' ? typeNode.child(0)?.text : typeNode.text;
|
|
282
|
-
if (typeName)
|
|
283
|
-
typeMap.set(nameNode.text, { type: typeName, confidence: 0.9 });
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
return params;
|
|
273
|
+
return extractSimpleParameters(paramListNode, {
|
|
274
|
+
paramTypes: JAVA_PARAM_TYPES,
|
|
275
|
+
typeMap,
|
|
276
|
+
resolveType: resolveJavaTypeText,
|
|
277
|
+
});
|
|
290
278
|
}
|
|
291
279
|
function extractClassFields(classNode) {
|
|
292
280
|
const fields = [];
|
|
@@ -313,7 +301,7 @@ function extractFieldDeclarators(member, fields) {
|
|
|
313
301
|
fields.push({
|
|
314
302
|
name: nameNode.text,
|
|
315
303
|
kind: 'property',
|
|
316
|
-
line: member
|
|
304
|
+
line: nodeStartLine(member),
|
|
317
305
|
visibility: vis,
|
|
318
306
|
});
|
|
319
307
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"java.js","sourceRoot":"","sources":["../../src/extractors/java.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"java.js","sourceRoot":"","sources":["../../src/extractors/java.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,uBAAuB,EACvB,SAAS,EACT,cAAc,EACd,eAAe,EACf,WAAW,EACX,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAoB,EAAE,SAAiB;IACxE,MAAM,GAAG,GAAoB;QAC3B,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,IAAI,GAAG,EAAE;KACnB,CAAC;IAEF,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CAAC,IAAoB,EAAE,GAAoB;IAC9D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,mBAAmB;YACtB,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/B,MAAM;QACR,KAAK,uBAAuB;YAC1B,uBAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,kBAAkB;YACrB,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC9B,MAAM;QACR,KAAK,oBAAoB;YACvB,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAChC,MAAM;QACR,KAAK,yBAAyB;YAC5B,yBAAyB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,oBAAoB;YACvB,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAChC,MAAM;QACR,KAAK,mBAAmB;YACtB,0BAA0B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACtC,MAAM;QACR,KAAK,4BAA4B;YAC/B,wBAAwB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACpC,MAAM;QACR,KAAK,4BAA4B;YAC/B,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM;IACV,CAAC;IAED,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,KAAK;YAAE,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,+EAA+E;AAE/E,SAAS,mBAAmB,CAAC,IAAoB,EAAE,GAAoB;IACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC/C,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC;QAC1B,QAAQ,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;KAC/D,CAAC,CAAC;IAEH,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAEhD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACxD,IAAI,UAAU,EAAE,CAAC;QACf,qBAAqB,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,qBAAqB,CAC5B,IAAoB,EACpB,SAAiB,EACjB,GAAoB;IAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU;QAAE,OAAO;IACxB,MAAM,SAAS,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,SAAS,EAAE,CAAC;QACd,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,qBAAqB,CAAC,UAA0B;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;AAExF,iFAAiF;AACjF,SAAS,oBAAoB,CAAC,IAAoB;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,gEAAgE;AAChE,SAAS,aAAa,CACpB,IAAoB,EACpB,SAAiB,EACjB,IAAY,EACZ,GAAoB;IAEpB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO;IACjD,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,SAAS;QAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,qBAAqB,CAC5B,UAA0B,EAC1B,SAAiB,EACjB,IAAY,EACZ,GAAoB;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK;YAAE,SAAS;QAErB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC;oBAAE,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAoB,EAAE,GAAoB;IACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,IAAI;QAAE,2BAA2B,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAClE,CAAC;AAED,8DAA8D;AAC9D,SAAS,2BAA2B,CAClC,IAAoB,EACpB,SAAiB,EACjB,GAAoB;IAEpB,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,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;oBACnB,IAAI,EAAE,GAAG,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE;oBACrC,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;oBAC1B,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC;iBAC5B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAoB,EAAE,GAAoB;IACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,YAAY,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAChD,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC;QAC1B,QAAQ,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAoB,EAAE,GAAoB;IACtE,oEAAoE;IACpE,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,KAAK,uBAAuB;QAAE,OAAO;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACjF,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACxF,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAChD,UAAU,EAAE,yBAAyB,CAAC,IAAI,CAAC;KAC5C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAoB,EAAE,GAAoB;IAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACjF,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACxF,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAChD,UAAU,EAAE,yBAAyB,CAAC,IAAI,CAAC;KAC5C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAoB,EAAE,GAAoB;IACtE,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,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;YACjF,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;YAC5B,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAChD,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvD,IAAI,UAAU;gBAAE,UAAU,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAoB,EAAE,GAAoB;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC7C,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAoB,EAAE,GAAoB;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,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,KAAK,EAAE,IAAI,KAAK,qBAAqB,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACjD,kEAAkE;YAClE,iEAAiE;YACjE,+DAA+D;YAC/D,8DAA8D;YAC9D,uEAAuE;YACvE,IAAI,QAAQ,IAAI,GAAG,CAAC,OAAO;gBACzB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAoB,EAAE,GAAoB;IAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,QAAQ;QAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,QAAwB;IACnD,OAAO,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AACpF,CAAC;AAED,MAAM,iBAAiB,GAAG;IACxB,mBAAmB;IACnB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AACX,SAAS,mBAAmB,CAAC,IAAoB;IAC/C,OAAO,cAAc,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;AACjD,CAAC;AAED,+EAA+E;AAE/E,MAAM,gBAAgB,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAU,CAAC;AAE3E,SAAS,qBAAqB,CAC5B,aAAoC,EACpC,OAAmC;IAEnC,OAAO,uBAAuB,CAAC,aAAa,EAAE;QAC5C,UAAU,EAAE,gBAAgB;QAC5B,OAAO;QACP,WAAW,EAAE,mBAAmB;KACjC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAyB;IACnD,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,IAAI,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACvF,IAAI,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB;YAAE,SAAS;QAC7D,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,uEAAuE;AACvE,SAAS,uBAAuB,CAAC,MAAsB,EAAE,MAAwB;IAC/E,MAAM,GAAG,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB;YAAE,SAAS;QAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC;gBAC3B,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAwB;IACpD,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;AAC1F,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../src/extractors/javascript.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKV,eAAe,EAIf,eAAe,EACf,cAAc,EAEf,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../src/extractors/javascript.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKV,eAAe,EAIf,eAAe,EACf,cAAc,EAEf,MAAM,aAAa,CAAC;AAmErB;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,eAAe,GACtB,eAAe,CAGjB"}
|