trait ProductHint[A] extends AnyRef
A trait that can be implemented to customize how case classes are read from and written to a config.
- A
the type of case class for which this hint applies
- Alphabetic
- By Inheritance
- ProductHint
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def bottom(cursor: ConfigObjectCursor, usedFields: Set[String]): Option[ConfigReaderFailures]
Returns optional failures given the provided
ConfigObjectCursor
.Returns optional failures given the provided
ConfigObjectCursor
.- cursor
a
ConfigObjectCursor
at the configuration root from where the product was read- usedFields
a set of all the used fields when reading the product
- returns
an optional non-empty list of failures.
- abstract def from(cursor: ConfigObjectCursor, fieldName: String): Action
Returns what should be used when attempting to read a case class field with name
fieldName
from the providedConfigObjectCursor
.Returns what should be used when attempting to read a case class field with name
fieldName
from the providedConfigObjectCursor
.- cursor
the cursor from which to read a value
- fieldName
the name of the field in
T
- returns
a ProductHint.Action object that signals which cursor to use in order to read this field, the name of the corresponding field in the config object, whether the field should be removed from the object after read, and whether to use default values for this particular field.
- abstract def to(value: Option[ConfigValue], fieldName: String): Option[(String, ConfigValue)]
Returns an optional key-value pair that should be used for the field with name
fieldName
in theConfigObject
representation ofT
.Returns an optional key-value pair that should be used for the field with name
fieldName
in theConfigObject
representation ofT
.- value
the optional serialized value of the field
- fieldName
the name of the field in
T
- returns
an optional key-value pair to be used in the
ConfigObject
representation ofT
. IfNone
, the field is omitted from theConfigObject
representation.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()