Level

case class Level[-A, B, C](lvls: Levels[A, B], ops: Ops[B, C]) extends Levels[A, C]

This represents a single new level of the hierarchy, with stronger precedence than its tail.

This represents a single new level of the hierarchy, with stronger precedence than its tail.

Type Params
A

The base type accepted by the layer below

B

The intermediate type produced by the layer below to be fed into this level

C

The type of structure produced by this layer

Value Params
lvls

The next, stronger, levels in the precedence table

ops

The operators accepted at this level

Returns

A larger precedence table transforming atoms of type A into a structure of type C.

Since

3.0.0

trait Serializable
trait Product
trait Equals
trait Levels[A, C]
class Object
trait Matchable
class Any

Value members

Inherited methods

final def +:[C](ops: Ops[C, C]): Levels[A, C]

Builds a larger parser precedence table from weakest to strongest

Builds a larger parser precedence table from weakest to strongest

Type Params
C

The new result type for the larger table

Value Params
ops

The operators that transform the next, stronger, layer into the new result

Inherited from
Levels
final def :+[C](ops: Ops[C, C]): Levels[A, C]

Builds a larger precedence table from strongest to weakest

Builds a larger precedence table from strongest to weakest

Type Params
C

The new result type for the larger table

Value Params
ops

The operators that transform the previous, stronger, layer into the new result

Inherited from
Levels
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product