zio.config.derivation
package zio.config.derivation
Members list
Type members
Classlikes
final case class describe(describe: String) extends StaticAnnotation
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
final case class discriminator(keyName: String) extends StaticAnnotation
discriminator can be used for class names, such that the name of the class should be part of the product with keyName as keyName.
discriminator can be used for class names, such that the name of the class should be part of the product with keyName as keyName.
Example:
@discriminator("type")
sealed trait FooBar
case class Bar(x: Int) extends FooBar
case class Foo(y: String) extends FooBar
case object Fooz extends FooBar
case class AppConfig(config : FooBar)
corresponds to
config : {
type : Bar
x : Int
}
or
config : {
type: Foo
x: Int
}
or
config : Fooz
If annotation is name instead of discriminator, then name of the case class becomes a parent node
Foo : {
x : Int
}
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
final case class kebabCase() extends StaticAnnotation
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
final case class name(name: String) extends StaticAnnotation
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
final case class postfix(postfix: String) extends StaticAnnotation
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
final case class prefix(prefix: String) extends StaticAnnotation
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
final case class snakeCase() extends StaticAnnotation
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait StaticAnnotationclass Annotationclass Objecttrait Matchableclass AnyShow all
In this article