Miss

com.phasmidsoftware.matchers.Matchers.Miss
case class Miss[T, +R](msg: String, t: T) extends Unsuccessful[R, String]

Unsuccessful match (Miss).

Type parameters

R

the result-type of this.

T

the underlying type of t.

Value parameters

t

the value that was not matched.

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Matchers.this.Unsuccessful[R, String]
trait Matchers.this.MatchResult[R]
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def &[S >: R, U](m: => Matchers.this.Matcher[S, U]): Matchers.this.MatchResult[U]

Composition method.

Composition method.

Type parameters

S

the underlying type of the input to m (S is a super-class of R).

U

the underlying type of the returned value.

Value parameters

m

a Matcher of S to T.

Attributes

Returns

a Miss[U] with the same message as this.

def andThen[S](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[R ~ S]

Type parameters

S

the underlying type of s.

Value parameters

sm

a MatchResult[S] (ignored).

Attributes

Returns

Miss(t).

def flatMap[S](f: R => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[S]

Type parameters

S

the underlying type of the returned MatchResult.

Value parameters

f

a function of R => MatchResult[S] (ignored).

Attributes

Returns

Miss(t).

def getOrElse[S >: R](s: => S): S

Method to get the value of this MatchResult, otherwise return the parameter s.

Method to get the value of this MatchResult, otherwise return the parameter s.

Type parameters

S

a super-class of R.

Value parameters

s

a call-by-name value to be used if this is unsuccessful.

Attributes

Returns

s.

def guard[S](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[S]

Method to compose this MatchResult with sm. It this is successful, then sm will be returned. Otherwise, an Unsuccessful result will be returned.

Method to compose this MatchResult with sm. It this is successful, then sm will be returned. Otherwise, an Unsuccessful result will be returned.

Type parameters

S

the type of the resulting MatchResult.

Value parameters

sm

the MatchResult that must follow this MatchResult for a successful outcome.

Attributes

Returns

a Miss(msg, t).

def identify(w: String): Matchers.this.MatchResult[R]

Identifies this Miss with the given string.

Identifies this Miss with the given string.

Value parameters

w

the input string

Attributes

Returns

a Miss representing the outcome of the identification

def invert: Matchers.this.MatchResult[R]

Inverts the outcome of this MatchResult. Specifically, returns a Miss result based on the original value.

Inverts the outcome of this MatchResult. Specifically, returns a Miss result based on the original value.

Attributes

Returns

a Miss result using the original value t.

def orElse[S >: R](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[S]

Alternation method that takes a MatchResult as the alternative.

Alternation method that takes a MatchResult as the alternative.

Type parameters

S

the underlying type of the result and a super-class of R.

Value parameters

sm

a MatchResult that will be returned.

Attributes

Returns

sm.

override def toString: String

Attributes

Returns

a String representing this Miss.

Definition Classes
Any
def |[S >: R](m: => Matchers.this.Matcher[Any, S]): Matchers.this.MatchResult[S]

Alternation method that takes a Matcher as the alternative. If this MatchResult is empty, then return the value of m applied to the input.

Alternation method that takes a Matcher as the alternative. If this MatchResult is empty, then return the value of m applied to the input.

Value parameters

m

a Matcher of Any to R.

Attributes

Returns

m(t).

Inherited methods

def &&[S](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[S]

Method to compose this MatchResult with sm. It this is successful, then sm will be returned. Otherwise, an Unsuccessful result will be returned.

Method to compose this MatchResult with sm. It this is successful, then sm will be returned. Otherwise, an Unsuccessful result will be returned.

Similar to ~ except that this MatchResult[R] is discarded and not part of the result. In other words, this acts purely as a guard. This method simply invokes guard(sm).

Type parameters

S

the type of the resulting MatchResult.

Value parameters

sm

the MatchResult that must follow this MatchResult for a successful outcome.

Attributes

Returns

a MatchResult[S] which is the result of calling guard(sm).

Inherited from:
MatchResult
def accumulate[S, U >: R](accumulator: (R, S) => U)(sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[U]

Method to accumulate this MatchResult[R] with a MatchResult[S], given a function which can combine the wrapped elements.

Method to accumulate this MatchResult[R] with a MatchResult[S], given a function which can combine the wrapped elements.

Type parameters

S

the underlying type of sm.

U

the underlying type of the result, which is a super-class of R.

Value parameters

accumulator

a function of type (R, S) => U.

sm

a MatchResult[S].

Attributes

Returns

a MatchResult[U].

Inherited from:
MatchResult
def combine[S, U](combiner: (R, S) => U)(sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[U]

Method to combine this MatchResult[R] with a MatchResult[S], given a function which can combine the wrapped elements.

Method to combine this MatchResult[R] with a MatchResult[S], given a function which can combine the wrapped elements.

Type parameters

S

the underlying type of sm.

Value parameters

combiner

a function of type (R, S) => U.

sm

a MatchResult[U].

Attributes

Returns

a MatchResult[U].

Inherited from:
MatchResult
def filter(p: R => Boolean): Matchers.this.MatchResult[R]

Filters this MatchResult with the provided predicate.

Filters this MatchResult with the provided predicate.

If this is a Miss, then it is returned as is. If this is a Match, and the given predicate p is applied to its value. If the result of applying the predicate is true, then this Match is returned. Otherwise, this method returns a Miss.

Value parameters

p

A predicate function that takes a value of type R and returns a Boolean.

Attributes

Returns

A MatchResult[R] which is either the current instance if the predicate matches, or a Miss.

Inherited from:
MatchResult
def filterNot(p: R => Boolean): Matchers.this.MatchResult[R]

Filters the current MatchResult (if successful) with the provided predicate. If the predicate evaluates to false for the result of this MatchResult, the current instance is returned. Otherwise, it returns a Miss. If this is a Miss then that is returned.

Filters the current MatchResult (if successful) with the provided predicate. If the predicate evaluates to false for the result of this MatchResult, the current instance is returned. Otherwise, it returns a Miss. If this is a Miss then that is returned.

Value parameters

p

A predicate function that takes a value of type R and returns a Boolean.

Attributes

Returns

A MatchResult[R] which is either the current instance if the predicate matches, or a Miss.

Inherited from:
MatchResult
def foreach(f: R => Unit): Unit

Do nothing.

Do nothing.

Value parameters

f

a function of R => Unit (ignored).

Attributes

Inherited from:
Unsuccessful
def get: R

get method (will always throw an exception).

get method (will always throw an exception).

Attributes

Throws
Throwable

(a MatcherException) or other Throwable (e).

Inherited from:
Unsuccessful
def isEmpty: Boolean

Method to determine if this is unsuccessful.

Method to determine if this is unsuccessful.

Attributes

Returns

the negation of successful.

Inherited from:
MatchResult
def map[S](f: R => S): Matchers.this.MatchResult[S]

Map method.

Map method.

Type parameters

S

the underlying type of the returned MatchResult.

Value parameters

f

a function of R => S.

Attributes

Returns

MatchResult[S].

Inherited from:
MatchResult
def productElementNames: Iterator[String]

An iterator over the names of all the elements of this product.

An iterator over the names of all the elements of this product.

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

An iterator over all the elements of this product.

An iterator over all the elements of this product.

Attributes

Returns

in the default implementation, an Iterator[Any]

Inherited from:
Product
def success[S](s: => S): Matchers.this.MatchResult[S]

"unit" method for a successful match.

"unit" method for a successful match.

Type parameters

S

the underlying type of the result.

Value parameters

s

the call-by-name value of the result.

Attributes

Returns

a Match[S] with value s (unless s throws an exception, in which case the result will be an Error).

Inherited from:
MatchResult
def successful: Boolean

Attributes

Returns

false.

Inherited from:
Unsuccessful
def ||[S >: R](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[S]

Alternation method that takes a MatchResult as the alternative. Identical to orElse.

Alternation method that takes a MatchResult as the alternative. Identical to orElse.

Type parameters

S

the type of the result and a super-type of R.

Value parameters

sm

a call-by-name MatchResult that will be used if this is empty.

Attributes

Returns

a MatchResult[S] which is the result of invoking orElse(sm).

Inherited from:
MatchResult
def ~[S](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[R ~ S]

Method to compose this MatchResult with sm. The results of this and of sm are combined into one ~. ~ is a synonym of andThen.

Method to compose this MatchResult with sm. The results of this and of sm are combined into one ~. ~ is a synonym of andThen.

Type parameters

S

the underlying type of s.

Value parameters

sm

a call-by-name MatchResult[S].

Attributes

Returns

a MatchResult[R ~ S].

Inherited from:
MatchResult
def ~~[S](sm: => Matchers.this.MatchResult[S]): Matchers.this.MatchResult[R ~ S]

Method to compose this MatchResult with sm. If either this is a Match or sm is a Match, the result will be a Match. CONSIDER having two nested match clauses such that sm would not be evaluated if this was an Error.

Method to compose this MatchResult with sm. If either this is a Match or sm is a Match, the result will be a Match. CONSIDER having two nested match clauses such that sm would not be evaluated if this was an Error.

Type parameters

S

the underlying type of s.

Value parameters

sm

a call-by-name MatchResult[S].

Attributes

Returns

a MatchResult[R ~ S].

Inherited from:
MatchResult