package pattern
- Alphabetic
- Public
- All
Type Members
-
class
Compiler[F[_], Expr, Tag, Pat, Out] extends AnyRef
A pattern matching compiler to decision tree, based on _Compiling Successor ML Pattern Guards_ by J.
A pattern matching compiler to decision tree, based on _Compiling Successor ML Pattern Guards_ by J. Reppy and M. Zahir
- case class ConstructorTree[Tag](tag: Tag, args: List[ConstructorTree[Tag]]) extends Product with Serializable
- sealed trait DecisionTree[Expr, Tag, Out] extends AnyRef
- trait Evaluator[Expr, Tag] extends AnyRef
-
trait
IsPattern[Pat, Expr, Tag] extends AnyRef
A type class that describes how the pattern type
Patcan be decomposed into Skeletons.A type class that describes how the pattern type
Patcan be decomposed into Skeletons.Skeletons represent
orpatterns, and are matched left to right. - trait IsTag[Tag] extends Eq[Tag]
-
sealed
trait
NoGuard extends AnyRef
A sealed trait with no implementation so that it has no inhabitant.
A sealed trait with no implementation so that it has no inhabitant. To be used when a pattern language has no guards.
- class PatternException extends Exception
- sealed trait RawSkeleton[Expr, Tag] extends AnyRef
-
trait
Selectable[Expr, Tag] extends AnyRef
Describes the structure of an expression in term of constructor trees that can be selected.
-
sealed
trait
Selector[Expr, Tag] extends AnyRef
A Selector represents the part of the matched input that is under scrutinee during the pattern match.
- sealed trait Skeleton[Expr, Tag] extends AnyRef
Value Members
- object ConstructorTree extends Serializable
- object DecisionTree
- object Evaluator
- object NoGuard
- object RawSkeleton
- object Selectable
- object Selector
- object Skeleton