tiny.choir.ir.RegionKindInterface
Defined in ir.
API (7)
Actions
Public operations.
Types and contracts
Public types and contracts.
Values and defaults
Public values and defaults.
Source
Source: lib/choir/src/core/interfaces/ops.zig:1120
zig
pub const RegionKindInterface = struct { pub const interface_name = "ir.interface.region_kind"; pub const id: InterfaceId = base.interfaceId(interface_name); pub const VTable = struct { getRegionKind: *const fn (op: *const anyopaque, index: usize) RegionKind, hasSSADominance: *const fn (op: *const anyopaque, index: usize) bool, }; pub fn entry(vtable: *const VTable) InterfaceEntry { return .{ .id = id, .vtable = vtable }; } pub fn vtableFor( comptime getRegionKind: *const fn (op: *const anyopaque, index: usize) RegionKind, comptime hasSSADominance: *const fn (op: *const anyopaque, index: usize) bool, ) *const VTable { return &.{ .getRegionKind = getRegionKind, .hasSSADominance = hasSSADominance, }; } pub fn entryFor( comptime getRegionKind: *const fn (op: *const anyopaque, index: usize) RegionKind, comptime hasSSADominance: *const fn (op: *const anyopaque, index: usize) bool, ) InterfaceEntry { return entry(vtableFor(getRegionKind, hasSSADominance)); } fn graphRegionKind(_: *const anyopaque, _: usize) RegionKind { return .graph; } fn graphHasSSADominance(_: *const anyopaque, _: usize) bool { return false; } pub fn allGraphRegionsEntry() InterfaceEntry { return entry(vtableFor(graphRegionKind, graphHasSSADominance)); }};Source: lib/choir/src/core/root.zig:68
zig
pub const RegionKindInterface = interfaces.RegionKindInterface;Also reachable as
backends.wasm.emission.module_encoding.common.ir.RegionKindInterface, backends.wasm.emission.module_encoding.common.ir.interfaces.RegionKindInterface, ir.interfaces.RegionKindInterface.
Audit
| Definitions | 8 |
|---|---|
| Public names | 32 |
| Members | 2 |
| Version | 26.7.0 |
| Revision | daab053ee433 |