PathMatcher

pl.iterators.stir.server.PathMatcher
See thePathMatcher companion object
abstract class PathMatcher[L](implicit val ev: Tuple[L]) extends Path => Matching[L]

A PathMatcher tries to match a prefix of a given string and returns either a PathMatcher.Matched instance if matched, otherwise PathMatcher.Unmatched.

Attributes

Companion
object
Source
PathMatcher.scala
Graph
Supertypes
trait Path => Matching[L]
class Object
trait Matchable
class Any
Known subtypes
class NumberMatcher[T]
object HexIntNumber.type
object HexLongNumber.type
object IntNumber.type
object LongNumber.type
object PathEnd.type
object Remaining.type
object RemainingPath.type
object Segment.type
object Slash.type
Show all
Self type

Members list

Value members

Concrete methods

def /: PathMatcher[L]

Alias for slash.

Alias for slash.

Attributes

Source
PathMatcher.scala
def /[R](other: PathMatcher[R])(implicit join: Join[L, R]): PathMatcher[Out]

Alias for slash.

Alias for slash.

Attributes

Source
PathMatcher.scala
def ?(implicit lift: Lift[L, Option]): PathMatcher[Out]
Implicitly added by EnhancedPathMatcher

Attributes

Source
PathMatcher.scala
def append[R](other: PathMatcher[R])(implicit join: Join[L, R]): PathMatcher[Out]

Attributes

Source
PathMatcher.scala
def optional(implicit lift: Lift[L, Option]): PathMatcher[Out]
Implicitly added by EnhancedPathMatcher

Attributes

Source
PathMatcher.scala
def or[R >: L : Tuple](other: PathMatcher[_ <: R]): PathMatcher[R]

Attributes

Source
PathMatcher.scala
def repeat(count: Int)(implicit lift: Lift[L, List]): PathMatcher[Out]

Same as repeat(min = count, max = count).

Same as repeat(min = count, max = count).

Attributes

Source
PathMatcher.scala
def repeat(count: Int, separator: PathMatcher0)(implicit lift: Lift[L, List]): PathMatcher[Out]

Same as repeat(min = count, max = count, separator = separator).

Same as repeat(min = count, max = count, separator = separator).

Attributes

Source
PathMatcher.scala
def repeat(min: Int, max: Int, separator: PathMatcher0)(implicit lift: Lift[L, List]): PathMatcher[Out]

Turns this PathMatcher into one that matches a number of times (with the given separator) and potentially extracts a List of the underlying matcher's extractions. If less than min applications of the underlying matcher have succeeded the produced matcher fails, otherwise it matches up to the given max number of applications. Note that it won't fail even if more than max applications could succeed! The "surplus" path elements will simply be left unmatched.

Turns this PathMatcher into one that matches a number of times (with the given separator) and potentially extracts a List of the underlying matcher's extractions. If less than min applications of the underlying matcher have succeeded the produced matcher fails, otherwise it matches up to the given max number of applications. Note that it won't fail even if more than max applications could succeed! The "surplus" path elements will simply be left unmatched.

The result type depends on the type of the underlying matcher:

If a `matcher` is of type then `matcher.repeat(...)` is of type
`PathMatcher0` `PathMatcher0`
`PathMatcher1[T]` `PathMatcher1[List[T]`
`PathMatcher[L :Tuple]` `PathMatcher[List[L]]`

Attributes

Source
PathMatcher.scala
def slash: PathMatcher[L]

Attributes

Source
PathMatcher.scala
def slash[R](other: PathMatcher[R])(implicit join: Join[L, R]): PathMatcher[Out]

Attributes

Source
PathMatcher.scala
def tflatMap[R : Tuple](f: L => Option[R]): PathMatcher[R]

Attributes

Source
PathMatcher.scala
def tmap[R : Tuple](f: L => R): PathMatcher[R]

Attributes

Source
PathMatcher.scala
def transform[R : Tuple](f: Matching[L] => Matching[R]): PathMatcher[R]

Attributes

Source
PathMatcher.scala

Operator alternative to PathMatchers.not

Operator alternative to PathMatchers.not

Attributes

Source
PathMatcher.scala
def |[R >: L : Tuple](other: PathMatcher[_ <: R]): PathMatcher[R]

Alias for or.

Alias for or.

Attributes

Source
PathMatcher.scala
def ~[R](other: PathMatcher[R])(implicit join: Join[L, R]): PathMatcher[Out]

Alias for append.

Alias for append.

Attributes

Source
PathMatcher.scala

Inherited methods

def andThen[A](g: Matching[L] => A): T1 => A

Attributes

Inherited from:
Function1
def apply(v1: Path): R

Attributes

Inherited from:
Function1
def compose[A](g: A => Path): A => R

Attributes

Inherited from:
Function1
override def toString(): String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Function1 -> Any
Inherited from:
Function1

Implicits

Implicits

implicit val ev: Tuple[L]

Attributes

Source
PathMatcher.scala