AsyncApiSpex.Channel (async_api_spex v0.1.0)

Copy Markdown View Source

A channel: a topic, exchange and routing key, subject, or any other address a message is sent to or received from.

address is nil when the address is computed at runtime and cannot be described statically; in that case parameters must be empty. messages maps a channel-local key to a message, which may be a %AsyncApiSpex.Message{}, a %AsyncApiSpex.Reference{}, or a module that exports __async_api_message__/0 (moved into components.messages by AsyncApiSpex.resolve/1).

Summary

Types

t()

@type t() :: %AsyncApiSpex.Channel{
  address: String.t() | nil,
  bindings: map() | nil,
  description: String.t() | nil,
  extensions: map(),
  messages: %{
    optional(String.t()) =>
      AsyncApiSpex.Message.t() | AsyncApiSpex.Reference.t() | module()
  },
  parameters: %{optional(String.t()) => AsyncApiSpex.Parameter.t()},
  servers: [AsyncApiSpex.Reference.t()] | nil,
  summary: String.t() | nil,
  tags: [AsyncApiSpex.Tag.t()] | nil,
  title: String.t() | nil
}