RecordSchema

sealed trait RecordSchema

Schema of properties for record R. We can use tuples to represent instances of this schema.

Companion:
object
class Object
trait Matchable
class Any
object EmptySchema.type
class SchemaCons[P, S]

Type members

Types

type HValues[H[_]] = Map[Values, H]
type IndicesOfProps[S2 <: RecordSchema] = S2 match { case EmptySchema => EmptyTuple case SchemaCons[p, s] => IndexOfProp[p] *: IndicesOfProps[s] }
type ParentSchemaOrNothing <: RecordSchema { type R <: R; }
type Properties <: Tuple
type R
type Rec = Record[R]
type ValueAt[I] = I match { case Int => ValueAt[RecordSchema, I] case Any => Nothing }

Value members

Abstract methods

def convertToMap(v: Values, m: Map[String, Any]): Map[String, Any]
def get[P2 <: RecordProperty0](p2: P2)(v: Values): Option[P]
transparent inline def indexOfProp[This >: RecordSchema <: RecordSchema, P2 <: PropertySet](inline p2: P2): IndexOfProp[p2]
def isEmpty: Boolean
transparent inline def projectorFrom[This >: RecordSchema <: RecordSchema, S1 <: RecordSchema](inline s1: S1): () => Values
transparent inline def propertyGetter[This >: RecordSchema <: RecordSchema, P](inline p: P): () => p

Concrete methods

transparent inline def concat[This >: RecordSchema <: RecordSchema, S2 <: RecordSchema](inline schema2: S2): Concat[This, schema2]
transparent inline def concatValues[This >: RecordSchema <: RecordSchema, S2 <: RecordSchema](inline schema2: S2): (Values, Values) => Concat[This, S2]
transparent inline def getByIndex[I <: Int](inline i: I)(v: Values): ValueAt[I]
def getByIndexRuntime(i: Int)(v: Values): Any
transparent inline def indicesOfProps[This >: RecordSchema <: RecordSchema, S2 <: RecordSchema](inline s2: S2): IndicesOfProps[s2]
override def toString: String
Definition Classes
Any
inline def values(inline v: Values): Values

Abstract fields