mirai/docs/Extensions.md

37 lines
1.1 KiB
Markdown
Raw Normal View History

2020-09-03 22:26:27 +08:00
# Mirai Console Backend - Extensions
2020-09-12 23:25:16 +08:00
Mirai Console 拥有灵活的 Extensions API支持扩展 Console 的一些服务。
2020-09-13 01:52:46 +08:00
Extensions 属于插件开发的进阶内容。
2020-09-12 23:25:16 +08:00
2020-10-30 10:28:18 +08:00
[`Extension`]: ../backend/mirai-console/src/extension/Extension.kt
[`ExtensionPoint`]: ../backend/mirai-console/src/extension/ExtensionPoint.kt
[`PluginComponentStorage`]: ../backend/mirai-console/src/extension/PluginComponentStorage.kt
[`ComponentStorage`]: ../backend/mirai-console/src/extension/ComponentStorage.kt
2020-09-12 23:25:16 +08:00
2020-09-13 01:52:46 +08:00
## [扩展][`Extension`]
2020-09-12 23:25:16 +08:00
2020-09-13 01:52:46 +08:00
### [组件容器][`ComponentStorage`]
容纳插件注册的 [扩展][`Extension`]。
### 注册扩展
插件仅能在 [`onLoad`](Plugins.md#加载) 阶段注册扩展。
示例:
```kotlin
object MyPlugin : KotlinPlugin( /* ... */ ) {
fun PluginComponentStorage.onLoad() {
contributePermissionService { /* ... */ }
contributePluginLoader { /* ... */ }
contribute(ExtensionPoint) { /* ... */ }
}
}
```
### 可用扩展
2020-10-30 10:28:18 +08:00
查看 [extensions](../backend/mirai-console/src/extensions)。每个文件对应一个扩展。