def snapshot_checked
bendvy-ecs-core@0.1.0.3 · execution_relation_failure_access.bend:53
import bendvy-ecs-core@0.1.0.3/execution_relation_failure_access.bend as ExecutionRelationFailureAccess
import Base
import bendvy-ecs-core@0.1.0.3/relation_types.bend as T
import bendvy-ecs-core@0.1.0.3/execution_relation_failure_channel.bend as Reader
import bendvy-ecs-core@0.1.0.3/execution_relation_failure_message.bend as Failure
import bendvy-ecs-core@0.1.0.3/execution_stream_channel.bend as Channel
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
53
54
55def snapshot_checked(~S:Data,~descriptor:T.Descriptor<S>,~full:Layout.Layout,~route:Layout.Route,allowed:Bool,namespace:U32,sequence:Nat,tick:Tick.Tick,reader:Reader.Reader<S,descriptor,full,route>,channel:Channel.Store<Failure.Message<S,descriptor>>) -> Reader.Reading<S,descriptor,full,route>:
56 match allowed:
57 case False{}:Reader.Refused{reader}
58 case True{}:snapshot_result(~S,~descriptor,~full,~route,Reader.read(~S,~descriptor,~full,~route,namespace,sequence,tick,reader,channel))