def FailureRead

bendvy-ecs-core@0.1.0.3 · execution_builder.bend:40

import bendvy-ecs-core@0.1.0.3/execution_builder.bend as ExecutionBuilder
import Base
import bendvy-ecs-core@0.1.0.3/execution_relation_failure_provider.bend as FailureProvider
import bendvy-ecs-core@0.1.0.3/execution_relation_failure_access.bend as FailureAccess
import bendvy-ecs-core@0.1.0.3/execution_relation_store.bend as RelationStore
import bendvy-ecs-core@0.1.0.3/execution_resource_policy.bend as Policy
import bendvy-ecs-core@0.1.0.3/relation_types.bend as T
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/execution_layout_access.bend as LayoutAccess

40def FailureRead(~S:Data,~C:Type,~R:Type,~H:Type,~B:Type) -> Type:
41  @-full:Layout.Layout -> @-route:Layout.Route -> @-valid:{Layout.grant_valid(~full,~route) == True{} : Bool} -> @-descriptor:T.Descriptor<S> -> @-payload:{Layout.payload(full,route) == RelationStore.Store<S,descriptor> : Type} -> @-view:{Layout.view(full,route) == RelationStore.View<S,descriptor> : Data} -> @-protected:{Layout.policy(full,route) == Policy.ProtectedRelation{S,descriptor} : Policy.Policy} -> @-local:Layout.Layout -> @-selected:Layout.Route -> @-same:{R == Layout.resources(~S,local) : Type} -> @-localvalid:{Layout.grant_valid(~local,~selected) == True{} : Bool} -> @-slot:{LayoutAccess.resource_slot(~S,local,selected) == FailureProvider.Slot(~S,~full,~route,~descriptor) : Type} -> B -> B & FailureAccess.Read<S,descriptor,full,route,H>

Uses (16)

Used by (3)