org.virtuslab.iskra.types
package org.virtuslab.iskra.types
Members list
Type members
Classlikes
trait BooleanLike extends BooleanOptLike
Attributes
- Supertypes
- Known subtypes
-
class boolean
trait BooleanOptLike extends DataType
Attributes
- Supertypes
- Known subtypes
trait ByteLike extends ByteOptLike, ShortLike
Attributes
- Supertypes
-
trait ShortLiketrait IntLiketrait LongLiketrait FloatLiketrait DoubleLiketrait ByteOptLiketrait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class byte
trait ByteOptLike extends ShortOptLike
Attributes
- Supertypes
-
trait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
object Coerce extends CoerceLowPrio
Attributes
trait CoerceLowPrio
trait DataType
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait BooleanOptLiketrait BooleanLikeclass booleanclass boolean_?trait DoubleOptLiketrait DoubleLiketrait FloatLiketrait LongLiketrait IntLiketrait ShortLiketrait ByteLikeclass byteclass shortclass intclass longclass floatclass doubletrait FloatOptLiketrait LongOptLiketrait IntOptLiketrait ShortOptLiketrait ByteOptLikeclass byte_?class short_?class int_?class long_?class float_?class double_?class FinalDataTypeclass stringclass string_?class struct[Schema]class struct_?[Schema]trait StringOptLiketrait StringLiketrait StructOptLike[Schema]trait StructLike[Schema]Show all
object DataType
trait DoubleLike extends DoubleOptLike
trait DoubleOptLike extends DataType
Attributes
- Supertypes
- Known subtypes
-
trait DoubleLiketrait FloatLiketrait LongLiketrait IntLiketrait ShortLiketrait ByteLikeclass byteclass shortclass intclass longclass floatclass doubletrait FloatOptLiketrait LongOptLiketrait IntOptLiketrait ShortOptLiketrait ByteOptLikeclass byte_?class short_?class int_?class long_?class float_?class double_?Show all
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait PrimitiveEncoder[A]trait PrimitiveNonNullableEncoder[A]trait PrimitiveNullableEncoder[A]trait StructEncoder[A]
object Encoder
abstract class FinalDataType extends DataType
Attributes
- Supertypes
- Known subtypes
- Self type
trait FloatLike extends FloatOptLike, DoubleLike
Attributes
- Supertypes
-
trait DoubleLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
trait FloatOptLike extends DoubleOptLike
Attributes
- Supertypes
- Known subtypes
-
trait FloatLiketrait LongLiketrait IntLiketrait ShortLiketrait ByteLikeclass byteclass shortclass intclass longclass floattrait LongOptLiketrait IntOptLiketrait ShortOptLiketrait ByteOptLikeclass byte_?class short_?class int_?class long_?class float_?Show all
trait IntLike extends IntOptLike, LongLike
Attributes
- Supertypes
-
trait LongLiketrait FloatLiketrait DoubleLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
trait IntOptLike extends LongOptLike
Attributes
- Supertypes
-
trait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
trait LongLike extends LongOptLike, FloatLike
Attributes
- Supertypes
-
trait FloatLiketrait DoubleLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
trait LongOptLike extends FloatOptLike
Attributes
- Supertypes
-
trait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait IntOptLiketrait IntLiketrait ShortLiketrait ByteLikeclass byteclass shortclass inttrait ShortOptLiketrait ByteOptLikeclass byte_?class short_?class int_?trait LongLikeclass longclass long_?Show all
sealed trait NonNullable extends Nullability
trait NonNullableOf[T <: DataType & Nullable] extends NonNullable
Attributes
- Supertypes
- Known subtypes
-
trait NonNullabletrait NonNullableOf[T]class booleanclass byteclass doubleclass floatclass intclass longclass shortclass stringclass struct[Schema]trait Nullabletrait NullableOf[T]class boolean_?class byte_?class double_?class float_?class int_?class long_?class short_?class string_?class struct_?[Schema]Show all
sealed trait Nullable extends Nullability
trait NullableOf[T <: DataType & NonNullable] extends Nullable
trait PrimitiveEncoder[-A] extends Encoder[A]
Attributes
- Supertypes
- Known subtypes
-
trait PrimitiveNonNullableEncoder[A]trait PrimitiveNullableEncoder[A]
trait PrimitiveNonNullableEncoder[-A] extends PrimitiveEncoder[A]
Attributes
- Supertypes
trait PrimitiveNullableEncoder[-A] extends PrimitiveEncoder[Option[A]]
Attributes
- Supertypes
trait ShortLike extends ShortOptLike, IntLike
Attributes
- Supertypes
-
trait IntLiketrait LongLiketrait FloatLiketrait DoubleLiketrait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
trait ShortOptLike extends IntOptLike
Attributes
- Supertypes
-
trait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait DataTypeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
trait StringLike extends StringOptLike
Attributes
- Supertypes
- Known subtypes
-
class string
trait StringOptLike extends DataType
Attributes
- Supertypes
- Known subtypes
trait StructEncoder[-A] extends Encoder[A]
object StructEncoder
Attributes
- Companion
- trait
- Supertypes
- Self type
-
StructEncoder.type
trait StructLike[Schema <: Tuple] extends StructOptLike[Schema]
Attributes
- Supertypes
- Known subtypes
-
class struct[Schema]
trait StructOptLike[Schema <: Tuple] extends DataType
Attributes
- Supertypes
- Known subtypes
final class boolean extends FinalDataType, NonNullableOf[boolean_?], BooleanLike
Attributes
- Supertypes
-
trait BooleanLiketrait BooleanOptLiketrait NonNullableOf[boolean_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class boolean_? extends FinalDataType, NullableOf[boolean], BooleanOptLike
Attributes
- Supertypes
-
trait BooleanOptLiketrait NullableOf[boolean]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class byte extends FinalDataType, NonNullableOf[byte_?], ByteLike
Attributes
- Supertypes
-
trait ByteLiketrait ShortLiketrait IntLiketrait LongLiketrait FloatLiketrait DoubleLiketrait ByteOptLiketrait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NonNullableOf[byte_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class byte_? extends FinalDataType, NullableOf[byte], ByteOptLike
Attributes
- Supertypes
-
trait ByteOptLiketrait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NullableOf[byte]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class double extends FinalDataType, NonNullableOf[double_?], DoubleLike
Attributes
- Supertypes
-
trait DoubleLiketrait DoubleOptLiketrait NonNullableOf[double_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class double_? extends FinalDataType, NullableOf[double], DoubleOptLike
Attributes
- Supertypes
-
trait DoubleOptLiketrait NullableOf[double]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class float extends FinalDataType, NonNullableOf[float_?], FloatLike
Attributes
- Supertypes
-
trait FloatLiketrait DoubleLiketrait FloatOptLiketrait DoubleOptLiketrait NonNullableOf[float_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class float_? extends FinalDataType, NullableOf[float], FloatOptLike
Attributes
- Supertypes
-
trait FloatOptLiketrait DoubleOptLiketrait NullableOf[float]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class int extends FinalDataType, NonNullableOf[int_?], IntLike
Attributes
- Supertypes
-
trait IntLiketrait LongLiketrait FloatLiketrait DoubleLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NonNullableOf[int_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class int_? extends FinalDataType, NullableOf[int], IntOptLike
Attributes
- Supertypes
-
trait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NullableOf[int]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class long extends FinalDataType, NonNullableOf[long_?], LongLike
Attributes
- Supertypes
-
trait LongLiketrait FloatLiketrait DoubleLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NonNullableOf[long_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class long_? extends FinalDataType, NullableOf[long], LongOptLike
Attributes
- Supertypes
-
trait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NullableOf[long]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class short extends FinalDataType, NonNullableOf[short_?], ShortLike
Attributes
- Supertypes
-
trait ShortLiketrait IntLiketrait LongLiketrait FloatLiketrait DoubleLiketrait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NonNullableOf[short_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class short_? extends FinalDataType, NullableOf[short], ShortOptLike
Attributes
- Supertypes
-
trait ShortOptLiketrait IntOptLiketrait LongOptLiketrait FloatOptLiketrait DoubleOptLiketrait NullableOf[short]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class string extends FinalDataType, NonNullableOf[string_?], StringLike
Attributes
- Supertypes
-
trait StringLiketrait StringOptLiketrait NonNullableOf[string_?]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class string_? extends FinalDataType, NullableOf[string], StringOptLike
Attributes
- Supertypes
-
trait StringOptLiketrait NullableOf[string]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class struct[Schema <: Tuple] extends FinalDataType, NonNullableOf[struct_?[Schema]], StructLike[Schema]
Attributes
- Supertypes
-
trait StructLike[Schema]trait StructOptLike[Schema]trait NonNullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
final class struct_?[Schema <: Tuple] extends FinalDataType, NullableOf[struct[Schema]], StructOptLike[Schema]
Attributes
- Supertypes
-
trait StructOptLike[Schema]trait Nullabletrait Nullabilityclass FinalDataTypetrait DataTypeclass Objecttrait Matchableclass AnyShow all
Types
type BooleanOfCommonNullability[T1, T2] = (T1, T2) match { case (NonNullable, NonNullable) => BooleanNotNull case (Nullability, Nullability) => BooleanOrNull }
type BooleanOfNullability[N <: Nullability] = N match { case NonNullable => BooleanNotNull case Nullable => BooleanOrNull }
type CommonBooleanType[T1 <: DataType, T2 <: DataType] = (T1, T2) match { case (BooleanLike, BooleanLike) => BooleanNotNull case (BooleanOptLike, BooleanOptLike) => BooleanOrNull }
type CommonNullability[T1 <: Nullability, T2 <: Nullability] = (T1, T2) match { case (NonNullable, NonNullable) => NonNullable case Any => Nullable }
type CommonNumericType[T1 <: DataType, T2 <: DataType] = (T1, T2) match { case (ByteLike, ByteLike) => byte case (ByteOptLike, ByteOptLike) => byte_? case (ShortLike, ShortLike) => short case (ShortOptLike, ShortOptLike) => short_? case (IntLike, IntLike) => int case (IntOptLike, IntOptLike) => int_? case (LongLike, LongLike) => long case (LongOptLike, LongOptLike) => long_? case (FloatLike, FloatLike) => float case (FloatOptLike, FloatOptLike) => float_? case (DoubleLike, DoubleLike) => double case (DoubleOptLike, DoubleOptLike) => double_? }
type DoubleOfCommonNullability[T1 <: DoubleOptLike, T2 <: DoubleOptLike] = (T1, T2) match { case (DoubleLike, DoubleLike) => DoubleNotNull case (DoubleOptLike, DoubleOptLike) => DoubleOrNull }
type StringOfCommonNullability[T1 <: StringOptLike, T2 <: StringOptLike] = (T1, T2) match { case (StringLike, StringLike) => StringNotNull case (StringOptLike, StringOptLike) => StringOrNull }
In this article