tiny.machine.fabric.transition
Defined in fabric.
API (13)
Actions
Public operations.
Types and contracts
Public types and contracts.
AdmissionEffectViewAdmissionRecordViewAdmissionViewErrorFaultViewInspectViewSettlementViewValueViewWire
Values and defaults
Public values and defaults.
Source
Source: lib/machine/src/fabric/transition/inspect.zig:60
pub const Admission = struct { node: fabric.NodeId, record: AdmissionRecord, effect: AdmissionEffect, fault_value: ?Fault,};Source: lib/machine/src/fabric/transition/inspect.zig:47
pub const AdmissionEffect = union(enum) { direct, packet_send: PacketSend, packet_delivery: u64,};Source: lib/machine/src/fabric/transition/inspect.zig:30
pub const AdmissionRecord = union(enum) { terminal: Terminal, virtual_time: VirtualTime, entropy: Entropy, effect_result: EffectResult,};Source: lib/machine/src/fabric/transition/inspect.zig:53
pub const Fault = struct { kind: fault.Kind, choice: fault.Choice, primary: u64 = 0, secondary: u64 = 0,};Source: lib/machine/src/fabric/transition/inspect.zig:67
Source: lib/machine/src/fabric/transition/inspect.zig:71
pub const Value = union(enum) { admission: Admission, settlement: Settlement, fault: Fault,};Source: lib/machine/src/fabric/transition/inspect.zig:77
pub const View = struct { previous: fabric.Root, result: fabric.Root, sequence: u64, value: Value,};Source: lib/machine/src/fabric/transition/codec.zig:11
pub fn encodeDisjoint( before: *const fabric.Fabric, value: *const fabric.Transition, writer: *std.Io.Writer,) Error!void { try validateSink(before, value, writer); var bytes: [stream_bytes]u8 = undefined; try encode.transition(before, value, &bytes); try writer.writeAll(&bytes);}Source: lib/machine/src/fabric/transition/codec.zig:22
pub fn replayDisjoint( owner: *fabric.Fabric, reader: *std.Io.Reader, expected_root: fabric.Root,) Error!fabric.Transition { try validateSource(owner, reader); var bytes: [stream_bytes]u8 = undefined; try readExact(reader, &bytes); var trailing: [1]u8 = undefined; if (try reader.readSliceShort(&trailing) != 0) return error.TrailingData; const decoded = try decode.transition(&bytes, owner, expected_root); owner.* = decoded.owner; std.debug.assert(std.meta.eql(owner.root(), expected_root)); return decoded.value;}Source: lib/machine/src/fabric/transition/inspect.zig:84
pub fn inspect( input: *const [schema.stream_bytes]u8,) transition_types.Error!View { try decode.validateEnvelope(input); const kind = input[schema.Header.kind_offset]; try decode.validateReserved(input, kind); return .{ .previous = try decode.decodeRoot(input, schema.Header.previous_offset), .result = try decode.decodeRoot(input, schema.Header.result_offset), .sequence = decode.get64(input, schema.Header.sequence_offset), .value = switch (kind) { 1 => .{ .admission = try inspectAdmission(input) }, 2 => .{ .settlement = inspectSettlement(input) }, 3 => .{ .fault = try inspectFault( input, schema.Header.limit + schema.Fault.effect_offset, schema.Header.limit + schema.Fault.decision_offset, ) }, else => return error.UnknownTransitionField, }, };}Source: lib/machine/src/fabric/transition/schema.zig:11
pub const stream_bytes: usize = 1024;Source: lib/machine/src/fabric/transition/types.zig:23
pub const Error = TransitionError || fabric.Error || std.Io.Reader.ShortError || std.Io.Writer.Error;Source: lib/machine/src/fabric/root.zig:6
pub const transition = @import("transition/root.zig");Source: lib/machine/src/fabric/transition/root.zig
const codec = @import("codec.zig");const inspect_owner = @import("inspect.zig");pub const Error = codec.Error;pub const AdmissionEffectView = inspect_owner.AdmissionEffect;pub const AdmissionRecordView = inspect_owner.AdmissionRecord;pub const AdmissionView = inspect_owner.Admission;pub const FaultView = inspect_owner.Fault;pub const InspectView = inspect_owner.View;pub const SettlementView = inspect_owner.Settlement;pub const ValueView = inspect_owner.Value;pub const Wire = [codec.stream_bytes]u8;pub const encodeDisjoint = codec.encodeDisjoint;pub const inspect = inspect_owner.inspect;pub const replayDisjoint = codec.replayDisjoint;pub const stream_bytes = codec.stream_bytes;Audit
| Definitions | 14 |
|---|---|
| Public names | 14 |
| Members | 23 |
| Version | 26.7.0 |
| Revision | daab053ee433 |