def resource_schema
bendvy-ecs-core@0.1.0.4 · ordinary_binding_provision.bend:131
import bendvy-ecs-core@0.1.0.4/ordinary_binding_provision.bend as OrdinaryBindingProvision
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/ordinary_schema.bend as Schema
import bendvy-ecs-core@0.1.0.4/schema_fragments.bend as Fragment
import bendvy-ecs-core@0.1.0.4/ordinary_schema_provision.bend as Ordinary
import bendvy-ecs-core@0.1.0.4/ordinary_schema_dump.bend as Dump
131
132
133
134def resource_schema(~S:Data,~C:Type,~R:Type,~empty:Unit -> C,~count:C -> List<&2,W.Handle<S>> -> C & List<&2,Maybe<&2,U32>>,~read:C -> U32 -> C & List<&2,Maybe<&2,String>>,~before:Unit -> Unit & List<&2,Maybe<&2,String>>,~show:R -> R & String,schema:Schema.Schema<S,Unit,R>,base:Dump.Provision<S,C,Unit,empty,count,read,before>) -> Dump.Provision<S,C,R,empty,resource_count(~S,~C,~count),resource_values(~C,~read),resources(~R,~before,~show)>:
135 match schema base:
136 case Schema.Schema{added} Dump.Provision{Ordinary.Provision{Schema.Schema{entries}}}:Dump.Provision{Ordinary.Provision{Schema.Schema{List.append(&2,Fragment.Entry<S>,entries,added)}}}