Pattern

object Pattern
Companion:
class
Source:
Pattern.scala
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Pattern.type

Type members

Classlikes

case class Close[Guard, Tag](tag: Option[Tag]) extends Pattern[Guard, Tag]

Matches some close tag.

Matches some close tag.

Source:
Pattern.scala
case class EOS[Guard, Tag]() extends Pattern[Guard, Tag]

Matches the end of stream.

Matches the end of stream.

Source:
Pattern.scala
case class Guarded[Guard, Tag](inner: Pattern[Guard, Tag], guard: Guard) extends Pattern[Guard, Tag]

A guarded pattern.

A guarded pattern.

Source:
Pattern.scala
case class Input[Guard, Tag](q: Option[Int], d: Option[Int], inner: Pattern[Guard, Tag]) extends Pattern[Guard, Tag]

Matches the input in a state at a depth for some input pattern.

Matches the input in a state at a depth for some input pattern.

Source:
Pattern.scala
case class Leaf[Guard, Tag](value: Option[Tag]) extends Pattern[Guard, Tag]

Matches some leaf value.

Matches some leaf value.

Source:
Pattern.scala
case class Open[Guard, Tag](tag: Option[Tag]) extends Pattern[Guard, Tag]

Matches some open tag.

Matches some open tag.

Source:
Pattern.scala
case class Or[Guard, Tag](patterns: Type[Pattern[Guard, Tag]]) extends Pattern[Guard, Tag]

Alternative, matched from left to right.

Alternative, matched from left to right.

Source:
Pattern.scala
case class Wildcard[Guard, Tag]() extends Pattern[Guard, Tag]

Matches anything.

Matches anything.

Source:
Pattern.scala

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from:
Mirror
Source:
Mirror.scala

The name of the type

The name of the type

Inherited from:
Mirror
Source:
Mirror.scala

Implicits

Implicits

implicit def PatternIsPattern[G, T]: IsPattern[Pattern[G, T], G, Tag[T]]