mirror of
https://github.com/mamoe/mirai.git
synced 2025-01-10 18:40:15 +08:00
Update docs
This commit is contained in:
parent
235391e658
commit
9139d62a7c
@ -38,8 +38,6 @@ public abstract class AbstractPluginData : PluginData, PluginDataImpl() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 所有 [valueNodes] 更新和保存序列化器. 仅供内部使用
|
* 所有 [valueNodes] 更新和保存序列化器. 仅供内部使用
|
||||||
*
|
|
||||||
* @suppress 注意, 这是实验性 API.
|
|
||||||
*/
|
*/
|
||||||
public final override val updaterSerializer: KSerializer<Unit>
|
public final override val updaterSerializer: KSerializer<Unit>
|
||||||
get() = super.updaterSerializer
|
get() = super.updaterSerializer
|
||||||
|
@ -176,9 +176,7 @@ public interface PluginData {
|
|||||||
): T
|
): T
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 所有 [valueNodes] 更新和保存序列化器. 仅供内部使用
|
* 所有 [valueNodes] 更新和保存序列化器. 仅供内部使用。
|
||||||
*
|
|
||||||
* @suppress 注意, 这是实验性 API.
|
|
||||||
*/
|
*/
|
||||||
public val updaterSerializer: KSerializer<Unit>
|
public val updaterSerializer: KSerializer<Unit>
|
||||||
|
|
||||||
|
@ -30,6 +30,9 @@ import java.nio.file.Path
|
|||||||
*
|
*
|
||||||
* [JvmPluginLoader] 实现一个 [PluginDataStorage], 用于管理所有 [JvmPlugin] 的 [PluginData] 实例.
|
* [JvmPluginLoader] 实现一个 [PluginDataStorage], 用于管理所有 [JvmPlugin] 的 [PluginData] 实例.
|
||||||
*
|
*
|
||||||
|
* ### 实现 [PluginDataStorage]
|
||||||
|
* 无特殊需求。实现两个成员函数即可。可参考内建 [MultiFilePluginDataStorageImpl]
|
||||||
|
*
|
||||||
* @see PluginDataHolder
|
* @see PluginDataHolder
|
||||||
* @see JvmPluginLoader.dataStorage
|
* @see JvmPluginLoader.dataStorage
|
||||||
*/
|
*/
|
||||||
|
@ -13,10 +13,28 @@ import net.mamoe.mirai.console.extensions.PermissionServiceProvider
|
|||||||
import net.mamoe.mirai.console.extensions.PluginLoaderProvider
|
import net.mamoe.mirai.console.extensions.PluginLoaderProvider
|
||||||
import net.mamoe.mirai.console.extensions.SingletonExtensionSelector
|
import net.mamoe.mirai.console.extensions.SingletonExtensionSelector
|
||||||
import net.mamoe.mirai.console.extensions.SingletonExtensionSelector.ExtensionPoint.selectSingleton
|
import net.mamoe.mirai.console.extensions.SingletonExtensionSelector.ExtensionPoint.selectSingleton
|
||||||
|
import net.mamoe.mirai.console.plugin.jvm.JvmPlugin
|
||||||
|
import net.mamoe.mirai.console.plugin.jvm.JvmPlugin.Companion.onLoad
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 表示一个扩展.
|
* 表示一个扩展.
|
||||||
*
|
*
|
||||||
|
* ### 获取扩展
|
||||||
|
* Console 不允许插件获取自己或其他插件注册的扩展。
|
||||||
|
*
|
||||||
|
* ### 注册扩展
|
||||||
|
* 插件仅能在 [JvmPlugin.onLoad] 阶段注册扩展。
|
||||||
|
*
|
||||||
|
* ```kotlin
|
||||||
|
* object MyPlugin : KotlinPlugin( /* ... */ ) {
|
||||||
|
* fun PluginComponentStorage.onLoad() {
|
||||||
|
* contributePermissionService { /* ... */ }
|
||||||
|
* contributePluginLoader { /* ... */ }
|
||||||
|
* contribute(ExtensionPoint) { /* ... */ }
|
||||||
|
* }
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
* @see ComponentStorage
|
* @see ComponentStorage
|
||||||
*/
|
*/
|
||||||
public interface Extension
|
public interface Extension
|
||||||
|
@ -10,11 +10,14 @@
|
|||||||
package net.mamoe.mirai.console.extensions
|
package net.mamoe.mirai.console.extensions
|
||||||
|
|
||||||
import net.mamoe.mirai.console.extension.AbstractExtensionPoint
|
import net.mamoe.mirai.console.extension.AbstractExtensionPoint
|
||||||
|
import net.mamoe.mirai.console.extension.Extension
|
||||||
import net.mamoe.mirai.console.extension.InstanceExtension
|
import net.mamoe.mirai.console.extension.InstanceExtension
|
||||||
import net.mamoe.mirai.console.plugin.loader.PluginLoader
|
import net.mamoe.mirai.console.plugin.loader.PluginLoader
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 提供扩展 [PluginLoader]
|
* 提供扩展 [PluginLoader]
|
||||||
|
*
|
||||||
|
* @see Extension
|
||||||
*/
|
*/
|
||||||
public interface PluginLoaderProvider : InstanceExtension<PluginLoader<*, *>> {
|
public interface PluginLoaderProvider : InstanceExtension<PluginLoader<*, *>> {
|
||||||
public companion object ExtensionPoint : AbstractExtensionPoint<PluginLoaderProvider>(PluginLoaderProvider::class)
|
public companion object ExtensionPoint : AbstractExtensionPoint<PluginLoaderProvider>(PluginLoaderProvider::class)
|
||||||
|
Loading…
Reference in New Issue
Block a user