Schema of properties for a record R. We can use tuples and maps to represent instances of this schema.
- Companion:
- object
class Object
trait Matchable
class Any
Type members
Types
type IndicesOfProps[S2 <: RecordSchema] = S2 match {
case EmptySchema => EmptyTuple
case SchemaCons[p, s] => IndexOfProp[p] *: IndicesOfProps[s]
}
Returns the tuple made of indices of properties of another schema.
Returns the tuple made of indices of properties of another schema.
type PrependOtherSchema[S1 <: RecordSchema] = S1 match {
case EmptySchema => RecordSchema
case SchemaCons[p, s] => SchemaCons[p, PrependOtherSchema[s]]
}
Type of the concatenation of two schemas.
Type of the concatenation of two schemas.
A type function that applies a given type function to each property.
A type function that applies a given type function to each property.
Value members
Abstract methods
transparent inline def propertyGetter[This >: RecordSchema <: RecordSchema, P <: RecordProperty0](inline p: P): () => p
transparent inline def propertyUpdater[This >: RecordSchema <: RecordSchema, P <: RecordProperty0](inline p: P): () => p
transparent inline def replace[P1 <: RecordProperty0, P2 <: RecordProperty0](inline p1: P1, inline p2: P2): RecordSchema
Concrete methods
@targetName("SchemaCons")
inline def #:[P <: RecordProperty0, This >: RecordSchema <: RecordSchema](p: P): SchemaCons[P, This]
transparent inline def appendValues[S2 <: RecordSchema](inline schema2: S2)(inline schema3: AppendOtherSchema[S2]): (Values, Values) => Values
transparent inline def concatValues[S2 <: RecordSchema](inline schema2: S2)(inline schema3: Concat[RecordSchema, schema2]): (Values, Values) => Values
transparent inline def prependOtherSchema[S1 <: RecordSchema](inline s1: S1): PrependOtherSchema[S1]
transparent inline def prependValues[S1 <: RecordSchema](inline schema1: S1)(inline schema3: PrependOtherSchema[S1]): (Values, Values) => Values
transparent inline def rename[T, P1 <: RecordProperty[T], P2 <: RecordProperty[T]](inline p1: P1, inline p2: P2): RecordSchema
Replaces properties of the same type. A bit more restricted version of replace.
Replaces properties of the same type. A bit more restricted version of replace.
Abstract fields
Extensions
Extensions
extension (values: Values)
transparent inline def updated[P <: RecordProperty0](inline p: P)(inline v: PropertyValueType[p]): Values