Module dscord.bot.plugin

Base class for creating plugins the Bot can load/unload.

Functions

Name Description
Synced UDA which tells StateSyncable that a member attribute should be synced into the state on plugin load/unload.

Classes

Name Description
Plugin A Plugin represents a modular, extendable class that encapsulates certain Bot functionality into a logical slice. Plugins usually have a set of commands and listeners attached to them, and are built to be dynamically loaded/reloaded into a Bot.
PluginOptions PluginOptions is a class that can be used to configure the base functionality and utilties in use by a plugin.
PluginState PluginState is a class the encapsulates all run-time state required for a plugin to exist. It's purpose is to allow for hot-reloading and replacing of plugin code, without destroy/rebuilding run-time data.

Structs

Name Description
SyncedAttribute Sentinel for @Synced attributes

Templates

Name Description
StateSyncable The StateSyncable template is an implementation which handles the syncing of member attributes into are PluginState.custom store during plugin load/unload. This allows plugin developers to simply attach the @Synced UDA to any attributes they wish to be stored, and then call stateLoad and stateUnload in the plugin load/unload functions.