ExecutionPlane.Placements.Surface (execution_plane v0.1.0)

Copy Markdown View Source

Narrow execution-surface contract for process placement and runtime routing.

Summary

Types

t()

@type t() :: %ExecutionPlane.Placements.Surface{
  boundary_class: String.t() | atom() | nil,
  contract_version: String.t(),
  lease_ref: String.t() | nil,
  observability: map(),
  surface_kind: String.t(),
  surface_ref: String.t() | nil,
  target_id: String.t() | nil,
  transport_options: map()
}

Functions

capabilities(surface)

@spec capabilities(String.t() | atom() | map() | keyword() | t() | nil) ::
  {:ok, ExecutionPlane.Placements.Capabilities.t()} | {:error, term()}

contract_version()

@spec contract_version() :: String.t()

new(surface)

@spec new(map() | keyword() | t()) :: {:ok, t()} | {:error, term()}

new!(attrs)

@spec new!(map() | keyword() | t()) :: t()

nonlocal_path_surface?(surface)

@spec nonlocal_path_surface?(String.t() | atom() | map() | keyword() | t() | nil) ::
  boolean()

path_semantics(surface)

@spec path_semantics(String.t() | atom() | map() | keyword() | t() | nil) ::
  :local | :remote | :guest | nil

placement_family(surface)

@spec placement_family(String.t() | atom() | map() | keyword() | t() | nil) ::
  String.t() | nil

remote_surface?(surface)

@spec remote_surface?(String.t() | atom() | map() | keyword() | t() | nil) ::
  boolean()

supported_surface_kinds()

@spec supported_surface_kinds() :: [String.t(), ...]

to_map(surface)

@spec to_map(t()) :: map()