def general

bendvy-ecs-core@0.1.0.3 · execution_relation_failure_provider.bend:32

import bendvy-ecs-core@0.1.0.3/execution_relation_failure_provider.bend as ExecutionRelationFailureProvider
import Base
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/execution_resource_policy.bend as Policy
import bendvy-ecs-core@0.1.0.3/execution_relation_store.bend as Store
import bendvy-ecs-core@0.1.0.3/execution_relation_failure_access.bend as Access
import bendvy-ecs-core@0.1.0.3/execution_state.bend as State
import bendvy-ecs-core@0.1.0.3/relation_types.bend as T
import bendvy-ecs-core@0.1.0.3/execution_resource_interpreter.bend as Interpreter

32# Exact payload/view/policy witnesses come from the closed declaration.
33def general(~S:Data,~C:Type,~R:Type,~full:Layout.Layout,~route:Layout.Route,~valid:{Layout.grant_valid(~full,~route) == True{} : Bool},~descriptor:T.Descriptor<S>,~payload:{Layout.payload(full,route) == Store.Store<S,descriptor> : Type},~view:{Layout.view(full,route) == Store.View<S,descriptor> : Data},~protected:{Layout.policy(full,route) == Policy.ProtectedRelation{S,descriptor} : Policy.Policy},~local:{R == Layout.resources(~S,full) : Type}) -> Access.Read<S,descriptor,full,route,State.Scope<S,C,R>>:
34  Access.Read{reader => scope => cached_read(~S,~descriptor,~full,~route,~C,~R,view_reader(~S,~descriptor,~State.Scope<S,C,R>,~Layout.view(full,route),view,Interpreter.read_caps(~S,~C,~R,~full,~route,local)),reader,scope)}

Uses (17)

Used by (1)