@descryy/adapter-go 0.2.0 → 0.3.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/LICENSE +8 -0
- package/dist/adapter.d.ts +2 -5
- package/dist/adapter.d.ts.map +1 -1
- package/dist/adapter.js +36 -66
- package/dist/adapter.js.map +1 -1
- package/dist/client.d.ts +5 -73
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +11 -115
- package/dist/client.js.map +1 -1
- package/dist/extract.d.ts +3 -25
- package/dist/extract.d.ts.map +1 -1
- package/dist/extract.js +9 -79
- package/dist/extract.js.map +1 -1
- package/dist/parse.d.ts +12 -100
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +38 -150
- package/dist/parse.js.map +1 -1
- package/package.json +16 -7
package/dist/extract.js
CHANGED
|
@@ -1,29 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Go files to Canonical IR.
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* Files in one Go package share a namespace completely: an unqualified name in
|
|
7
|
-
* one file resolves to a declaration in another that never mentions it. So the
|
|
8
|
-
* resolver's first scope is not the file but the package, which is the opposite
|
|
9
|
-
* of Java and TypeScript, where a file must import what it uses.
|
|
10
|
-
*
|
|
11
|
-
* Identity is the easy half. A package's import path is a declared name that
|
|
12
|
-
* other code writes verbatim, so `qsp = importPath::Symbol` needs none of the
|
|
13
|
-
* anchor inference TypeScript needs (DEC-047) or the source-set disambiguation
|
|
14
|
-
* Java needs. Go states it.
|
|
15
|
-
*
|
|
16
|
-
* ## What is deliberately not claimed
|
|
17
|
-
*
|
|
18
|
-
* **Interface satisfaction.** Go's is structural: a type implements an interface
|
|
19
|
-
* by having the right methods, and nothing in the source says so. Computing it
|
|
20
|
-
* needs full method-set comparison, which is R3 evidence, and guessing it from
|
|
21
|
-
* name similarity would be exactly the kind of edge that corrupts every layer
|
|
22
|
-
* above. `IMPLEMENTS` is therefore never emitted, and `capabilities()` says so.
|
|
23
|
-
* Embedding *is* explicit and becomes `INHERITS`.
|
|
24
|
-
*
|
|
25
|
-
* `:=` with anything but a composite literal, dot imports, and any receiver that
|
|
26
|
-
* is not a written name all go to the ledger with their reason.
|
|
2
|
+
* Go files to Canonical IR. Package, not file, is the resolver's scope (files
|
|
3
|
+
* share a namespace completely). Import path is declared, so `qsp` needs no
|
|
4
|
+
* anchor inference (DEC-047). `IMPLEMENTS` never emitted — structural in Go.
|
|
27
5
|
*/
|
|
28
6
|
import { edgeId, endpointQsp, nodeId, normaliseEndpointPath, symbolQsp, testCaseQsp, } from "@descryy/ir";
|
|
29
7
|
import { isUniverse } from "./parse.js";
|
|
@@ -48,27 +26,7 @@ const REASONS = {
|
|
|
48
26
|
};
|
|
49
27
|
/** How many hops of `var A = B; var B = C` to follow before giving up. */
|
|
50
28
|
const ALIAS_PASSES = 4;
|
|
51
|
-
/**
|
|
52
|
-
* The namespace a file's declarations belong to.
|
|
53
|
-
*
|
|
54
|
-
* Usually the import path — but not always, and the exception is written down.
|
|
55
|
-
* Go's **external test package** is a second package living in the same
|
|
56
|
-
* directory: `package storage_test` beside `package storage`. It is a distinct
|
|
57
|
-
* namespace that must import its neighbour by path like anybody else, and it is
|
|
58
|
-
* legal for it to redeclare a name the neighbour already has.
|
|
59
|
-
*
|
|
60
|
-
* Treating the directory as the namespace collapsed both `contextDone` and
|
|
61
|
-
* `makeInt64Pointer` on prometheus — `promql/engine.go` and
|
|
62
|
-
* `promql/engine_test.go` each declare one, two different functions with one
|
|
63
|
-
* node id, and the build-constraint disclosure quietly absorbed the collision.
|
|
64
|
-
* That is the same defect the Java source-set anchoring fixed, arriving through
|
|
65
|
-
* a different door.
|
|
66
|
-
*
|
|
67
|
-
* The rule is Go's own, not a heuristic: an external test package exists only in
|
|
68
|
-
* `_test.go` files and only under a package clause ending in `_test`. Its name
|
|
69
|
-
* carries a `:test` suffix, which no import path can contain — so nothing else
|
|
70
|
-
* can ever name these symbols, which is exactly true of them.
|
|
71
|
-
*/
|
|
29
|
+
/** Usually the import path, except Go's external test package (`package storage_test`) is distinct — collapsing them lost `contextDone`/`makeInt64Pointer` on prometheus. */
|
|
72
30
|
function namespaceOf(unit) {
|
|
73
31
|
return unit.file.endsWith("_test.go") && unit.packageName.endsWith("_test")
|
|
74
32
|
? `${unit.importPath}:test`
|
|
@@ -109,24 +67,13 @@ export function extract(input) {
|
|
|
109
67
|
...(attrs === undefined ? {} : { attrs }),
|
|
110
68
|
});
|
|
111
69
|
};
|
|
112
|
-
// -------------------------------------------------------------------------
|
|
113
|
-
// Nodes
|
|
114
|
-
// -------------------------------------------------------------------------
|
|
115
70
|
const packages = new Map();
|
|
116
71
|
const moduleIdOf = new Map();
|
|
117
|
-
/**
|
|
118
|
-
* Node id -> the other files declaring that symbol under a different build
|
|
119
|
-
* constraint. Attached to the node afterwards, so the graph states that a
|
|
120
|
-
* choice was made rather than appearing to have found only one declaration.
|
|
121
|
-
*/
|
|
72
|
+
/** Node id -> other files declaring it under a different build constraint, disclosed on the node. */
|
|
122
73
|
const alternates = new Map();
|
|
123
74
|
/** Subtest -> its node id, for the second pass that emits its edges. */
|
|
124
75
|
const subtestIds = new Map();
|
|
125
|
-
/**
|
|
126
|
-
* Two `t.Run` calls with the same literal name under one test are legal and
|
|
127
|
-
* are two different subtests. `occurrence` keeps both instead of collapsing
|
|
128
|
-
* them, exactly as it does for a repeated `it("…")` title.
|
|
129
|
-
*/
|
|
76
|
+
/** Two `t.Run` calls sharing a literal name are two subtests; `occurrence` keeps both. */
|
|
130
77
|
const testOccurrence = new Map();
|
|
131
78
|
const describe = (unit) => unit.buildConstraint === undefined ? unit.file : `${unit.file} (//go:build ${unit.buildConstraint})`;
|
|
132
79
|
for (const unit of input.files) {
|
|
@@ -139,10 +86,7 @@ export function extract(input) {
|
|
|
139
86
|
packages.set(namespace, pkg);
|
|
140
87
|
}
|
|
141
88
|
pkg.files.push(unit);
|
|
142
|
-
//
|
|
143
|
-
// the package, but a fileless MODULE is not representable — the Normaliser
|
|
144
|
-
// requires a source file for every node type outside DEC-014's three — so
|
|
145
|
-
// the package lives in the qualified symbol path instead of in a node.
|
|
89
|
+
// File is the MODULE (as every adapter) — a fileless MODULE isn't representable (DEC-014's three exceptions).
|
|
146
90
|
const stem = unit.file.slice(unit.file.lastIndexOf("/") + 1).replace(/\.go$/, "");
|
|
147
91
|
const moduleId = nodeId(scope, "MODULE", symbolQsp(namespace, [stem]), LANGUAGE);
|
|
148
92
|
moduleIdOf.set(unit.file, moduleId);
|
|
@@ -159,12 +103,7 @@ export function extract(input) {
|
|
|
159
103
|
});
|
|
160
104
|
for (const type of unit.types) {
|
|
161
105
|
const id = nodeId(scope, "CLASS", symbolQsp(namespace, [type.name]), LANGUAGE);
|
|
162
|
-
//
|
|
163
|
-
// declarations sit behind mutually exclusive build constraints, which is
|
|
164
|
-
// legal and common: `gin` declares `Binding` in both `binding.go`
|
|
165
|
-
// (`!nomsgpack`) and `binding_nomsgpack.go` (`nomsgpack`). Exactly one is
|
|
166
|
-
// ever compiled and this adapter is not told which, so the symbol is one
|
|
167
|
-
// node and the alternatives are disclosed on it.
|
|
106
|
+
// Legal when behind mutually exclusive build constraints (`gin`'s `Binding`) — one node, alternatives disclosed.
|
|
168
107
|
const existing = pkg.types.get(type.name);
|
|
169
108
|
if (existing !== undefined) {
|
|
170
109
|
alternates.set(id, [...(alternates.get(id) ?? []), describe(unit)]);
|
|
@@ -227,9 +166,6 @@ export function extract(input) {
|
|
|
227
166
|
}
|
|
228
167
|
}
|
|
229
168
|
}
|
|
230
|
-
// -------------------------------------------------------------------------
|
|
231
|
-
// Resolution
|
|
232
|
-
// -------------------------------------------------------------------------
|
|
233
169
|
/** A written type name, split into its package qualifier and its own name. */
|
|
234
170
|
const split = (written) => {
|
|
235
171
|
const cut = written.indexOf(".");
|
|
@@ -436,9 +372,6 @@ export function extract(input) {
|
|
|
436
372
|
if (bound === 0)
|
|
437
373
|
break;
|
|
438
374
|
}
|
|
439
|
-
// -------------------------------------------------------------------------
|
|
440
|
-
// Edges
|
|
441
|
-
// -------------------------------------------------------------------------
|
|
442
375
|
/** The caller's half of the HTTP boundary, minted with the routes below. */
|
|
443
376
|
const clientCallSites = [];
|
|
444
377
|
for (const unit of input.files) {
|
|
@@ -687,10 +620,7 @@ export function extract(input) {
|
|
|
687
620
|
return node;
|
|
688
621
|
return { ...node, attrs: { ...node.attrs, buildConstrainedAlternates: others } };
|
|
689
622
|
});
|
|
690
|
-
//
|
|
691
|
-
// Routes — DEC-117. Last, because every ledger row is attributed to a MODULE
|
|
692
|
-
// that the pass above has already minted.
|
|
693
|
-
// -------------------------------------------------------------------------
|
|
623
|
+
// Routes (DEC-117), last: every ledger row attributes to a MODULE the pass above already minted.
|
|
694
624
|
const routeNodes = new Map();
|
|
695
625
|
const endpointNodes = new Map();
|
|
696
626
|
for (const unit of input.files) {
|
package/dist/extract.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"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"}
|
package/dist/parse.d.ts
CHANGED
|
@@ -1,23 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* One Go file, read into the shape
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* resolver needs and a query's match set is exactly what discards it.
|
|
6
|
-
*
|
|
7
|
-
* ## What Go changes, and what it does not
|
|
8
|
-
*
|
|
9
|
-
* The harness is untouched — the same `parserFor` / `parseText` / node cursor.
|
|
10
|
-
* What is new is a rule set, and Go's rules are genuinely different from Java's
|
|
11
|
-
* rather than a translation of them:
|
|
12
|
-
*
|
|
13
|
-
* - The importable unit is the **package**, not the file. Files in one package
|
|
14
|
-
* share a namespace with no qualification at all, so an unqualified name
|
|
15
|
-
* resolves across files that never mention each other.
|
|
16
|
-
* - A method is attached by a *receiver*, not by nesting: `func (o *Order)
|
|
17
|
-
* Describe()` declares a method on `Order` from anywhere in the package.
|
|
18
|
-
* - There is no inheritance. Embedding is the nearest thing and it is
|
|
19
|
-
* explicit; interface satisfaction is structural and invisible without a
|
|
20
|
-
* type checker, so it is not claimed at all.
|
|
2
|
+
* One Go file, read into the resolver's shape. Go differs from Java: unit is
|
|
3
|
+
* the **package** not the file; method attaches by *receiver*, not nesting;
|
|
4
|
+
* no inheritance — interface satisfaction is structural, not claimed here.
|
|
21
5
|
*/
|
|
22
6
|
import type { Node } from "@descryy/adapter-treesitter";
|
|
23
7
|
import { type GoRoute, type GoRouteRefusal } from "./routes.ts";
|
|
@@ -29,44 +13,19 @@ export interface GoRef {
|
|
|
29
13
|
readonly name: string;
|
|
30
14
|
/** `undefined` for an unqualified name, else the receiver as written. */
|
|
31
15
|
readonly receiver: string | undefined;
|
|
32
|
-
/**
|
|
33
|
-
* The receiver's type, when the *site itself* writes it down.
|
|
34
|
-
*
|
|
35
|
-
* `p.(*listPostings).Len()` and `(IndentedJSON{data}).Render(w)` both state
|
|
36
|
-
* the receiver's type at the point of use, so no inference is involved — the
|
|
37
|
-
* name is right there. Without this both collapsed to `(computed)`.
|
|
38
|
-
*/
|
|
16
|
+
/** Receiver type when the site itself writes it, e.g. `p.(*listPostings).Len()`. */
|
|
39
17
|
readonly receiverType?: string;
|
|
40
|
-
/**
|
|
41
|
-
* The call whose result is the receiver: `engine().RunUnix(file)`.
|
|
42
|
-
*
|
|
43
|
-
* The type is written down, in the callee's signature, which is the same
|
|
44
|
-
* evidence a `x, err := f()` binding rests on. Recorded here because parsing
|
|
45
|
-
* is per file and the callee may be in another one.
|
|
46
|
-
*/
|
|
18
|
+
/** Call whose result is the receiver: `engine().RunUnix(file)` — type is in the callee's signature. */
|
|
47
19
|
readonly receiverCall?: {
|
|
48
20
|
readonly receiver: string | undefined;
|
|
49
21
|
readonly name: string;
|
|
50
22
|
};
|
|
51
|
-
/**
|
|
52
|
-
* `xs` in `xs[i].M()` — the collection whose element is the receiver.
|
|
53
|
-
*
|
|
54
|
-
* The element type is written down, just not at the reference: it is in the
|
|
55
|
-
* declaration of `xs`. This was one of the two shapes DEC-081 named as still
|
|
56
|
-
* disclosed after the chained-receiver work.
|
|
57
|
-
*/
|
|
23
|
+
/** `xs` in `xs[i].M()` — element type is in `xs`'s declaration. DEC-081. */
|
|
58
24
|
readonly receiverIndex?: string;
|
|
59
25
|
readonly line: number;
|
|
60
26
|
readonly raw: string;
|
|
61
27
|
}
|
|
62
|
-
/**
|
|
63
|
-
* A name bound by `x, err := f(…)`, waiting for `f`'s declared result type.
|
|
64
|
-
*
|
|
65
|
-
* The type *is* written down — in the callee's signature rather than at the
|
|
66
|
-
* reference — so this is resolution, not inference. Parsing is per file and the
|
|
67
|
-
* callee may be in another one, so the binding is recorded here and resolved by
|
|
68
|
-
* the extractor once every package is known.
|
|
69
|
-
*/
|
|
28
|
+
/** `x, err := f(…)` waiting for `f`'s result type — resolution, not inference, resolved once every package is known. */
|
|
70
29
|
export interface PendingType {
|
|
71
30
|
/** The callee's qualifier as written, or `undefined` for an unqualified call. */
|
|
72
31
|
readonly receiver: string | undefined;
|
|
@@ -81,29 +40,10 @@ export interface GoScope {
|
|
|
81
40
|
readonly locals: Map<string, string | null>;
|
|
82
41
|
/** Names whose type is the result of a call, resolved later. */
|
|
83
42
|
readonly pending: Map<string, PendingType>;
|
|
84
|
-
/**
|
|
85
|
-
* Names declared in the function's own **input** parameter list — never a
|
|
86
|
-
* named return value, and never a plain local. DEC-242's `varies-per-call`
|
|
87
|
-
* needs exactly this: a call argument that is a bare input-parameter name
|
|
88
|
-
* is a caller-supplied value with no fixed answer to state; a local
|
|
89
|
-
* variable (or a named return, which starts at its zero value and may be
|
|
90
|
-
* reassigned) might still resolve to a constant.
|
|
91
|
-
*/
|
|
43
|
+
/** Input parameter names only, never a named return/local — DEC-242 `varies-per-call`. */
|
|
92
44
|
readonly parameterNames: Set<string>;
|
|
93
45
|
}
|
|
94
|
-
/**
|
|
95
|
-
* A `t.Run("name", func(t *testing.T) { … })` subtest.
|
|
96
|
-
*
|
|
97
|
-
* The second form `go test` collects, and the reason golden pattern 14 exists.
|
|
98
|
-
* A Go subtest is a **call**, not a declaration: the name is an argument and the
|
|
99
|
-
* body is a closure, so a rule that collects top-level `TestXxx` functions sees
|
|
100
|
-
* one test where the runner reports two and attributes everything the closure
|
|
101
|
-
* touches to the parent.
|
|
102
|
-
*
|
|
103
|
-
* Only a subtest whose name is a written string literal becomes one of these. A
|
|
104
|
-
* table-driven `t.Run(tc.name, …)` has no name anywhere in the source; its
|
|
105
|
-
* references stay with the parent test, which is coarser but true.
|
|
106
|
-
*/
|
|
46
|
+
/** A `t.Run("name", ...)` subtest, golden pattern 14 — a call, not a declaration. Only a literal name becomes one. */
|
|
107
47
|
export interface GoSubtest extends GoScope {
|
|
108
48
|
readonly name: string;
|
|
109
49
|
/** The enclosing test function, then any enclosing subtests. */
|
|
@@ -128,19 +68,7 @@ export interface GoFunc extends GoScope {
|
|
|
128
68
|
/** Recognised-but-refused outbound HTTP calls, each with its reason. */
|
|
129
69
|
readonly clientRefusals: readonly GoClientRefusalSite[];
|
|
130
70
|
}
|
|
131
|
-
/**
|
|
132
|
-
* A package-level name bound directly to a function declared elsewhere:
|
|
133
|
-
* `var ValidateOrder = validation.ValidateOrder`.
|
|
134
|
-
*
|
|
135
|
-
* Go has no `export … from`. This is its one construct that binds a name here to
|
|
136
|
-
* a function declared there **without** wrapping it in a second symbol, and it
|
|
137
|
-
* is the same thing `from .validation import validate_order` does in a Python
|
|
138
|
-
* `__init__.py`. Following it is what makes a call through a re-export terminate
|
|
139
|
-
* at the definition instead of at the re-exporting package (golden 03).
|
|
140
|
-
*
|
|
141
|
-
* Only a bare name or a `pkg.Name` is recorded — never a call, a literal or a
|
|
142
|
-
* composite. `var ErrX = errors.New(…)` is a value, not a binding.
|
|
143
|
-
*/
|
|
71
|
+
/** A name bound directly to a function elsewhere — Go's `export ... from`, so a re-export terminates at the definition (golden 03). */
|
|
144
72
|
export interface GoAlias {
|
|
145
73
|
readonly name: string;
|
|
146
74
|
/** `Name` or `pkg.Name`, exactly as written. */
|
|
@@ -174,14 +102,7 @@ export interface GoFile {
|
|
|
174
102
|
readonly funcs: GoFunc[];
|
|
175
103
|
/** Package-level re-export bindings declared in this file. */
|
|
176
104
|
readonly aliases: GoAlias[];
|
|
177
|
-
/**
|
|
178
|
-
* Package-level `var`/`const` names to their written type.
|
|
179
|
-
*
|
|
180
|
-
* `var JSON = jsonBinding{}` at package scope, then `JSON.Bind(req, &obj)` in
|
|
181
|
-
* another function — the second of DEC-081's two remaining shapes. Function
|
|
182
|
-
* scopes were tracked; package scope was not, so every reference through a
|
|
183
|
-
* package-level value read as an untyped receiver.
|
|
184
|
-
*/
|
|
105
|
+
/** Package-level `var`/`const` -> written type. DEC-081's second shape; package scope wasn't tracked before. */
|
|
185
106
|
readonly packageVars: Map<string, string>;
|
|
186
107
|
/** Route registrations read from this file — DEC-117. */
|
|
187
108
|
readonly routes: GoRoute[];
|
|
@@ -194,16 +115,7 @@ export interface GoFile {
|
|
|
194
115
|
readonly hasError: boolean;
|
|
195
116
|
/** Set by the adapter once the module path is known. */
|
|
196
117
|
readonly importPath: string;
|
|
197
|
-
/**
|
|
198
|
-
* The `//go:build` constraint, when the file carries one.
|
|
199
|
-
*
|
|
200
|
-
* Go lets several files in one package declare the *same* symbol under
|
|
201
|
-
* mutually exclusive constraints — `gin`'s `binding.go` and
|
|
202
|
-
* `binding_nomsgpack.go` both declare `Binding`, guarded by `!nomsgpack` and
|
|
203
|
-
* `nomsgpack`. Exactly one is ever compiled, and which one is a build-time
|
|
204
|
-
* choice this adapter is not given. Recorded so the collision it causes can be
|
|
205
|
-
* disclosed rather than silently resolved to whichever file was read last.
|
|
206
|
-
*/
|
|
118
|
+
/** `//go:build` constraint. Files can declare the same symbol under exclusive constraints; recorded to disclose the collision. */
|
|
207
119
|
readonly buildConstraint: string | undefined;
|
|
208
120
|
}
|
|
209
121
|
/** The `//go:build` line, which must appear before the package clause. */
|
package/dist/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"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"}
|