Package-level declarations
Annotations read by the Konstant KSP processor.
Types
Marks a data class as a config spec. The KSP processor generates a ConfigLoader.load<Name>() function and a Konstant.init<Name> function for it. Each primary-constructor parameter is a field; a parameter with a default is optional, and a nullable one without a default defaults to null. A parameter whose type is another @ConfigSpec class is loaded as a nested spec, with its keys prefixed by the parameter name (database.url, DATABASE_URL).
Converts this field with a custom converter: an object implementing io.github.fiol_dev.konstant.core.ValueConverter<T>, where T is the field's type.
Looks this field up under name instead of the key derived from the property name. The name is used exactly as written, in every source and key format, and nested-spec prefixes are not added to it.
The String must contain a non-whitespace character.
Hides this field's value as *** in ConfigError values and messages and in ConfigLoader.explain reports. A conversion error's cause becomes invalid value, since parser messages may echo the input. The loaded config object is not changed: its toString is your data class's own and still prints the real value.