trait ImplicitConversions extends AnyRef
This object contains implicit conversions that come in handy when using the ^^ combinator.
Refer to scala.util.parsing.combinator.Parsers to construct an AST from the concrete syntax.
The reason for this is that the sequential composition combinator (~) combines its constituents
into a ~. When several ~s are combined, this results in nested ~s (to the left).
The flatten* coercions makes it easy to apply an n-argument function to a nested ~ of
depth n-1
The headOptionTailToFunList converts a function that takes a List[A] to a function that
accepts a ~[A, Option[List[A]]] (this happens when parsing something of the following
shape: p ~ opt("." ~ repsep(p, ".")) -- where p is a parser that yields an A).
- Self Type
- ImplicitConversions with Parsers
- Source
- ImplicitConversions.scala
Linear Supertypes
Type Hierarchy
Ordering
- Alphabetic
- By Inheritance
Inherited
- ImplicitConversions
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
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(classOf[java.lang.CloneNotSupportedException]) @native()
 
-   final  def eq(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-    def equals(arg0: AnyRef): Boolean- Definition Classes
- AnyRef → Any
 
-    def finalize(): Unit- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
 
-  implicit def flatten2[A, B, C](f: (A, B) => C): ((ImplicitConversions.this)#~[A, B]) => C
-  implicit def flatten3[A, B, C, D](f: (A, B, C) => D): ((ImplicitConversions.this)#~[(ImplicitConversions.this)#~[A, B], C]) => D
-  implicit def flatten4[A, B, C, D, E](f: (A, B, C, D) => E): ((ImplicitConversions.this)#~[(ImplicitConversions.this)#~[(ImplicitConversions.this)#~[A, B], C], D]) => E
-  implicit def flatten5[A, B, C, D, E, F](f: (A, B, C, D, E) => F): ((ImplicitConversions.this)#~[(ImplicitConversions.this)#~[(ImplicitConversions.this)#~[(ImplicitConversions.this)#~[A, B], C], D], E]) => F
-   final  def getClass(): Class[_ <: AnyRef]- Definition Classes
- AnyRef → Any
- Annotations
- @native()
 
-    def hashCode(): Int- Definition Classes
- AnyRef → Any
- Annotations
- @native()
 
-  implicit def headOptionTailToFunList[A, T](f: (List[A]) => T): ((ImplicitConversions.this)#~[A, Option[List[A]]]) => T
-   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(classOf[java.lang.InterruptedException])
 
-   final  def wait(arg0: Long, arg1: Int): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
 
-   final  def wait(arg0: Long): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()