mirror of
https://github.com/morluto/rea.git
synced 2026-11-03 21:36:13 +00:00
refactor(javascript): retire synchronous artifact graph runner
This commit is contained in:
1 parent
798450638e
commit
8c6cddcffb
9 files changed
+43
-51
No files matched your search
@@ -1,7 +1,6 @@
|
||||
import { ELECTRON_IDENTITY_LIMITATION } from "../../domain/javascript/javascriptElectronMemberWrites.js";
|
||||
import type { ArtifactInventorySnapshot } from "../../domain/artifactInventorySnapshot.js";
|
||||
import {
|
||||
createJavaScriptApplicationGraph,
|
||||
sealTransferredJavaScriptApplicationGraphSteps,
|
||||
type JavaScriptApplicationGraph,
|
||||
} from "../../domain/javascript/javascriptApplicationGraph.js";
|
||||
@@ -50,18 +49,6 @@ import {
|
||||
collectElectronIpcRecords,
|
||||
} from "./ElectronBoundaryAnalysis.js";
|
||||
|
||||
/** Project artifact and AST facts into JavaScript Application Graph. */
|
||||
export const buildJavaScriptArtifactGraph = (
|
||||
snapshot: ArtifactInventorySnapshot,
|
||||
fileSet: JavaScriptArtifactFileSet,
|
||||
analysis: JavaScriptModuleArtifactAnalysis,
|
||||
): JavaScriptApplicationGraph =>
|
||||
createJavaScriptApplicationGraph(
|
||||
completeSynchronously(
|
||||
buildJavaScriptArtifactGraphInputSteps(snapshot, fileSet, analysis),
|
||||
),
|
||||
);
|
||||
|
||||
/**
|
||||
* Build a validated application graph with cooperative immutable ownership.
|
||||
* Constructing the graph input also runs in steps: projecting every module
|
||||
@@ -81,13 +68,6 @@ export function* buildImmutableJavaScriptArtifactGraphSteps(
|
||||
return yield* sealTransferredJavaScriptApplicationGraphSteps(input);
|
||||
}
|
||||
|
||||
const completeSynchronously = <Value>(steps: Iterator<void, Value>): Value => {
|
||||
for (;;) {
|
||||
const step = steps.next();
|
||||
if (step.done === true) return step.value;
|
||||
}
|
||||
};
|
||||
|
||||
function* buildJavaScriptArtifactGraphInputSteps(
|
||||
snapshot: ArtifactInventorySnapshot,
|
||||
fileSet: JavaScriptArtifactFileSet,
|
||||
|
||||
Reference in new issue
Block a user