Scala Bytecode Parser2.12.2-20170504-135222-21d12e9 < Back
 

# Packages

-  package root
  Definition Classes
    root
-  package scala
  Definition Classes
    root
-  package tools
  Definition Classes
    scala
-  package scalap
  Definition Classes
    tools
-  package scalax
  Definition Classes
    scalap
-  package rules
  Definition Classes
    scalax
-  package scalasig
  Definition Classes
    rules
- Choice
- DefaultMemoisable
- Error
- Failure
- InRule
- Memoisable
- MemoisableRules
- Name
- NoSuccess
- Result
- Rule
- Rules
- RulesWithState
- ScalaSigParserError
- SeqRule
- StateRules
- Success
- ~

t

scala.tools.scalap.scalax.rules

# Choice 

###

#### trait Choice[-In, +Out, +A, +X] extends Rule[In, Out, A, X]

Source
  Rule.scala

Linear Supertypes
Rule[In, Out, A, X], (In) ⇒ Result[Out, A, X], AnyRef, Any
Type Hierarchy
 
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Choice
2. Rule
3. Function1
4. AnyRef
5. Any

Implicitly

1. by any2stringadd
2. by StringFormat
3. by Ensuring
4. by ArrowAssoc

1. Hide All
2. Show All

Visibility

1. Public
2. All

### Abstract Value Members

1.  abstract def choices: List[Rule[In, Out, A, X]]
2.  abstract val factory: Rules
   Definition Classes
     Rule

### Concrete Value Members

1.  final def !=(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
2.  def !^[Y](fx2y: (X) ⇒ Y): Rule[In, Out, A, Y]

   Maps an Error

   Maps an Error

   Definition Classes
     Rule
3.  final def ##(): Int
   Definition Classes
     AnyRef → Any
4.  def +(other: String): String
   Implicit
     This member is added by an implicit conversion from Choice[In, Out, A, X] to any2stringadd[Choice[In, Out, A, X]] performed by method any2stringadd in scala.Predef.
   Definition Classes
     any2stringadd
5.  def -[In2 <: In](exclude: ⇒ Rule[In2, Any, Any, Any]): Rule[In2, Out, A, X]
   Definition Classes
     Rule
6.  def ->[B](y: B): (Choice[In, Out, A, X], B)
   Implicit
     This member is added by an implicit conversion from Choice[In, Out, A, X] to ArrowAssoc[Choice[In, Out, A, X]] performed by method ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()
7.  def -^[B](b: B): Rule[In, Out, B, X]
   Definition Classes
     Rule
8.  def -~[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, B, X2]
   Definition Classes
     Rule
9.  def -~![Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, B, Any]
   Definition Classes
     Rule
10.  def <~:[InPrev, B, X2 >: X](prev: ⇒ Rule[InPrev, In, (A) ⇒ B, X2]): Rule[InPrev, Out, B, X2]

    Apply the result of this rule to the function returned by the previous rule

    Apply the result of this rule to the function returned by the previous rule

    Definition Classes
      Rule
11.  final def ==(arg0: Any): Boolean
    Definition Classes
      AnyRef → Any
12.  def >->[Out2, B, X2 >: X](fa2resultb: (A) ⇒ Result[Out2, B, X2]): Rule[In, Out2, B, X2]
    Definition Classes
      Rule
13.  def >>[Out2, B, X2 >: X](fa2ruleb: (A) ⇒ (Out) ⇒ Result[Out2, B, X2]): Rule[In, Out2, B, X2]
    Definition Classes
      Rule
14.  def >>&[B, X2 >: X](fa2ruleb: (A) ⇒ (Out) ⇒ Result[Any, B, X2]): Rule[In, Out, B, X2]
    Definition Classes
      Rule
15.  def >>?[Out2, B, X2 >: X](pf: PartialFunction[A, Rule[Out, Out2, B, X2]]): Rule[In, Out2, B, X2]
    Definition Classes
      Rule
16.  def >~>[Out2, B1, B2, B >: A, C, X2 >: X](f: (B1, B2) ⇒ (Out) ⇒ Result[Out2, C, X2])(implicit arg0: (B) ⇒ ~[B1, B2]): Rule[In, Out2, C, X2]

    >~>(f) is equivalent to >> { case b1 ~ b2 => f(b1, b2) }

    >~>(f) is equivalent to >> { case b1 ~ b2 => f(b1, b2) }

    Definition Classes
      Rule
17.  def ??(pf: PartialFunction[A, Any]): Rule[In, Out, A, X]
    Definition Classes
      Rule
18.  def ^-^[B1, B2 >: A, C](f: (B1, B2) ⇒ C): Rule[In, Out, (B1) ⇒ C, X]

    -(f) is equivalent to ^^ { b2 => b1 => f(b1, b2) }

    -(f) is equivalent to ^^ { b2 => b1 => f(b1, b2) }

    Definition Classes
      Rule
19.  def ^^[B](fa2b: (A) ⇒ B): Rule[In, Out, B, X]
    Definition Classes
      Rule
20.  def ^^?[B](pf: PartialFunction[A, B]): Rule[In, Out, B, X]
    Definition Classes
      Rule
21.  def ^~>~^[B1, B2, B3, B >: A, C](f: (B1, B2, B3) ⇒ C)(implicit arg0: (B) ⇒ ~[B2, B3]): Rule[In, Out, (B1) ⇒ C, X]

    ~>~(f) is equivalent to ^^ { case b2 ~ b3 => b1 => f(b1, b2, b3) }

    ~>~(f) is equivalent to ^^ { case b2 ~ b3 => b1 => f(b1, b2, b3) }

    Definition Classes
      Rule
22.  def ^~^[B1, B2, B >: A, C](f: (B1, B2) ⇒ C)(implicit arg0: (B) ⇒ ~[B1, B2]): Rule[In, Out, C, X]

    ~(f) is equivalent to ^^ { case b1 ~ b2 => f(b1, b2) }

    ~(f) is equivalent to ^^ { case b1 ~ b2 => f(b1, b2) }

    Definition Classes
      Rule
23.  def ^~~^[B1, B2, B3, B >: A, C](f: (B1, B2, B3) ⇒ C)(implicit arg0: (B) ⇒ ~[~[B1, B2], B3]): Rule[In, Out, C, X]

    ~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 => f(b1, b2, b3) }

    ~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 => f(b1, b2, b3) }

    Definition Classes
      Rule
24.  def ^~~~^[B1, B2, B3, B4, B >: A, C](f: (B1, B2, B3, B4) ⇒ C)(implicit arg0: (B) ⇒ ~[~[~[B1, B2], B3], B4]): Rule[In, Out, C, X]

    ~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 => f(b1, b2, b3, b4) }

    ~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 => f(b1, b2, b3, b4) }

    Definition Classes
      Rule
25.  def ^~~~~^[B1, B2, B3, B4, B5, B >: A, C](f: (B1, B2, B3, B4, B5) ⇒ C)(implicit arg0: (B) ⇒ ~[~[~[~[B1, B2], B3], B4], B5]): Rule[In, Out, C, X]

    ~~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 ~ b5 => f(b1, b2, b3, b4, b5) }

    ~~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 ~ b5 => f(b1, b2, b3, b4, b5) }

    Definition Classes
      Rule
26.  def ^~~~~~^[B1, B2, B3, B4, B5, B6, B >: A, C](f: (B1, B2, B3, B4, B5, B6) ⇒ C)(implicit arg0: (B) ⇒ ~[~[~[~[~[B1, B2], B3], B4], B5], B6]): Rule[In, Out, C, X]

    ~~~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 ~ b5 ~ b6 => f(b1, b2, b3, b4, b5, b6) }

    ~~~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 ~ b5 ~ b6 => f(b1, b2, b3, b4, b5, b6) }

    Definition Classes
      Rule
27.  def ^~~~~~~^[B1, B2, B3, B4, B5, B6, B7, B >: A, C](f: (B1, B2, B3, B4, B5, B6, B7) ⇒ C)(implicit arg0: (B) ⇒ ~[~[~[~[~[~[B1, B2], B3], B4], B5], B6], B7]): Rule[In, Out, C, X]

    ~~~~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 ~ b5 ~ b6 => f(b1, b2, b3, b4, b5, b6) }

    ~~~~~~(f) is equivalent to ^^ { case b1 ~ b2 ~ b3 ~ b4 ~ b5 ~ b6 => f(b1, b2, b3, b4, b5, b6) }

    Definition Classes
      Rule
28.  def andThen[A](g: (Result[Out, A, X]) ⇒ A): (In) ⇒ A
    Definition Classes
      Function1
    Annotations
      @unspecialized()
29.  def apply(in: In): Result[Out, A, X]
    Definition Classes
      Choice → Function1
30.  def as(name: String): Rule[In, Out, A, X] with Name
    Definition Classes
      Rule
31.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
32.  def clone(): AnyRef
    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
33.  def compose[A](g: (A) ⇒ In): (A) ⇒ Result[Out, A, X]
    Definition Classes
      Function1
    Annotations
      @unspecialized()
34.  def ensuring(cond: (Choice[In, Out, A, X]) ⇒ Boolean, msg: ⇒ Any): Choice[In, Out, A, X]
    Implicit
      This member is added by an implicit conversion from Choice[In, Out, A, X] to Ensuring[Choice[In, Out, A, X]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
35.  def ensuring(cond: (Choice[In, Out, A, X]) ⇒ Boolean): Choice[In, Out, A, X]
    Implicit
      This member is added by an implicit conversion from Choice[In, Out, A, X] to Ensuring[Choice[In, Out, A, X]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
36.  def ensuring(cond: Boolean, msg: ⇒ Any): Choice[In, Out, A, X]
    Implicit
      This member is added by an implicit conversion from Choice[In, Out, A, X] to Ensuring[Choice[In, Out, A, X]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
37.  def ensuring(cond: Boolean): Choice[In, Out, A, X]
    Implicit
      This member is added by an implicit conversion from Choice[In, Out, A, X] to Ensuring[Choice[In, Out, A, X]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
38.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
39.  def equals(arg0: Any): Boolean
    Definition Classes
      AnyRef → Any
40.  def filter(f: (A) ⇒ Boolean): Rule[In, Out, A, X]
    Definition Classes
      Rule
41.  def finalize(): Unit
    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )
42.  def flatMap[Out2, B, X2 >: X](fa2ruleb: (A) ⇒ (Out) ⇒ Result[Out2, B, X2]): Rule[In, Out2, B, X2]
    Definition Classes
      Rule
43.  def formatted(fmtstr: String): String
    Implicit
      This member is added by an implicit conversion from Choice[In, Out, A, X] to StringFormat[Choice[In, Out, A, X]] performed by method StringFormat in scala.Predef.
    Definition Classes
      StringFormat
    Annotations
      @inline()
44.  final def getClass(): Class[_]
    Definition Classes
      AnyRef → Any
45.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
46.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
47.  def map[B](fa2b: (A) ⇒ B): Rule[In, Out, B, X]
    Definition Classes
      Rule
48.  def mapResult[Out2, B, Y](f: (Result[Out, A, X]) ⇒ Result[Out2, B, Y]): Rule[In, Out2, B, Y]
    Definition Classes
      Rule
49.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
50.  final def notify(): Unit
    Definition Classes
      AnyRef
51.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
52.  def orElse[In2 <: In, Out2 >: Out, A2 >: A, X2 >: X](other: ⇒ Rule[In2, Out2, A2, X2]): Rule[In2, Out2, A2, X2]
    Definition Classes
      Choice → Rule
53.  def orError[In2 <: In]: Rule[In, Out, A, Any]
    Definition Classes
      Rule
54.  final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
      AnyRef
55.  def toString(): String
    Definition Classes
      Function1 → AnyRef → Any
56.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
57.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
58.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
59.  def |[In2 <: In, Out2 >: Out, A2 >: A, X2 >: X](other: ⇒ Rule[In2, Out2, A2, X2]): Rule[In2, Out2, A2, X2]
    Definition Classes
      Rule
60.  def ~[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, ~[A, B], X2]
    Definition Classes
      Rule
61.  def ~![Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, ~[A, B], Any]
    Definition Classes
      Rule
62.  def ~++[Out2, B >: A, X2 >: X](next: ⇒ Rule[Out, Out2, Seq[B], X2]): Rule[In, Out2, collection.immutable.List[B], X2]
    Definition Classes
      Rule
63.  def ~-[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, A, X2]
    Definition Classes
      Rule
64.  def ~-![Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, A, Any]
    Definition Classes
      Rule
65.  def ~>[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, (A) ⇒ B, X2]): Rule[In, Out2, B, X2]

    Apply the result of this rule to the function returned by the next rule

    Apply the result of this rule to the function returned by the next rule

    Definition Classes
      Rule
66.  def →[B](y: B): (Choice[In, Out, A, X], B)
    Implicit
      This member is added by an implicit conversion from Choice[In, Out, A, X] to ArrowAssoc[Choice[In, Out, A, X]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
      ArrowAssoc

### Inherited from Rule[In, Out, A, X]

### Inherited from (In) ⇒ Result[Out, A, X]

### Inherited from AnyRef

### Inherited from Any

### Inherited by implicit conversion any2stringadd from Choice[In, Out, A, X] to any2stringadd[Choice[In, Out, A, X]]

### Inherited by implicit conversion StringFormat from Choice[In, Out, A, X] to StringFormat[Choice[In, Out, A, X]]

### Inherited by implicit conversion Ensuring from Choice[In, Out, A, X] to Ensuring[Choice[In, Out, A, X]]

### Inherited by implicit conversion ArrowAssoc from Choice[In, Out, A, X] to ArrowAssoc[Choice[In, Out, A, X]]

### Ungrouped