trait Arrow[=>:[_, _]] extends Split[=>:] with Strong[=>:] with Category[=>:] with ArrowParent[=>:]
A scalaz.Category supporting all ordinary functions, as well as combining arrows product-wise. Every Arrow forms a scalaz.Contravariant in one type parameter, and a scalaz.Applicative in the other, just as with ordinary functions.
- Self Type
- Arrow[=>:]
- Source
- Arrow.scala
- Alphabetic
- By Inheritance
- Arrow
- ArrowParent
- Category
- Strong
- Profunctor
- Split
- Compose
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
trait
CategoryLaw
extends ComposeLaw
- Definition Classes
- Category
-
trait
ComposeLaw
extends AnyRef
- Definition Classes
- Compose
-
trait
ComposePlus
extends Plus[[α]=>:[α, α]]
- Attributes
- protected[this]
- Definition Classes
- Compose
-
trait
ComposeSemigroup
[A] extends Semigroup[=>:[A, A]]
- Attributes
- protected[this]
- Definition Classes
- Compose
-
trait
SndCovariant
[C] extends Functor[[β$0$]=>:[C, β$0$]]
- Attributes
- protected[this]
- Definition Classes
- Profunctor
Abstract Value Members
-
abstract
def
arr[A, B](f: (A) ⇒ B): =>:[A, B]
Lift an ordinary function.
-
abstract
def
compose[A, B, C](f: =>:[B, C], g: =>:[A, B]): =>:[A, C]
Associative
=>:
binary operator.Associative
=>:
binary operator.- Definition Classes
- Compose
-
abstract
def
first[A, B, C](fa: =>:[A, B]): =>:[(A, C), (B, C)]
- Definition Classes
- Strong
-
abstract
def
id[A]: =>:[A, A]
The left and right identity over
compose
.The left and right identity over
compose
.- Definition Classes
- Category
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
<<<[A, B, C](fbc: =>:[B, C], fab: =>:[A, B]): =>:[A, C]
Alias for
compose
. -
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
>>>[A, B, C](fab: =>:[A, B], fbc: =>:[B, C]): =>:[A, C]
Flipped
<<<
. - val arrowSyntax: ArrowSyntax[=>:]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
categoryLaw: CategoryLaw
- Definition Classes
- Category
-
val
categorySyntax: CategorySyntax[=>:]
- Definition Classes
- Category
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
combine[A, B, C](fab: =>:[A, B], fac: =>:[A, C]): =>:[A, (B, C)]
Run
fab
andfac
on the sameA
.Run
fab
andfac
on the sameA
. Sometimes&&&
. -
def
composeLaw: ComposeLaw
- Definition Classes
- Compose
-
val
composeSyntax: ComposeSyntax[=>:]
- Definition Classes
- Compose
-
def
contravariantInstance[C]: Contravariant[[α$2$]=>:[α$2$, C]]
- Definition Classes
- Profunctor
-
def
covariantInstance[C]: Applicative[[β$0$]=>:[C, β$0$]]
- Definition Classes
- Arrow → Profunctor
-
def
dimap[A, B, C, D](fab: =>:[A, B])(f: (C) ⇒ A)(g: (B) ⇒ D): =>:[C, D]
Functor map on
A
andB
.Functor map on
A
andB
.- Definition Classes
- Profunctor
-
def
empty: PlusEmpty[[α]=>:[α, α]]
monoid
, but universally quantified.monoid
, but universally quantified.- Definition Classes
- Category
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
def
invariantFunctor: InvariantFunctor[[α]=>:[α, α]]
- Definition Classes
- Profunctor
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
mapfst[A, B, C](fab: =>:[A, B])(f: (C) ⇒ A): =>:[C, B]
Contramap on
A
.Contramap on
A
.- Definition Classes
- Arrow → Profunctor
-
def
mapsnd[A, B, C](fab: =>:[A, B])(f: (B) ⇒ C): =>:[A, C]
Functor map on
B
.Functor map on
B
.- Definition Classes
- Arrow → Profunctor
-
def
monoid[A]: Monoid[=>:[A, A]]
The endomorphism monoid, where
zero
=id
andappend
=compose
.The endomorphism monoid, where
zero
=id
andappend
=compose
.- Definition Classes
- Category
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
plus: Plus[[α]=>:[α, α]]
semigroup
, but universally quantified.semigroup
, but universally quantified.- Definition Classes
- Compose
-
def
product[A, B](fab: =>:[A, B]): =>:[(A, A), (B, B)]
Run two
fab
s alongside each other. -
val
profunctorSyntax: ProfunctorSyntax[=>:]
- Definition Classes
- Profunctor
-
def
second[A, B, C](f: =>:[A, B]): =>:[(C, A), (C, B)]
Pass
C
through untouched. -
def
semigroup[A]: Semigroup[=>:[A, A]]
The endomorphism semigroup, where
append
=compose
.The endomorphism semigroup, where
append
=compose
.- Definition Classes
- Compose
-
def
split[A, B, C, D](f: =>:[A, B], g: =>:[C, D]): =>:[(A, C), (B, D)]
Run
fab
andfcd
alongside each other. -
final
def
splitA[A, B, C, D](fab: =>:[A, B], fcd: =>:[C, D]): =>:[(A, C), (B, D)]
Alias for
split
. -
val
splitSyntax: SplitSyntax[=>:]
- Definition Classes
- Split
-
val
strongSyntax: StrongSyntax[=>:]
- Definition Classes
- Strong
-
def
swap[X, Y]: =>:[(X, Y), (Y, X)]
Swaps a pair.
Swaps a pair.
- Definition Classes
- ArrowParent
-
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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )