Raxol.Core.Runtime.Plugins.PluginInitializer (Raxol Core v2.4.0)

Copy Markdown View Source

Handles initialization of plugins, including state setup and command registration.

Summary

Functions

handle_plugin_init(plugin, plugin_id, meta, sts, tbl, plugin_config)

Handles the initialization of a specific plugin.

initialize_plugin(plugin_id, arg, plugins, plugin_config)

@spec initialize_plugin(
  atom() | String.t(),
  {:ok, {map(), map(), map()}},
  map(),
  map()
) :: {:cont, {:ok, {map(), map(), map()}}} | {:halt, {:error, term()}}

Initializes a single plugin.

initialize_plugins(plugins, metadata, config, states, load_order, command_table, opts)

@spec initialize_plugins(
  map() | list(),
  map(),
  map() | nil,
  map(),
  list(),
  map() | atom() | reference(),
  keyword() | map() | nil
) :: {:ok, {map(), map(), map()}} | {:error, term()}

Initializes all plugins in the given load order.