ToolDelta ICU

loader

attributeloaded_plugin_modules
= []
attributePLUGIN_CLS
= TypeVar('PLUGIN_CLS', bound=Plugin)
funcplugin_entry(plugin_cls, api_name=[], api_version=None) -> PLUGIN_CLS

实例化 ToolDelta 类式插件的主类

Args: plugin_cls (type[Plugin]): 插件主类 api_name (str | list[str], optional): 如果将插件作为 API 插件, 该参数为 API 名, 可以有多个 api_version (VERSION, optional): 插件的 API 版本

Raises: NotValidPluginError: 插件主类必须继承 Plugin 类

Returns: Plugin: 插件主类

paramplugin_clstype[PLUGIN_CLS]
paramapi_namestr | list[str]
= []
paramapi_versioncfg.VERSION | None
= None

Returns

tooldelta.plugin_load.classic_plugin.loader.PLUGIN_CLS
funchelp(plugin) -> None

查看插件帮助. 常用于查看 get_plugin_api() 方法获取到的插件实例的帮助.

paramplugintype[Plugin]

Returns

None
funcread_plugins(plugin_grp) -> None

读取插件

Args: plugin_grp (PluginGroup): 插件组

paramplugin_grpPluginGroup

Returns

None
funcload_plugin(plugin_group, plugin_dirname) -> None | Plugin

加载插件

Args: plugin_group (PluginGroup): 插件组类 plugin_dirname (str): 插件目录名 hot_load (bool, optional): 是否热加载

Raises: ValueError: 插件组未初始化读取 ValueError: 插件组未绑定框架 ValueError: 插件主类需要作者名 ValueError: 插件主类需要作者名 NotValidPluginError: 插件 不合法 SystemExit: 插件名字不合法 SystemExit: 插件配置文件报错 SystemExit: 插件读取数据失败

Returns: Union[None, Plugin]: 插件实例

paramplugin_groupPluginGroup
paramplugin_dirnamestr

Returns

None | tooldelta.plugin_load.classic_plugin.plugin_cls.Plugin