SchemeSpec

open class SchemeSpec<out T : Scheme>(builder: () -> T) : Specification<T> , Described

A specification for simplified generation of wrappers

Constructors

SchemeSpec
Link copied to clipboard
common
fun <out T : Scheme> SchemeSpec(builder: () -> T)

Functions

empty
Link copied to clipboard
common
open override fun empty(): T

Generate an empty object

invoke
Link copied to clipboard
common
inline operator override fun invoke(action: T.() -> Unit): T

A convenience method to use specifications in builders

read
Link copied to clipboard
common
open override fun read(source: Meta): T

Read generic read-only meta with this Specification producing instance of desired type. The source is not mutated even if it is in theory mutable

write
Link copied to clipboard
common
open override fun write(target: MutableMeta): T

Wrap MutableMeta, using it as inner storage (changes to Specification are reflected on MutableMeta

Properties

descriptor
Link copied to clipboard
common
open override val descriptor: MetaDescriptor?