리플렉션

리플렉션

export 26개

reflect()가 모듈에서 복원해 내는 것들입니다. 바인드 그룹과 바이트 레이아웃, 진입점이 여기 있습니다.

시그니처, 설명, 예제는 커밋 26de7be8의 컴파일러 소스에서 그대로 가져온 영어 원문입니다.

BindEntry 인터페이스
One resource slot in a reflected bind group: the shape of a single WGSL @group(G) @binding(B) var<space> name: T declaration, or of the sampler uniform or std140 block the GLSL ES 3.00 backend emits for it.
BindGroup 인터페이스
The bind entries of one WGSL @group(N), sorted by binding.
EntryInfo 인터페이스
One @vertex, @fragment or @compute entry point: its stage, its parameter and return types as DSL type keys (the strings typeKey returns), and, for a @compute entry only, its workgroup size, which defaults to 64 when the entry declares none, matching the WGSL backend's own default.
EntryIo 인터페이스
One entry point's @location and @builtin interface: the shape a host validates a vertex/fragment pair against, builds a GPUVertexState from, or diffs as a pipeline contract.
EntryIoField 인터페이스
One field of an entry point's stage interface: a @location(n) varying, vertex attribute or fragment draw buffer, or a @builtin(name) slot.
EntryReach 인터페이스
What a set of entry points transitively reaches, as returned by reachFrom.
ExternRequirement 인터페이스
One host-provided global a module expects, declared with externVar.
FieldLayout 인터페이스
One struct field's byte layout: its name, its DSL type key (the string typeKey returns), and its offset, align and size in bytes under the LayoutKind the enclosing StructLayout was computed with.
LayoutKind 타입
The byte-layout rule a struct's fields are placed under.
OverrideInfo 인터페이스
A pipeline specialization constant the host supplies when it creates a pipeline.
Pack 인터페이스
The serialisable result of buildManifest: see there.
PackBinding 인터페이스
One resource slot. name, space, group, binding, access and type are the fields packModule() has always given; the rest came with schema 1.
PackEntry 인터페이스
A shader entry point. name and stage are the fields packModule() has always given.
packJson 함수
packModule already stringified, pretty-printed at two spaces, the form a build step writes to disk or embeds in a generated module.
packModule 함수
The compiled module's manifest: everything a host needs to create its pipelines and bind its resources, in one plain JSON object.
PackOptions 인터페이스
Everything packModule() adds on request.
reachFrom 함수
Walk the call graph from entries and collect what they reach.
reflect 함수
Recover a module's pipeline metadata from its IR.
Reflection 인터페이스
The target-neutral pipeline metadata reflect recovers from a module: bind-group layout, every bound struct's byte layout, the vertex-attribute layout if any (vertex), every entry point's signature (entries), specialization constants (overrides), the capabilities a host must activate before pipeline creation, and the host-provided globals the module expects (requires).
ReflectOptions 인터페이스
Options for reflect.
ResourceKind 타입
What a bind entry is at the host API, independent of the WGSL address space or type that declared it.
StructLayout 인터페이스
A struct's complete byte layout: its total size and align plus one FieldLayout per field, in declaration order.
typeLayout 함수
Size + alignment (bytes) of a host-shareable type under a layout.
VertexAttr 인터페이스
One @location-attributed parameter of the module's @vertex entry point.
VertexLayout 인터페이스
The vertex-buffer layout for a module's @vertex entry: every @location input and the interleaved, tightly packed arrayStride they fill.
wgslLayout 함수
Compute the byte layout of one struct under a LayoutKind: each field's offset, alignment and size, plus the struct's total size and alignment.

이 페이지 편집 문제 보고