intellij-randomness / com.fwdekker.randomness / Settings

Settings

interface Settings<SELF, SCHEME : Scheme<SCHEME>> : PersistentStateComponent<SELF>

Settings are composed of Schemes and persist these over IDE restarts.

Parameters

SELF - the type of settings that should be persisted; should be a self reference

SCHEME - the type of scheme that the settings consist of

Properties

currentScheme

open var currentScheme: SCHEME

The instance of the scheme that is currently active.

currentSchemeName

abstract var currentSchemeName: String

The name of the scheme that is currently active.

schemes

abstract var schemes: MutableList<SCHEME>

The various schemes that are contained within the settings.

Functions

deepCopy

abstract fun deepCopy(): SELF

Returns a deep copy of the settings and the contained schemes.

getState

abstract fun getState(): SELF

Returns this.

loadState

abstract fun loadState(state: SELF): Unit

Copies the fields of state to this.

Inheritors

ArraySettings

data class ArraySettings : Settings<ArraySettings, ArrayScheme>

The user-configurable collection of schemes applicable to generating arrays.

DecimalSettings

data class DecimalSettings : Settings<DecimalSettings, DecimalScheme>

The user-configurable collection of schemes applicable to generating decimals.

IntegerSettings

data class IntegerSettings : Settings<IntegerSettings, IntegerScheme>

The user-configurable collection of schemes applicable to generating integers.

StringSettings

data class StringSettings : Settings<StringSettings, StringScheme>

The user-configurable collection of schemes applicable to generating strings.

UuidSettings

data class UuidSettings : Settings<UuidSettings, UuidScheme>

The user-configurable collection of schemes applicable to generating UUIDs.

WordSettings

data class WordSettings : Settings<WordSettings, WordScheme>

The user-configurable collection of schemes applicable to generating words.