Trait

org.json4s.scalap

Rule

Related Doc: package scalap

Permalink

trait Rule[-In, +Out, +A, +X] extends (In) ⇒ Result[Out, A, X]

A Rule is a function from some input to a Result. The result may be:

Source
Rule.scala
Linear Supertypes
(In) ⇒ Result[Out, A, X], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Rule
  2. Function1
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def apply(v1: In): Result[Out, A, X]

    Permalink
    Definition Classes
    Function1
  2. abstract val factory: Rules

    Permalink

Concrete Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. def !^[Y](fx2y: (X) ⇒ Y): Rule[In, Out, A, Y]

    Permalink

    Maps an Error

  3. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  4. def -[In2 <: In](exclude: ⇒ Rule[In2, Any, Any, Any]): Rule[In2, Out, A, X]

    Permalink
  5. def -^[B](b: B): Rule[In, Out, B, X]

    Permalink
  6. def -~[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, B, X2]

    Permalink
  7. def -~![Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, B, Any]

    Permalink
  8. def <~:[InPrev, B, X2 >: X](prev: ⇒ Rule[InPrev, In, (A) ⇒ B, X2]): Rule[InPrev, Out, B, X2]

    Permalink

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

  9. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def >->[Out2, B, X2 >: X](fa2resultb: (A) ⇒ Result[Out2, B, X2]): Rule[In, Out2, B, X2]

    Permalink
  11. def >>[Out2, B, X2 >: X](fa2ruleb: (A) ⇒ (Out) ⇒ Result[Out2, B, X2]): Rule[In, Out2, B, X2]

    Permalink
  12. def >>&[B, X2 >: X](fa2ruleb: (A) ⇒ (Out) ⇒ Result[Any, B, X2]): Rule[In, Out, B, X2]

    Permalink
  13. def >>?[Out2, B, X2 >: X](pf: PartialFunction[A, Rule[Out, Out2, B, X2]]): Rule[In, Out2, B, X2]

    Permalink
  14. def >~>[Out2, B1, B2, B >: A, C, X2 >: X](f: (B1, B2) ⇒ (Out) ⇒ Result[Out2, C, X2])(implicit A: (A) ⇒ ~[B1, B2]): Rule[In, Out2, C, X2]

    Permalink

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

  15. def ??(pf: PartialFunction[A, Any]): Rule[In, Out, A, X]

    Permalink
  16. def ^-^[B1, B2 >: A, C](f: (B1, B2) ⇒ C): Rule[In, Out, (B1) ⇒ C, X]

    Permalink

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

  17. def ^^[B](fa2b: (A) ⇒ B): Rule[In, Out, B, X]

    Permalink
  18. def ^^?[B](pf: PartialFunction[A, B]): Rule[In, Out, B, X]

    Permalink
  19. def ^~>~^[B1, B2, B3, B >: A, C](f: (B1, B2, B3) ⇒ C)(implicit A: (A) ⇒ ~[B2, B3]): Rule[In, Out, (B1) ⇒ C, X]

    Permalink

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

  20. def ^~^[B1, B2, B >: A, C](f: (B1, B2) ⇒ C)(implicit A: (A) ⇒ ~[B1, B2]): Rule[In, Out, C, X]

    Permalink

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

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

    Permalink

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

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

    Permalink

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

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

    Permalink

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

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

    Permalink

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

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

    Permalink

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

  26. def andThen[A](g: (Result[Out, A, X]) ⇒ A): (In) ⇒ A

    Permalink
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  27. def as(name: String): Rule[In, Out, A, X] with Name

    Permalink
  28. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. def compose[A](g: (A) ⇒ In): (A) ⇒ Result[Out, A, X]

    Permalink
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  31. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  33. def filter(f: (A) ⇒ Boolean): Rule[In, Out, A, X]

    Permalink
  34. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  35. def flatMap[Out2, B, X2 >: X](fa2ruleb: (A) ⇒ (Out) ⇒ Result[Out2, B, X2]): Rule[In, Out2, B, X2]

    Permalink
  36. final def getClass(): Class[_]

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

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

    Permalink
    Definition Classes
    Any
  39. def map[B](fa2b: (A) ⇒ B): Rule[In, Out, B, X]

    Permalink
  40. def mapResult[Out2, B, Y](f: (Result[Out, A, X]) ⇒ Result[Out2, B, Y]): Rule[In, Out2, B, Y]

    Permalink
  41. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  44. def orElse[In2 <: In, Out2 >: Out, A2 >: A, X2 >: X](other: ⇒ Rule[In2, Out2, A2, X2]): Rule[In2, Out2, A2, X2]

    Permalink
  45. def orError[In2 <: In]: Rule[In, Out, A, Any]

    Permalink
  46. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  51. def |[In2 <: In, Out2 >: Out, A2 >: A, X2 >: X](other: ⇒ Rule[In2, Out2, A2, X2]): Rule[In2, Out2, A2, X2]

    Permalink
  52. def ~[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, ~[A, B], X2]

    Permalink
  53. def ~![Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, ~[A, B], Any]

    Permalink
  54. def ~++[Out2, B >: A, X2 >: X](next: ⇒ Rule[Out, Out2, Seq[B], X2]): Rule[In, Out2, List[B], X2]

    Permalink
  55. def ~-[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, A, X2]

    Permalink
  56. def ~-![Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, B, X2]): Rule[In, Out2, A, Any]

    Permalink
  57. def ~>[Out2, B, X2 >: X](next: ⇒ Rule[Out, Out2, (A) ⇒ B, X2]): Rule[In, Out2, B, X2]

    Permalink

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped