@antelopejs/core 1.13.5 → 1.15.0
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/dist/core/build/build-artifact.d.ts +3 -1
- package/dist/core/build/build-artifact.js.map +1 -1
- package/dist/core/config/config-editor.d.ts +8 -0
- package/dist/core/config/config-editor.js +227 -0
- package/dist/core/config/config-editor.js.map +1 -0
- package/dist/core/config/config-loader.d.ts +1 -1
- package/dist/core/config/config-loader.js +4 -3
- package/dist/core/config/config-loader.js.map +1 -1
- package/dist/core/config/config-parser.d.ts +2 -0
- package/dist/core/config/config-parser.js +19 -1
- package/dist/core/config/config-parser.js.map +1 -1
- package/dist/core/config/config-writes.d.ts +2 -0
- package/dist/core/config/config-writes.js +24 -0
- package/dist/core/config/config-writes.js.map +1 -0
- package/dist/core/config/module-declarations.d.ts +4 -0
- package/dist/core/config/module-declarations.js +99 -0
- package/dist/core/config/module-declarations.js.map +1 -0
- package/dist/core/config/module-entry.d.ts +12 -0
- package/dist/core/config/module-entry.js +3 -0
- package/dist/core/config/module-entry.js.map +1 -0
- package/dist/core/embedded/prepare-embedded.js +5 -4
- package/dist/core/embedded/prepare-embedded.js.map +1 -1
- package/dist/core/embedded/types.d.ts +1 -0
- package/dist/core/interface-registry.d.ts +2 -2
- package/dist/core/interface-registry.js +19 -12
- package/dist/core/interface-registry.js.map +1 -1
- package/dist/core/module-isolation.d.ts +18 -0
- package/dist/core/module-isolation.js +107 -0
- package/dist/core/module-isolation.js.map +1 -0
- package/dist/core/module-manager.d.ts +21 -1
- package/dist/core/module-manager.js +199 -22
- package/dist/core/module-manager.js.map +1 -1
- package/dist/core/module-manifest.d.ts +1 -0
- package/dist/core/module-manifest.js +34 -0
- package/dist/core/module-manifest.js.map +1 -1
- package/dist/core/module-registry.d.ts +1 -0
- package/dist/core/module-registry.js +3 -0
- package/dist/core/module-registry.js.map +1 -1
- package/dist/core/module.d.ts +1 -3
- package/dist/core/module.js +0 -18
- package/dist/core/module.js.map +1 -1
- package/dist/core/resolution/binding-diagnostics.d.ts +30 -0
- package/dist/core/resolution/binding-diagnostics.js +65 -0
- package/dist/core/resolution/binding-diagnostics.js.map +1 -0
- package/dist/core/resolution/binding-graph-order.d.ts +3 -0
- package/dist/core/resolution/binding-graph-order.js +49 -0
- package/dist/core/resolution/binding-graph-order.js.map +1 -0
- package/dist/core/resolution/binding-graph-types.d.ts +46 -0
- package/dist/core/resolution/binding-graph-types.js +3 -0
- package/dist/core/resolution/binding-graph-types.js.map +1 -0
- package/dist/core/resolution/binding-graph-warnings.d.ts +11 -0
- package/dist/core/resolution/binding-graph-warnings.js +73 -0
- package/dist/core/resolution/binding-graph-warnings.js.map +1 -0
- package/dist/core/resolution/binding-graph.d.ts +2 -0
- package/dist/core/resolution/binding-graph.js +375 -0
- package/dist/core/resolution/binding-graph.js.map +1 -0
- package/dist/core/resolution/binding-providers.d.ts +11 -0
- package/dist/core/resolution/binding-providers.js +47 -0
- package/dist/core/resolution/binding-providers.js.map +1 -0
- package/dist/core/resolution/instance-copies.d.ts +5 -0
- package/dist/core/resolution/instance-copies.js +109 -0
- package/dist/core/resolution/instance-copies.js.map +1 -0
- package/dist/core/resolution/interface-dependencies.d.ts +1 -0
- package/dist/core/resolution/interface-dependencies.js +27 -0
- package/dist/core/resolution/interface-dependencies.js.map +1 -0
- package/dist/core/resolution/interface-instances.d.ts +28 -0
- package/dist/core/resolution/interface-instances.js +188 -0
- package/dist/core/resolution/interface-instances.js.map +1 -0
- package/dist/core/resolution/resolver-detour.js +14 -22
- package/dist/core/resolution/resolver-detour.js.map +1 -1
- package/dist/core/resolution/resolver.d.ts +30 -72
- package/dist/core/resolution/resolver.js +201 -659
- package/dist/core/resolution/resolver.js.map +1 -1
- package/dist/core/runtime/build-runtime.d.ts +1 -1
- package/dist/core/runtime/build-runtime.js +11 -1
- package/dist/core/runtime/build-runtime.js.map +1 -1
- package/dist/core/runtime/dev-server-registry.js +1 -1
- package/dist/core/runtime/dev-server-registry.js.map +1 -1
- package/dist/core/runtime/launch-sequence.js +30 -5
- package/dist/core/runtime/launch-sequence.js.map +1 -1
- package/dist/core/runtime/module-loading.d.ts +2 -1
- package/dist/core/runtime/module-loading.js +88 -26
- package/dist/core/runtime/module-loading.js.map +1 -1
- package/dist/core/runtime/project-launch.js +13 -2
- package/dist/core/runtime/project-launch.js.map +1 -1
- package/dist/core/runtime/runtime-types.d.ts +2 -1
- package/package.json +3 -3
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.InterfaceInstances = void 0;
|
|
7
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
+
const node_crypto_1 = require("node:crypto");
|
|
9
|
+
const instance_copies_1 = require("./instance-copies");
|
|
10
|
+
const package_resolution_1 = require("./package-resolution");
|
|
11
|
+
const NODE_MODULES = "node_modules";
|
|
12
|
+
const INSTANCES_FOLDER = ".ajs-instances";
|
|
13
|
+
const KEY_HASH_LENGTH = 16;
|
|
14
|
+
function evictFolder(folder) {
|
|
15
|
+
const isInFolder = (0, package_resolution_1.createPathWithinMatcher)(folder);
|
|
16
|
+
for (const filePath of Object.keys(require.cache)) {
|
|
17
|
+
if (isInFolder(filePath)) {
|
|
18
|
+
delete require.cache[filePath];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function hashKey(key) {
|
|
23
|
+
return (0, node_crypto_1.createHash)("sha256")
|
|
24
|
+
.update(key)
|
|
25
|
+
.digest("hex")
|
|
26
|
+
.slice(0, KEY_HASH_LENGTH);
|
|
27
|
+
}
|
|
28
|
+
function nearestNodeModules(folder) {
|
|
29
|
+
let current = folder;
|
|
30
|
+
while (node_path_1.default.dirname(current) !== current) {
|
|
31
|
+
if (node_path_1.default.basename(current) === NODE_MODULES) {
|
|
32
|
+
return current;
|
|
33
|
+
}
|
|
34
|
+
current = node_path_1.default.dirname(current);
|
|
35
|
+
}
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
function relocate(filePath, from, to) {
|
|
39
|
+
const relative = node_path_1.default.relative(from, filePath);
|
|
40
|
+
if (relative.startsWith("..") || node_path_1.default.isAbsolute(relative)) {
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
return node_path_1.default.join(to, relative);
|
|
44
|
+
}
|
|
45
|
+
class InterfaceInstances {
|
|
46
|
+
onRootsChanged;
|
|
47
|
+
onDispose;
|
|
48
|
+
descriptors = new Map();
|
|
49
|
+
keysByPackage = new Map();
|
|
50
|
+
canonical = new Map();
|
|
51
|
+
fixedRoots = new Map();
|
|
52
|
+
canonicalOwners = new Map();
|
|
53
|
+
copies = new Map();
|
|
54
|
+
prunedAnchors = new Set();
|
|
55
|
+
constructor(onRootsChanged, onDispose = () => undefined) {
|
|
56
|
+
this.onRootsChanged = onRootsChanged;
|
|
57
|
+
this.onDispose = onDispose;
|
|
58
|
+
}
|
|
59
|
+
update(graph, canonical, fixedRoots = new Map()) {
|
|
60
|
+
const previous = this.descriptors;
|
|
61
|
+
const previousFixedRoots = this.fixedRoots;
|
|
62
|
+
const previousCanonical = this.canonical;
|
|
63
|
+
this.canonical = new Map(canonical);
|
|
64
|
+
this.fixedRoots = new Map(fixedRoots);
|
|
65
|
+
this.descriptors = new Map([...graph.instances].filter(([, { interfaceName }]) => canonical.has(interfaceName)));
|
|
66
|
+
this.releaseUnreached(previous, previousFixedRoots, previousCanonical);
|
|
67
|
+
this.keysByPackage = new Map();
|
|
68
|
+
for (const [key, { interfaceName }] of this.descriptors) {
|
|
69
|
+
const keys = this.keysByPackage.get(interfaceName) ?? [];
|
|
70
|
+
keys.push(key);
|
|
71
|
+
this.keysByPackage.set(interfaceName, keys.sort());
|
|
72
|
+
}
|
|
73
|
+
this.assignCanonicalOwners();
|
|
74
|
+
this.onRootsChanged();
|
|
75
|
+
}
|
|
76
|
+
assignCanonicalOwners() {
|
|
77
|
+
for (const [packageName, keys] of this.keysByPackage) {
|
|
78
|
+
const owner = this.canonicalOwners.get(packageName);
|
|
79
|
+
if (owner && keys.includes(owner)) {
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
const free = keys.find((key) => !this.copies.has(key));
|
|
83
|
+
if (free) {
|
|
84
|
+
this.canonicalOwners.set(packageName, free);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
this.canonicalOwners.delete(packageName);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
describe(key) {
|
|
92
|
+
return this.descriptors.get(key);
|
|
93
|
+
}
|
|
94
|
+
keysOf(packageName) {
|
|
95
|
+
return this.keysByPackage.get(packageName) ?? [];
|
|
96
|
+
}
|
|
97
|
+
isCanonical(key) {
|
|
98
|
+
const descriptor = this.descriptors.get(key);
|
|
99
|
+
return (descriptor !== undefined &&
|
|
100
|
+
this.canonicalOwners.get(descriptor.interfaceName) === key);
|
|
101
|
+
}
|
|
102
|
+
rootOf(key) {
|
|
103
|
+
const descriptor = this.descriptors.get(key);
|
|
104
|
+
const canonical = descriptor && this.canonical.get(descriptor.interfaceName);
|
|
105
|
+
if (!descriptor || !canonical) {
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
const fixed = this.fixedRoots.get(key);
|
|
109
|
+
if (fixed) {
|
|
110
|
+
return fixed;
|
|
111
|
+
}
|
|
112
|
+
if (this.isCanonical(key)) {
|
|
113
|
+
return canonical.realRoot;
|
|
114
|
+
}
|
|
115
|
+
return (this.copies.get(key)?.root ?? this.createCopy(key, descriptor, canonical));
|
|
116
|
+
}
|
|
117
|
+
locate(key, canonicalFile) {
|
|
118
|
+
const descriptor = this.descriptors.get(key);
|
|
119
|
+
const canonical = descriptor && this.canonical.get(descriptor.interfaceName);
|
|
120
|
+
const root = this.rootOf(key);
|
|
121
|
+
if (!canonical || !root) {
|
|
122
|
+
return undefined;
|
|
123
|
+
}
|
|
124
|
+
return (relocate(canonicalFile, canonical.realRoot, root) ??
|
|
125
|
+
relocate(canonicalFile, canonical.root, root));
|
|
126
|
+
}
|
|
127
|
+
roots() {
|
|
128
|
+
const roots = new Map();
|
|
129
|
+
for (const [key, { interfaceName }] of this.descriptors) {
|
|
130
|
+
const root = this.fixedRoots.get(key) ??
|
|
131
|
+
(this.isCanonical(key)
|
|
132
|
+
? this.canonical.get(interfaceName)?.realRoot
|
|
133
|
+
: this.copies.get(key)?.root);
|
|
134
|
+
if (root) {
|
|
135
|
+
roots.set(key, root);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return roots;
|
|
139
|
+
}
|
|
140
|
+
releaseUnreached(previous, previousFixedRoots, previousCanonical) {
|
|
141
|
+
for (const [key, { interfaceName }] of previous) {
|
|
142
|
+
if (this.descriptors.has(key)) {
|
|
143
|
+
continue;
|
|
144
|
+
}
|
|
145
|
+
const copy = this.copies.get(key);
|
|
146
|
+
if (copy) {
|
|
147
|
+
evictFolder(copy.generation);
|
|
148
|
+
(0, instance_copies_1.removeInstanceCopy)(copy.generation);
|
|
149
|
+
this.copies.delete(key);
|
|
150
|
+
}
|
|
151
|
+
else if (this.canonicalOwners.get(interfaceName) === key) {
|
|
152
|
+
this.canonicalOwners.delete(interfaceName);
|
|
153
|
+
const root = previousCanonical.get(interfaceName)?.realRoot;
|
|
154
|
+
if (root && !previousFixedRoots.has(key)) {
|
|
155
|
+
evictFolder(root);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
this.onDispose(key);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
release() {
|
|
162
|
+
for (const { generation } of this.copies.values()) {
|
|
163
|
+
evictFolder(generation);
|
|
164
|
+
(0, instance_copies_1.removeInstanceCopy)(generation);
|
|
165
|
+
}
|
|
166
|
+
this.copies.clear();
|
|
167
|
+
this.canonicalOwners.clear();
|
|
168
|
+
this.onRootsChanged();
|
|
169
|
+
}
|
|
170
|
+
createCopy(key, descriptor, canonical) {
|
|
171
|
+
const anchor = nearestNodeModules(canonical.realRoot) ??
|
|
172
|
+
node_path_1.default.dirname(canonical.realRoot);
|
|
173
|
+
const instancesFolder = node_path_1.default.join(anchor, INSTANCES_FOLDER);
|
|
174
|
+
if (!this.prunedAnchors.has(instancesFolder)) {
|
|
175
|
+
(0, instance_copies_1.pruneStaleInstanceCopies)(instancesFolder);
|
|
176
|
+
this.prunedAnchors.add(instancesFolder);
|
|
177
|
+
}
|
|
178
|
+
const base = node_path_1.default.join(instancesFolder, hashKey(key));
|
|
179
|
+
const generation = (0, instance_copies_1.nextInstanceCopyPath)(base);
|
|
180
|
+
const root = node_path_1.default.join(generation, NODE_MODULES, ...descriptor.interfaceName.split("/"));
|
|
181
|
+
(0, instance_copies_1.createInstanceCopy)(canonical.realRoot, root);
|
|
182
|
+
this.copies.set(key, { root, generation });
|
|
183
|
+
this.onRootsChanged();
|
|
184
|
+
return root;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
exports.InterfaceInstances = InterfaceInstances;
|
|
188
|
+
//# sourceMappingURL=interface-instances.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interface-instances.js","sourceRoot":"","sources":["../../../src/core/resolution/interface-instances.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,29 +66,22 @@ class ResolverDetourCoordinator {
|
|
|
66
66
|
}
|
|
67
67
|
load(request, parent, isMain) {
|
|
68
68
|
const activeResolver = this.findResolver(request, parent);
|
|
69
|
-
|
|
69
|
+
const instance = activeResolver?.instanceToLoad(request, parent);
|
|
70
|
+
if (!activeResolver || !instance) {
|
|
70
71
|
return this.originalLoader?.(request, parent, isMain);
|
|
71
72
|
}
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
const resolvedPath = this.resolveWith(activeResolver, request, parent, isMain, undefined);
|
|
74
|
+
const entry = activeResolver.entryToPrime(request, parent, resolvedPath);
|
|
75
|
+
activeResolver.recordInstanceFile(instance, resolvedPath);
|
|
76
|
+
if (entry) {
|
|
77
|
+
activeResolver.recordInstanceFile(instance, entry);
|
|
75
78
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
: activeResolver.bindProviderRoutes(result, value);
|
|
83
|
-
}
|
|
84
|
-
primeInterfaceEntry(resolver, result, resolvedPath, parent, isMain) {
|
|
85
|
-
const entryResult = resolver.getInterfaceEntryToPrime(result, resolvedPath);
|
|
86
|
-
if (!entryResult) {
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
const entryPath = this.resolveResult(resolver, entryResult, parent, isMain, undefined);
|
|
90
|
-
const value = resolver.runInInterfaceContext(entryResult, () => this.originalLoader?.(entryPath, parent, isMain));
|
|
91
|
-
resolver.bindProviderRoutes(entryResult, value);
|
|
79
|
+
return activeResolver.runInInstance(instance, () => {
|
|
80
|
+
if (entry) {
|
|
81
|
+
this.originalLoader?.(entry, parent, isMain);
|
|
82
|
+
}
|
|
83
|
+
return this.originalLoader?.(resolvedPath, parent, isMain);
|
|
84
|
+
});
|
|
92
85
|
}
|
|
93
86
|
resolve(request, parent, isMain, options) {
|
|
94
87
|
const activeResolver = this.findResolver(request, parent);
|
|
@@ -104,8 +97,7 @@ class ResolverDetourCoordinator {
|
|
|
104
97
|
resolveResult(activeResolver, result, parent, isMain, options) {
|
|
105
98
|
const contextParent = this.createResolutionParent(parent, result.resolveFrom);
|
|
106
99
|
const resolvedPath = this.originalResolver?.(result.resolvedPath, contextParent, isMain, options);
|
|
107
|
-
activeResolver.
|
|
108
|
-
return resolvedPath;
|
|
100
|
+
return activeResolver.locate(result, resolvedPath);
|
|
109
101
|
}
|
|
110
102
|
createResolutionParent(parent, resolveFrom) {
|
|
111
103
|
if (!resolveFrom) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver-detour.js","sourceRoot":"","sources":["../../../src/core/resolution/resolver-detour.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resolver-detour.js","sourceRoot":"","sources":["../../../src/core/resolution/resolver-detour.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { PathMapper } from "./path-mapper";
|
|
2
2
|
import type { ModuleManifest } from "../module-manifest";
|
|
3
|
+
import type { BindingGraph } from "./binding-graph-types";
|
|
4
|
+
import { InterfaceInstances } from "./interface-instances";
|
|
3
5
|
export interface ModuleRef {
|
|
4
6
|
id: string;
|
|
5
7
|
manifest: ModuleManifest;
|
|
@@ -10,11 +12,9 @@ interface ResolverParent {
|
|
|
10
12
|
export interface ResolveResult {
|
|
11
13
|
resolvedPath: string;
|
|
12
14
|
resolveFrom?: string;
|
|
13
|
-
|
|
14
|
-
sharedExports?: boolean;
|
|
15
|
-
interfaceName?: string;
|
|
16
|
-
provider?: string;
|
|
15
|
+
instance?: string;
|
|
17
16
|
}
|
|
17
|
+
export declare function connectionPath(index: number, packageName: string): string;
|
|
18
18
|
export declare class Resolver {
|
|
19
19
|
private pathMapper;
|
|
20
20
|
readonly moduleByFolder: Map<string, ModuleRef>;
|
|
@@ -25,79 +25,37 @@ export declare class Resolver {
|
|
|
25
25
|
readonly lifecycleInterfacePackages: Set<string>;
|
|
26
26
|
readonly stubbedInterfacePackages: Set<string>;
|
|
27
27
|
stubModulePath?: string;
|
|
28
|
-
|
|
29
|
-
private
|
|
30
|
-
private readonly
|
|
31
|
-
private readonly
|
|
32
|
-
private readonly interfaceDependencies;
|
|
33
|
-
private readonly boundValues;
|
|
34
|
-
private readonly routedEvents;
|
|
35
|
-
private readonly proxyOwners;
|
|
36
|
-
private readonly providerlessContexts;
|
|
37
|
-
private readonly sharedInterfaceContexts;
|
|
38
|
-
private readonly interfaceBodyContexts;
|
|
39
|
-
private readonly interfaceBodySharedContexts;
|
|
40
|
-
private readonly sharedContexts;
|
|
41
|
-
private readonly sharedStubInterfaces;
|
|
42
|
-
private readonly adoptedContexts;
|
|
43
|
-
private readonly stubbedContexts;
|
|
28
|
+
readonly instances: InterfaceInstances;
|
|
29
|
+
private bindings?;
|
|
30
|
+
private readonly instanceFiles;
|
|
31
|
+
private readonly owners;
|
|
44
32
|
constructor(pathMapper: PathMapper);
|
|
33
|
+
setBindings(graph: BindingGraph): void;
|
|
45
34
|
resolve(request: string, parent?: ResolverParent): ResolveResult | undefined;
|
|
35
|
+
locate(result: ResolveResult, resolvedPath: string): string;
|
|
46
36
|
ownsResolutionContext(_request: string, parent?: ResolverParent): boolean;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
37
|
+
instanceToLoad(request: string, parent?: ResolverParent): string | undefined;
|
|
38
|
+
recordInstanceFile(instance: string, filePath: string): void;
|
|
39
|
+
runInInstance<T>(instance: string, load: () => T): T;
|
|
40
|
+
loadInstance(instance: string): string | undefined;
|
|
41
|
+
entryToPrime(request: string, parent: ResolverParent | undefined, resolvedPath: string): string | undefined;
|
|
42
|
+
private instanceEntry;
|
|
53
43
|
getInterfaceGraphRoot(filePath: string): string | undefined;
|
|
54
|
-
|
|
44
|
+
releaseInstances(): void;
|
|
55
45
|
clearCache(): void;
|
|
56
|
-
private
|
|
57
|
-
private
|
|
58
|
-
private
|
|
59
|
-
private bindKnownRoutes;
|
|
60
|
-
private bindRoute;
|
|
46
|
+
private retireInstance;
|
|
47
|
+
private canonicalPackages;
|
|
48
|
+
private fixedRoots;
|
|
61
49
|
private resolveInterfaceCore;
|
|
62
|
-
private
|
|
63
|
-
private
|
|
64
|
-
private
|
|
65
|
-
private
|
|
66
|
-
private
|
|
67
|
-
private
|
|
68
|
-
private
|
|
69
|
-
private
|
|
70
|
-
private
|
|
71
|
-
private
|
|
72
|
-
private findRequestedInterface;
|
|
73
|
-
private findInterfacePackageRequest;
|
|
74
|
-
private findInterfacePackageByPath;
|
|
75
|
-
private listInterfacePackageRoots;
|
|
76
|
-
private bindInterfaceValue;
|
|
77
|
-
private bindPassedValue;
|
|
78
|
-
private needsFacade;
|
|
79
|
-
private holdsFacadeMember;
|
|
80
|
-
private bindStubbedInterfaceValue;
|
|
81
|
-
private getBindingContext;
|
|
82
|
-
private getSharedInterfaceContext;
|
|
83
|
-
private getInterfaceBodyContext;
|
|
84
|
-
private createInterfaceBodyContext;
|
|
85
|
-
private effectiveContext;
|
|
86
|
-
private getAdoptedContext;
|
|
87
|
-
private adoptedProvider;
|
|
88
|
-
private chainProviderRoutes;
|
|
89
|
-
private getProviderlessContext;
|
|
90
|
-
private filterStubbedProviderRoutes;
|
|
91
|
-
private isBindableValue;
|
|
92
|
-
private isClass;
|
|
93
|
-
private createObjectFacade;
|
|
94
|
-
private bindObjectFunction;
|
|
95
|
-
private createFunctionFacade;
|
|
96
|
-
private bindFunctionResult;
|
|
97
|
-
private getRoutedEvent;
|
|
98
|
-
private bindRoutedEvent;
|
|
99
|
-
private createEventFacade;
|
|
100
|
-
private resolveLocalModule;
|
|
101
|
-
private listModuleRoots;
|
|
50
|
+
private resolveInterfaceRequest;
|
|
51
|
+
private canonicalRequest;
|
|
52
|
+
private findInterfacePackage;
|
|
53
|
+
private contextOwner;
|
|
54
|
+
private scopeOf;
|
|
55
|
+
private instanceScope;
|
|
56
|
+
private describeOwner;
|
|
57
|
+
private instanceFor;
|
|
58
|
+
private connectionInstance;
|
|
59
|
+
private listOwnerRoots;
|
|
102
60
|
}
|
|
103
61
|
export {};
|