Package net.mamoe.mirai.console.data

Types

AbstractPluginData
Link copied to clipboard
abstract class AbstractPluginData : PluginDataImpl, PluginData

PluginData 的默认实现. 支持使用 by value() 等委托方法创建 Value 并跟踪其改动.

AutoSavePluginConfig
Link copied to clipboard
open class AutoSavePluginConfig(saveName: String) : AutoSavePluginData, PluginConfig

链接自动保存的 PluginConfig.

AutoSavePluginData
Link copied to clipboard
open class AutoSavePluginData : AbstractPluginData

链接自动保存的 PluginData.

AutoSavePluginDataHolder
Link copied to clipboard
interface AutoSavePluginDataHolder : PluginDataHolder, CoroutineScope

可以持有相关 AutoSavePluginData 的对象.

BooleanValue
Link copied to clipboard
interface BooleanValue : PrimitiveValue<Boolean>

表示一个不可空 Boolean.

ByteValue
Link copied to clipboard
interface ByteValue : PrimitiveValue<Byte>

表示一个不可空 Byte.

CharValue
Link copied to clipboard
interface CharValue : PrimitiveValue<Char>

表示一个不可空 Char.

CompositeListValue
Link copied to clipboard
interface CompositeListValue<E> : ListValue<E>

复合数据类型的 List

CompositeMapValue
Link copied to clipboard
interface CompositeMapValue<K, V> : MapValue<K, V>
CompositeSetValue
Link copied to clipboard
interface CompositeSetValue<E> : SetValue<E>

复合数据类型 Set

CompositeValue
Link copied to clipboard
interface CompositeValue<T> : Value<T>

复合数据类型实现

DoubleValue
Link copied to clipboard
interface DoubleValue : PrimitiveValue<Double>

表示一个不可空 Double.

FloatValue
Link copied to clipboard
interface FloatValue : PrimitiveValue<Float>

表示一个不可空 Float.

IntValue
Link copied to clipboard
interface IntValue : PrimitiveValue<Int>

表示一个不可空 Int.

ListValue
Link copied to clipboard
interface ListValue<E> : CompositeValue<List<E>>
LongValue
Link copied to clipboard
interface LongValue : PrimitiveValue<Long>

表示一个不可空 Long.

MapValue
Link copied to clipboard
interface MapValue<K, V> : CompositeValue<Map<K, V>>
MemoryPluginDataStorage
Link copied to clipboard

在内存存储所有 PluginData 实例的 PluginDataStorage. 在内存数据丢失后相关 PluginData 实例也会丢失.

MultiFilePluginDataStorage
Link copied to clipboard

用多个文件存储 PluginData 实例的 PluginDataStorage.

PluginConfig
Link copied to clipboard
interface PluginConfig : PluginData

一个插件的配置数据, 用于和用户交互.

PluginData
Link copied to clipboard
interface PluginData

一个插件内部的, 对用户隐藏的数据对象. 可包含对多个 Value 的值变更的跟踪. 典型的实现为 AbstractPluginData.

PluginDataExtensions
Link copied to clipboard
object PluginDataExtensions

PluginData 相关一些扩展

PluginDataHolder
Link copied to clipboard
interface PluginDataHolder

可以持有相关 PluginData 实例的对象, 作为 PluginData 实例的拥有者.

PluginDataStorage
Link copied to clipboard
interface PluginDataStorage

数据对象 存储仓库.

PrimitiveIntIntMapValue
Link copied to clipboard
interface PrimitiveIntIntMapValue : PrimitiveMapValue<Int, Int>
PrimitiveIntListValue
Link copied to clipboard
interface PrimitiveIntListValue : PrimitiveListValue<Int>
PrimitiveIntLongMapValue
Link copied to clipboard
PrimitiveIntSetValue
Link copied to clipboard
interface PrimitiveIntSetValue : PrimitiveSetValue<Int>
PrimitiveListValue
Link copied to clipboard
interface PrimitiveListValue<E> : ListValue<E>

针对基础类型优化的 List

PrimitiveLongListValue
Link copied to clipboard
interface PrimitiveLongListValue : PrimitiveListValue<Long>
PrimitiveLongSetValue
Link copied to clipboard
interface PrimitiveLongSetValue : PrimitiveSetValue<Long>
PrimitiveMapValue
Link copied to clipboard
interface PrimitiveMapValue<K, V> : MapValue<K, V>
PrimitiveSetValue
Link copied to clipboard
interface PrimitiveSetValue<E> : SetValue<E>

基础数据类型 Set

PrimitiveValue
Link copied to clipboard
interface PrimitiveValue<T> : Value<T>

基础数据类型 Value

ReadOnlyPluginConfig
Link copied to clipboard
open class ReadOnlyPluginConfig(saveName: String) : ReadOnlyPluginData, PluginConfig

只读的 PluginConfig. 插件只能读取其值, 但值可能在后台被前端 (用户) 修改.

ReadOnlyPluginData
Link copied to clipboard
open class ReadOnlyPluginData : AbstractPluginData

只读的 PluginData. 插件只能读取其值, 但值可能在后台被前端 (用户) 修改.

ReferenceValue
Link copied to clipboard
interface ReferenceValue<T> : Value<T>
SerializableValue
Link copied to clipboard
class SerializableValue<T>(delegate: Value<T>, serializer: KSerializer<Unit>) : Value<T> , SerializerAwareValue<T>

可被序列化的 Value.

SerializerAwareValue
Link copied to clipboard
interface SerializerAwareValue<T> : Value<T>

带有显式 序列化器Value.

SetValue
Link copied to clipboard
interface SetValue<E> : CompositeValue<Set<E>>
ShortValue
Link copied to clipboard
interface ShortValue : PrimitiveValue<Short>

表示一个不可空 Short.

StringValue
Link copied to clipboard
interface StringValue : PrimitiveValue<String>

表示一个不可空 String.

Value
Link copied to clipboard
interface Value<T> : ReadWriteProperty<Any?, T>

表示一个值代理.

ValueDescription
Link copied to clipboard
annotation class ValueDescription(value: String)

序列化之后的注释.

ValueName
Link copied to clipboard
annotation class ValueName(value: String)

序列化之后的名称.

Functions

findBackingFieldValue
Link copied to clipboard
fun <T> AbstractPluginData.findBackingFieldValue(propertyValueName: String): Value<out T>?
fun <T> AbstractPluginData.findBackingFieldValue(property: KProperty<T>): Value<out T>?

获取这个 KProperty 委托的 Value

findBackingFieldValueNode
Link copied to clipboard

获取这个 KProperty 委托的 Value

value
Link copied to clipboard
fun PluginData.value(default: Boolean): SerializerAwareValue<Boolean>

创建一个 Boolean 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: Byte): SerializerAwareValue<Byte>

创建一个 Byte 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: Char): SerializerAwareValue<Char>

创建一个 Char 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: Double): SerializerAwareValue<Double>

创建一个 Double 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: Float): SerializerAwareValue<Float>

创建一个 Float 类型的 Value, 并设置初始值为 default

inline fun <T> PluginData.value(apply: T.() -> Unit = {}): SerializerAwareValue<T>

通过具体化类型创建一个 SerializerAwareValue.

fun PluginData.value(default: Int): SerializerAwareValue<Int>

创建一个 Int 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: Long): SerializerAwareValue<Long>

创建一个 Long 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: Short): SerializerAwareValue<Short>

创建一个 Short 类型的 Value, 并设置初始值为 default

fun PluginData.value(default: String): SerializerAwareValue<String>

创建一个 String 类型的 Value, 并设置初始值为 default

inline fun <T> PluginData.value(default: T, crossinline apply: T.() -> Unit = {}): SerializerAwareValue<T>

通过具体化类型创建一个 SerializerAwareValue, 并设置初始值.

valueFromKType
Link copied to clipboard
fun <T> PluginData.valueFromKType(type: KType, default: T): SerializerAwareValue<T>

通过一个特定的 KType 创建 Value, 并设置初始值.

Properties

directory
Link copied to clipboard