object lift
This module provides the "lift syntax", which enables a lift combinator on functions
of arities up to 22, applying the function across the results of several parsers.
- Source
- lift.scala
scala> import parsley.character.char scala> import parsley.implicits.lift.{Lift2, Lift3} scala> case class Add(x: Int, y: Int) scala> val p = Add.lift(char('a') #> 4, char('b') #> 5) scala> p.parse("ab") val res0 = Success(Add(4, 5)) scala> val f = (x: Int, y: Int, z: Int) => x * y + z scala> val q = f.lift(char('a') #> 3, char('b') #> 2, char('c') #> 5) scala> q.parse("abc") val res1 = Success(11) scala> q.parse("ab") val res2 = Failure(..)
- Since
3.0.0
- Note
a limitation of this syntax is that it requires the function's type to be fully known. For a version of this syntax that behaves better with type inference, see
zipped.
- Alphabetic
- By Inheritance
- lift
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
implicit final
class
Lift0[R] extends AnyVal
This class enables the
liftsyntax on any value, which functions aspureas a postfix method. -
implicit final
class
Lift1[T1, R] extends AnyVal
This class enables the
liftsyntax on functions of arity one: a flippedmap. -
implicit final
class
Lift10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, R] extends AnyVal
This class enables the
liftsyntax on functions of arity ten. -
implicit final
class
Lift11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, R] extends AnyVal
This class enables the
liftsyntax on functions of arity eleven. -
implicit final
class
Lift12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, R] extends AnyVal
This class enables the
liftsyntax on functions of arity twelve. -
implicit final
class
Lift13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, R] extends AnyVal
This class enables the
liftsyntax on functions of arity thirteen. -
implicit final
class
Lift14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, R] extends AnyVal
This class enables the
liftsyntax on functions of arity fourteen. -
implicit final
class
Lift15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, R] extends AnyVal
This class enables the
liftsyntax on functions of arity fifteen. -
implicit final
class
Lift16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, R] extends AnyVal
This class enables the
liftsyntax on functions of arity sixteen. -
implicit final
class
Lift17[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, R] extends AnyVal
This class enables the
liftsyntax on functions of arity seventeen. -
implicit final
class
Lift18[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, R] extends AnyVal
This class enables the
liftsyntax on functions of arity eighteen. -
implicit final
class
Lift19[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, R] extends AnyVal
This class enables the
liftsyntax on functions of arity nineteen. -
implicit final
class
Lift2[T1, T2, R] extends AnyVal
This class enables the
liftsyntax on functions of arity two. -
implicit final
class
Lift20[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, R] extends AnyVal
This class enables the
liftsyntax on functions of arity twenty. -
implicit final
class
Lift21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, R] extends AnyVal
This class enables the
liftsyntax on functions of arity twenty-one. -
implicit final
class
Lift22[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, R] extends AnyVal
This class enables the
liftsyntax on functions of arity twenty-two. -
implicit final
class
Lift3[T1, T2, T3, R] extends AnyVal
This class enables the
liftsyntax on functions of arity three. -
implicit final
class
Lift4[T1, T2, T3, T4, R] extends AnyVal
This class enables the
liftsyntax on functions of arity four. -
implicit final
class
Lift5[T1, T2, T3, T4, T5, R] extends AnyVal
This class enables the
liftsyntax on functions of arity five. -
implicit final
class
Lift6[T1, T2, T3, T4, T5, T6, R] extends AnyVal
This class enables the
liftsyntax on functions of arity six. -
implicit final
class
Lift7[T1, T2, T3, T4, T5, T6, T7, R] extends AnyVal
This class enables the
liftsyntax on functions of arity seven. -
implicit final
class
Lift8[T1, T2, T3, T4, T5, T6, T7, T8, R] extends AnyVal
This class enables the
liftsyntax on functions of arity eight. -
implicit final
class
Lift9[T1, T2, T3, T4, T5, T6, T7, T8, T9, R] extends AnyVal
This class enables the
liftsyntax on functions of arity nine.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
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( ... ) @native()