Service-to-service RPC binding metadata.
HostKit models the deployment wiring: which service exposes RPC modules and which other services are bound to them. Runtime protocols such as SafeRPC own exact operations, schemas, and handshakes.
Summary
Types
@type t() :: %HostKit.RPC{ bindings: [HostKit.RPC.Binding.t()], exposes: [HostKit.RPC.Exposure.t()] }
Functions
@spec add_binding(t(), HostKit.RPC.Binding.t()) :: t()
@spec add_exposure(t(), HostKit.RPC.Exposure.t()) :: t()
@spec apply_permissions(HostKit.Project.t(), [struct()]) :: [struct()]
@spec apply_runtime_bindings([struct()], HostKit.Project.t(), HostKit.Service.t()) :: [struct()]
@spec binding_resources( HostKit.Project.t(), keyword() ) :: [HostKit.Resources.File.t()]
@spec validate(HostKit.Project.t()) :: :ok | {:error, HostKit.Diagnostics.t()}