Object

shapeless.ops

coproduct

Related Doc: package ops

Permalink

object coproduct

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. coproduct
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait Align[A <: Coproduct, B <: Coproduct] extends (A) ⇒ B with Serializable

    Permalink

    Type class supporting permuting this Coproduct into the same order as another Coproduct with the same element types.

  2. trait At[C <: Coproduct, N <: Nat] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting getting the Nth type from a coproduct C.

  3. trait Basis[Super <: Coproduct, Sub <: Coproduct] extends DepFn1[Super] with Serializable

    Permalink

    Type class checking that : - coproduct is a sub-union of a bigger coproduct - embeds a sub-coproduct into a bigger coproduct

  4. sealed trait CoproductToEither[C <: Coproduct] extends DepFn1[C] with Serializable

    Permalink

    Type class converting a Coproduct to an Either

  5. trait Drop[C <: Coproduct, N <: Nat] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting dropping the first n-elements of this Coproduct

  6. sealed trait EitherToCoproduct[L, R] extends DepFn1[Either[L, R]] with Serializable

    Permalink

    Type class converting an Either to a Coproduct

  7. trait EitherToCoproductLowPrio extends AnyRef

    Permalink
  8. trait ExtendBy[L <: Coproduct, R <: Coproduct] extends Serializable

    Permalink

    Type class which combines the functionality of ExtendRightBy and ExtendLeftBy.

    Type class which combines the functionality of ExtendRightBy and ExtendLeftBy. The combined coproduct and be produced by either providing the left part or the right part.

  9. trait ExtendLeftBy[L <: Coproduct, R <: Coproduct] extends DepFn1[R] with Serializable

    Permalink

    Extend a coproduct to the left by another coproduct.

    Extend a coproduct to the left by another coproduct. Conceptually similar to prepending a List to the original List

  10. trait ExtendRight[C <: Coproduct, T] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting extending a coproduct on the right

  11. trait ExtendRightBy[L <: Coproduct, R <: Coproduct] extends DepFn1[L] with Serializable

    Permalink

    Similar to ExtendLeftBy.

    Similar to ExtendLeftBy. Conceptually similar to appending a List to the original List

  12. trait Filter[C <: Coproduct, U] extends DepFn1[C] with Serializable

    Permalink

    Type class which filters a coproduct by a type U, producing a coproduct containing only U.

    Type class which filters a coproduct by a type U, producing a coproduct containing only U. (The output is a coproduct because type U may occur multiple times in the original coproduct)

  13. trait FilterNot[C <: Coproduct, U] extends DepFn1[C] with Serializable

    Permalink

    Type class which filters a coproduct by a type U, producing a coproduct that does not contain U If U does not exist in the coproduct, the original coproduct is returned

  14. trait FlatMap[C <: Coproduct, F <: Poly] extends DepFn1[C] with Serializable

    Permalink

    For each type in the coproduct run a function (provide in Poly) which produces some coproduct, then flatten all the resulting coproducts.

    For each type in the coproduct run a function (provide in Poly) which produces some coproduct, then flatten all the resulting coproducts. This is conceptually similar to List#flatMap with the list items being types

  15. trait Folder[F <: Poly, C <: Coproduct] extends DepFn1[C] with Serializable

    Permalink

    Type class folding all possible types of a coproduct down to a single type

  16. trait IndexOf[C <: Coproduct, A] extends DepFn0 with Serializable

    Permalink

    find index of A in C

  17. trait InitLast[C <: Coproduct] extends Serializable

    Permalink

    Type class providing access to init and last of a Coproduct

  18. trait Inject[C <: Coproduct, I] extends Serializable

    Permalink

    Type class for converting a value of type I into the coproduct C.

    Type class for converting a value of type I into the coproduct C. (Type I need to occur in the coproduct C)

  19. trait IsCCons[C <: Coproduct] extends Serializable

    Permalink

    Type class providing access to head and tail of a Coproduct

  20. trait LeftFolder[C <: Coproduct, In, F] extends DepFn2[C, In] with Serializable

    Permalink

    Type class which performs left fold on a coproduct.

    Type class which performs left fold on a coproduct. Provided with a dependent function that can convert all types in a coproduct into the same type as the initial value of type In, combines the actual value of the coproduct with the initial value

  21. trait Length[C <: Coproduct] extends DepFn0 with Serializable

    Permalink

    Type class supporting computing the type-level Nat corresponding to the length of this Coproduct'.

  22. sealed trait LiftAll[F[_], In <: Coproduct] extends AnyRef

    Permalink

    Type class supporting finding a typeclass instance for each type in a coproduct, resulting in a coproduct of typeclass instances.

  23. trait LowPriorityPrepend extends LowestPriorityPrepend

    Permalink
  24. trait LowPriorityRemove extends AnyRef

    Permalink
  25. trait LowPriorityRemoveLast extends AnyRef

    Permalink
  26. trait LowPriorityRotateLeft extends AnyRef

    Permalink
  27. trait LowPriorityRotateRight extends AnyRef

    Permalink
  28. trait LowestPriorityPrepend extends AnyRef

    Permalink
  29. trait Mapper[F <: Poly, C <: Coproduct] extends DepFn1[C] with Serializable

    Permalink

    For each type in a coproduct, map it to another type.

    For each type in a coproduct, map it to another type. Conceptually similar to List#map

  30. trait Partition[C <: Coproduct, U] extends DepFn1[C] with Serializable

    Permalink

    Type class for filtering coproduct by type U, splitting into a coproduct containing only type U and a coproduct of all other types.

  31. trait Prepend[P <: Coproduct, S <: Coproduct] extends DepFn1[Either[P, S]] with Serializable

    Permalink

    Type class supporting prepending to this Coproduct.

  32. trait Reify[L <: Coproduct] extends DepFn0 with Serializable

    Permalink

    Type class supporting reifying a Coproduct of singleton types.

  33. trait Remove[C <: Coproduct, U] extends DepFn1[C] with Serializable

    Permalink

    Type class that can removes the first occurrence of a particular type from a coproduct, splitting it into the specified type U and a coproduct representing the rest of the coproduct (with first occurrence of U removed).

    Type class that can removes the first occurrence of a particular type from a coproduct, splitting it into the specified type U and a coproduct representing the rest of the coproduct (with first occurrence of U removed). Also provides the inverse method which allows for reconstructing the original coproduct from its subparts.

  34. trait RemoveLast[C <: Coproduct, I] extends DepFn1[C] with Serializable

    Permalink

    Type class similar to Remove, but removes the last occurance of the specified type (I) instead

  35. trait Reverse[C <: Coproduct] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting reversing a Coproduct

  36. trait RotateLeft[C <: Coproduct, N <: Nat] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting rotating a Coproduct left

  37. trait RotateRight[C <: Coproduct, N <: Nat] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting rotating a Coproduct right

  38. trait RuntimeInject[C <: Coproduct] extends Serializable

    Permalink

    Type class supporting the injection of runtime values of type Any in Coproduct.

    Type class supporting the injection of runtime values of type Any in Coproduct.

    Annotations
    @implicitNotFound( ... )
  39. trait RuntimeInjectLowPrio extends AnyRef

    Permalink
  40. trait Selector[C <: Coproduct, T] extends Serializable

    Permalink

    Type class for attempting to get a value of type T out of an instance of corpdocut C.

    Type class for attempting to get a value of type T out of an instance of corpdocut C. If the coproduct instance is not of the specified type, None is returned

  41. trait Split[C <: Coproduct, N <: Nat] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting splitting this Coproduct at the nth element returning prefix and suffix as a coproduct

  42. trait Take[C <: Coproduct, N <: Nat] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting taking the first n-elements of this Coproduct

  43. trait ToHList[L <: Coproduct] extends Serializable

    Permalink

    Type class computing the HList type corresponding to this Coproduct.

  44. trait Unifier[C <: Coproduct] extends DepFn1[C] with Serializable

    Permalink

    Type class that unifies all the types in a coproduct into one single type which is their closest common parent type (i.e.

    Type class that unifies all the types in a coproduct into one single type which is their closest common parent type (i.e. least upper bound of all the types in the coproduct)

  45. trait ZipConst[Z, V <: Coproduct] extends DepFn2[Z, V] with Serializable

    Permalink

    Type class supporting zipping this Coproduct with a constant of type Z returning a Coproduct of tuples of the form ({element from input Coproduct}, {supplied constant})

  46. trait ZipWith[H <: HList, V <: Coproduct] extends DepFn2[H, V] with Serializable

    Permalink

    Type class supporting zipping a Coproduct with an HList, resulting in a Coproduct of tuples of the form ({element from input Coproduct}, {element from input HList})

  47. trait ZipWithIndex[C <: Coproduct] extends DepFn1[C] with Serializable

    Permalink

    Type class supporting zipping a Coproduct with its element indices, resulting in a Coproduct of tuples of the form ({element from input tuple}, {element index})

  48. trait ZipWithKeys[K <: HList, V <: Coproduct] extends DepFn1[V] with Serializable

    Permalink

    Type class that zips an HList with a Coproduct, producing a Coproduct of tuples where each element from the original coproduct is combined with the matching HList element

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Align extends Serializable

    Permalink
  5. object At extends Serializable

    Permalink
  6. object Basis extends Serializable

    Permalink
  7. object CoproductToEither extends Serializable

    Permalink
  8. object Drop extends Serializable

    Permalink
  9. object EitherToCoproduct extends EitherToCoproductLowPrio with Serializable

    Permalink
  10. object ExtendBy extends Serializable

    Permalink
  11. object ExtendLeftBy extends Serializable

    Permalink
  12. object ExtendRight extends Serializable

    Permalink
  13. object ExtendRightBy extends Serializable

    Permalink
  14. object Filter extends Serializable

    Permalink
  15. object FilterNot extends Serializable

    Permalink
  16. object FlatMap extends Serializable

    Permalink
  17. object Folder extends Serializable

    Permalink
  18. object IndexOf extends Serializable

    Permalink
  19. object InitLast extends Serializable

    Permalink
  20. object Inject extends Serializable

    Permalink
  21. object IsCCons extends Serializable

    Permalink
  22. object LeftFolder extends Serializable

    Permalink
  23. object Length extends Serializable

    Permalink
  24. object LiftAll

    Permalink
  25. object Mapper extends Serializable

    Permalink
  26. object Partition extends Serializable

    Permalink
  27. object Prepend extends LowPriorityPrepend with Serializable

    Permalink
  28. object Reify extends Serializable

    Permalink
  29. object Remove extends LowPriorityRemove with Serializable

    Permalink
  30. object RemoveLast extends LowPriorityRemoveLast with Serializable

    Permalink
  31. object Reverse extends Serializable

    Permalink
  32. object RotateLeft extends LowPriorityRotateLeft with Serializable

    Permalink
  33. object RotateRight extends LowPriorityRotateRight with Serializable

    Permalink
  34. object RuntimeInject extends RuntimeInjectLowPrio with Serializable

    Permalink
  35. object Selector extends Serializable

    Permalink
  36. object Split extends Serializable

    Permalink
  37. object Take extends Serializable

    Permalink
  38. object ToHList extends Serializable

    Permalink
  39. object Unifier extends Serializable

    Permalink
  40. object ZipConst extends Serializable

    Permalink
  41. object ZipWith extends Serializable

    Permalink
  42. object ZipWithIndex extends Serializable

    Permalink
  43. object ZipWithKeys extends Serializable

    Permalink
  44. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  45. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. implicit object cnilOrdering extends Ordering[CNil]

    Permalink
  47. implicit def coproductPartialOrdering[H, T <: Coproduct](implicit ordering: Ordering[H], partialOrdering: PartialOrdering[T]): PartialOrdering[:+:[H, T]]

    Permalink
  48. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  49. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  50. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  51. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  52. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  53. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  54. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  55. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  56. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  57. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  58. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  59. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  60. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped