Skip to content

Commit 33ed91b

Browse files
Merge pull request #1663 from glimmerjs/internals/streamline-and-modernize-naming
Streamline and modernize naming
2 parents e7bcee4 + 505b8be commit 33ed91b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+840
-803
lines changed

packages/@glimmer-workspace/benchmark-env/lib/benchmark/create-registry.ts

+20-16
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import type {
55
InternalModifierManager,
66
ModifierDefinitionState,
77
ResolvedComponentDefinition,
8+
SimpleDocument,
89
SimpleElement,
910
} from '@glimmer/interfaces';
1011
import {
@@ -13,11 +14,13 @@ import {
1314
setInternalHelperManager,
1415
setInternalModifierManager,
1516
} from '@glimmer/manager';
16-
import { programCompilationContext } from '@glimmer/opcode-compiler';
17+
import { EvaluationContextImpl } from '@glimmer/opcode-compiler';
1718
import { artifacts, RuntimeOpImpl } from '@glimmer/program';
19+
import { runtimeContext } from '@glimmer/runtime';
1820

1921
import type { UpdateBenchmark } from '../interfaces';
2022

23+
import createEnvDelegate from './create-env-delegate';
2124
import renderBenchmark from './render-benchmark';
2225

2326
export interface Registry {
@@ -77,9 +80,15 @@ export default function createRegistry(): Registry {
7780
setInternalModifierManager(manager, modifier);
7881
modifiers.set(name, modifier);
7982
},
80-
render: (entry, args, element, isIteractive) => {
83+
render: (entry, args, element, isInteractive) => {
8184
const sharedArtifacts = artifacts();
82-
const context = programCompilationContext(
85+
const document = element.ownerDocument as SimpleDocument;
86+
const envDelegate = createEnvDelegate(isInteractive ?? true);
87+
const runtime = runtimeContext(
88+
{
89+
document,
90+
},
91+
envDelegate,
8392
sharedArtifacts,
8493
{
8594
lookupHelper: (name) => helpers.get(name) ?? null,
@@ -88,25 +97,20 @@ export default function createRegistry(): Registry {
8897

8998
lookupBuiltInHelper: () => null,
9099
lookupBuiltInModifier: () => null,
91-
},
92-
(heap) => new RuntimeOpImpl(heap)
100+
}
101+
);
102+
103+
const context = new EvaluationContextImpl(
104+
sharedArtifacts,
105+
(heap) => new RuntimeOpImpl(heap),
106+
runtime
93107
);
94108
const component = components.get(entry);
95109
if (!component) {
96110
throw new Error(`missing ${entry} component`);
97111
}
98112

99-
return renderBenchmark(
100-
sharedArtifacts,
101-
context,
102-
{
103-
lookupComponent: () => null,
104-
},
105-
component,
106-
args,
107-
element as SimpleElement,
108-
isIteractive
109-
);
113+
return renderBenchmark(context, component, args, element as SimpleElement);
110114
},
111115
};
112116
}

packages/@glimmer-workspace/benchmark-env/lib/benchmark/render-benchmark.ts

+8-23
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,32 @@
11
import type {
2-
CompileTimeCompilationContext,
32
Dict,
3+
EvaluationContext,
44
ResolvedComponentDefinition,
5-
RuntimeArtifacts,
6-
RuntimeResolver,
75
SimpleElement,
86
} from '@glimmer/interfaces';
9-
import { NewElementBuilder, renderComponent, renderSync, runtimeContext } from '@glimmer/runtime';
7+
import { NewTreeBuilder, renderComponent, renderSync } from '@glimmer/runtime';
108

119
import type { UpdateBenchmark } from '../interfaces';
1210

13-
import createEnvDelegate, { registerResult } from './create-env-delegate';
11+
import { registerResult } from './create-env-delegate';
1412
import { measureRender } from './util';
1513

1614
export default async function renderBenchmark(
17-
artifacts: RuntimeArtifacts,
18-
context: CompileTimeCompilationContext,
19-
runtimeResolver: RuntimeResolver,
15+
context: EvaluationContext,
2016
component: ResolvedComponentDefinition,
2117
args: Dict,
22-
element: SimpleElement,
23-
isInteractive = true
18+
element: SimpleElement
2419
): Promise<UpdateBenchmark> {
2520
let resolveRender: (() => void) | undefined;
2621

2722
await measureRender('render', 'renderStart', 'renderEnd', () => {
28-
const document = element.ownerDocument;
29-
const envDelegate = createEnvDelegate(isInteractive);
30-
const runtime = runtimeContext(
31-
{
32-
document,
33-
},
34-
envDelegate,
35-
artifacts,
36-
runtimeResolver
37-
);
38-
const env = runtime.env;
23+
const env = context.env;
3924
const cursor = { element, nextSibling: null };
40-
const treeBuilder = NewElementBuilder.forInitialRender(env, cursor);
25+
const treeBuilder = NewTreeBuilder.forInitialRender(env, cursor);
4126

4227
const result = renderSync(
4328
env,
44-
renderComponent(runtime, treeBuilder, context, {}, component.state, args)
29+
renderComponent(context, treeBuilder, {}, component.state, args)
4530
);
4631

4732
registerResult(result, () => {

packages/@glimmer-workspace/benchmark-env/lib/benchmark/util.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import type { CompileTimeCompilationContext, CompileTimeComponent } from '@glimmer/interfaces';
1+
import type { CompileTimeComponent, EvaluationContext } from '@glimmer/interfaces';
22
import { unwrapHandle } from '@glimmer/debug-util';
33

4-
export function compileEntry(entry: CompileTimeComponent, context: CompileTimeCompilationContext) {
4+
export function compileEntry(entry: CompileTimeComponent, context: EvaluationContext) {
55
return unwrapHandle(entry.compilable!.compile(context));
66
}
77

packages/@glimmer-workspace/integration-tests/lib/modes/jit/compilation-context.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type {
2-
CompileTimeResolver,
2+
ClassicResolver,
33
HelperDefinitionState,
44
ModifierDefinitionState,
55
Nullable,
@@ -8,7 +8,7 @@ import type {
88

99
import type { TestJitRuntimeResolver } from './resolver';
1010

11-
export default class JitCompileTimeLookup implements CompileTimeResolver {
11+
export default class JitCompileTimeLookup implements ClassicResolver {
1212
constructor(private resolver: TestJitRuntimeResolver) {}
1313

1414
lookupHelper(name: string): Nullable<HelperDefinitionState> {

packages/@glimmer-workspace/integration-tests/lib/modes/jit/delegate.ts

+20-25
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,26 @@
11
import type {
22
CapturedRenderNode,
3-
CompileTimeCompilationContext,
43
Cursor,
54
Dict,
65
DynamicScope,
7-
ElementBuilder,
86
ElementNamespace,
97
Environment,
8+
EvaluationContext,
109
HandleResult,
1110
Helper,
1211
Nullable,
1312
RenderResult,
14-
RuntimeContext,
1513
SimpleDocument,
1614
SimpleDocumentFragment,
1715
SimpleElement,
1816
SimpleText,
17+
TreeBuilder,
1918
} from '@glimmer/interfaces';
2019
import type { Reference } from '@glimmer/reference';
2120
import type { CurriedValue, EnvironmentDelegate } from '@glimmer/runtime';
2221
import type { ASTPluginBuilder, PrecompileOptions } from '@glimmer/syntax';
2322
import { castToBrowser, castToSimple, expect, unwrapTemplate } from '@glimmer/debug-util';
24-
import { programCompilationContext } from '@glimmer/opcode-compiler';
23+
import { EvaluationContextImpl } from '@glimmer/opcode-compiler';
2524
import { artifacts, RuntimeOpImpl } from '@glimmer/program';
2625
import { createConstRef } from '@glimmer/reference';
2726
import {
@@ -58,24 +57,20 @@ import { TestJitRegistry } from './registry';
5857
import { renderTemplate } from './render';
5958
import { TestJitRuntimeResolver } from './resolver';
6059

61-
export interface JitTestDelegateContext {
62-
runtime: RuntimeContext;
63-
program: CompileTimeCompilationContext;
64-
}
65-
6660
export function JitDelegateContext(
6761
doc: SimpleDocument,
6862
resolver: TestJitRuntimeResolver,
6963
env: EnvironmentDelegate
70-
): JitTestDelegateContext {
64+
): EvaluationContext {
7165
let sharedArtifacts = artifacts();
72-
let context = programCompilationContext(
66+
let runtime = runtimeContext(
67+
{ document: doc },
68+
env,
7369
sharedArtifacts,
74-
new JitCompileTimeLookup(resolver),
75-
(heap) => new RuntimeOpImpl(heap)
70+
new JitCompileTimeLookup(resolver)
7671
);
77-
let runtime = runtimeContext({ document: doc }, env, sharedArtifacts, resolver);
78-
return { runtime, program: context };
72+
73+
return new EvaluationContextImpl(sharedArtifacts, (heap) => new RuntimeOpImpl(heap), runtime);
7974
}
8075

8176
export class JitRenderDelegate implements RenderDelegate {
@@ -86,7 +81,7 @@ export class JitRenderDelegate implements RenderDelegate {
8681
protected resolver: TestJitRuntimeResolver;
8782

8883
private plugins: ASTPluginBuilder[] = [];
89-
private _context: JitTestDelegateContext | null = null;
84+
private _context: Nullable<EvaluationContext> = null;
9085
private self: Nullable<Reference> = null;
9186
private doc: SimpleDocument;
9287
private env: EnvironmentDelegate;
@@ -108,7 +103,7 @@ export class JitRenderDelegate implements RenderDelegate {
108103
this.registry.register('helper', 'concat', concat);
109104
}
110105

111-
get context(): JitTestDelegateContext {
106+
get context(): EvaluationContext {
112107
if (this._context === null) {
113108
this._context = JitDelegateContext(this.doc, this.resolver, this.env);
114109
}
@@ -118,7 +113,7 @@ export class JitRenderDelegate implements RenderDelegate {
118113

119114
getCapturedRenderTree(): CapturedRenderNode[] {
120115
return expect(
121-
this.context.runtime.env.debugRenderTree,
116+
this.context.env.debugRenderTree,
122117
'Attempted to capture the DebugRenderTree during tests, but it was not created. Did you enable it in the environment?'
123118
).capture();
124119
}
@@ -191,7 +186,7 @@ export class JitRenderDelegate implements RenderDelegate {
191186
registerInternalHelper(this.registry, name, helper);
192187
}
193188

194-
getElementBuilder(env: Environment, cursor: Cursor): ElementBuilder {
189+
getElementBuilder(env: Environment, cursor: Cursor): TreeBuilder {
195190
return clientBuilder(env, cursor);
196191
}
197192

@@ -206,13 +201,13 @@ export class JitRenderDelegate implements RenderDelegate {
206201
compileTemplate(template: string): HandleResult {
207202
let compiled = preprocess(template, this.precompileOptions);
208203

209-
return unwrapTemplate(compiled).asLayout().compile(this.context.program);
204+
return unwrapTemplate(compiled).asLayout().compile(this.context);
210205
}
211206

212207
renderTemplate(template: string, context: Dict<unknown>, element: SimpleElement): RenderResult {
213208
let cursor = { element, nextSibling: null };
214209

215-
let { env } = this.context.runtime;
210+
let { env } = this.context;
216211

217212
return renderTemplate(
218213
template,
@@ -230,11 +225,11 @@ export class JitRenderDelegate implements RenderDelegate {
230225
dynamicScope?: DynamicScope
231226
): RenderResult {
232227
let cursor = { element, nextSibling: null };
233-
let { program, runtime } = this.context;
234-
let builder = this.getElementBuilder(runtime.env, cursor);
235-
let iterator = renderComponent(runtime, builder, program, {}, component, args, dynamicScope);
228+
let { env } = this.context;
229+
let builder = this.getElementBuilder(env, cursor);
230+
let iterator = renderComponent(this.context, builder, {}, component, args, dynamicScope);
236231

237-
return renderSync(runtime.env, iterator);
232+
return renderSync(env, iterator);
238233
}
239234

240235
private get precompileOptions(): PrecompileOptions {
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,20 @@
1-
import type { ElementBuilder, RenderResult } from '@glimmer/interfaces';
1+
import type { EvaluationContext, RenderResult, TreeBuilder } from '@glimmer/interfaces';
22
import type { Reference } from '@glimmer/reference';
33
import type { PrecompileOptions } from '@glimmer/syntax';
44
import { unwrapTemplate } from '@glimmer/debug-util';
55
import { renderMain, renderSync } from '@glimmer/runtime';
66

7-
import type { JitTestDelegateContext } from './delegate';
8-
97
import { preprocess } from '../../compile';
108

119
export function renderTemplate(
1210
src: string,
13-
{ runtime, program }: JitTestDelegateContext,
11+
context: EvaluationContext,
1412
self: Reference,
15-
builder: ElementBuilder,
13+
builder: TreeBuilder,
1614
options?: PrecompileOptions
1715
): RenderResult {
1816
let template = preprocess(src, options);
1917

20-
let iterator = renderMain(
21-
runtime,
22-
program,
23-
{},
24-
self,
25-
builder,
26-
unwrapTemplate(template).asLayout()
27-
);
28-
return renderSync(runtime.env, iterator);
18+
let iterator = renderMain(context, {}, self, builder, unwrapTemplate(template).asLayout());
19+
return renderSync(context.env, iterator);
2920
}

packages/@glimmer-workspace/integration-tests/lib/modes/jit/resolver.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
import type {
2+
ClassicResolver,
23
HelperDefinitionState,
34
ModifierDefinitionState,
45
Nullable,
56
ResolvedComponentDefinition,
6-
RuntimeResolver,
77
} from '@glimmer/interfaces';
88

99
import type { TestJitRegistry } from './registry';
1010

11-
export class TestJitRuntimeResolver implements RuntimeResolver {
11+
export class TestJitRuntimeResolver implements ClassicResolver {
1212
constructor(private registry: TestJitRegistry) {}
1313

1414
lookupHelper(name: string): Nullable<HelperDefinitionState> {

packages/@glimmer-workspace/integration-tests/lib/modes/rehydration/builder.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { Cursor, ElementBuilder, Environment, SimpleNode } from '@glimmer/interfaces';
1+
import type { Cursor, Environment, SimpleNode, TreeBuilder } from '@glimmer/interfaces';
22
import { COMMENT_NODE, ELEMENT_NODE } from '@glimmer/constants';
33
import { RehydrateBuilder } from '@glimmer/runtime';
44

@@ -23,6 +23,6 @@ export class DebugRehydrationBuilder extends RehydrateBuilder {
2323
}
2424
}
2525

26-
export function debugRehydration(env: Environment, cursor: Cursor): ElementBuilder {
26+
export function debugRehydration(env: Environment, cursor: Cursor): TreeBuilder {
2727
return DebugRehydrationBuilder.forInitialRender(env, cursor);
2828
}

0 commit comments

Comments
 (0)