object SOps
This helper object builds values of Ops[A, B]
where A <: B
, for subtyped heterogeneous precedence parsing.
- Source
- SmartOps.scala
- Since
3.0.0
- Alphabetic
- By Inheritance
- SOps
- AnyRef
- Any
- Hide All
- Show All
- 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
- def apply[B, A <: B](fixity: Fixity)(ops: Parsley[Op[A, B]]*): Ops[A, B]
This function builds an
Ops
object representing many operators found at the same precedence level, with a given fixity.This function builds an
Ops
object representing many operators found at the same precedence level, with a given fixity.The operators found on the level constructed by this function are heterogeneous: the type of the level below may vary from the types of the values produced at this level. It is constrained, however, such that values of the layer below must be upcastable into types generated by this layer: one layer must be a subtype of the other.
Using path-dependent typing, the given fixity describes the shape of the operators expected. For more information see the Parsley wiki.
- B
the type produced/consumed by the operators, must be a supertype of
A
.- A
the base type consumed by the operators.
- fixity
the fixity of the operators described.
- ops
the operators themselves, provided variadically.
- Since
3.0.0
- Note
currently a bug in scaladoc incorrect displays this functions type, it should be:
,fixity.Op[A, B]
, NOTOp[A, B]
.the order of types in this method is reversed compared with GOps.apply, this is due to a Scala typing issue.
- See also
- 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])
- final def getClass(): Class[_ <: AnyRef]
- 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(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()