NormalizingEquivalence
An Equivalence[A]
implementation that determines the equality of two objects by normalizing
one or both objects, then comparing the results using an “after normalization” Equivalence
referenced from
the afterNormalizationEquivalence
member. By default, the afterNormalizationEquivalence
is
an instance of Equivalence.default[A]
.
NormalizingEquivalence
is returned by the Explicitly
DSL's “after
being
”
syntax, using for the afterNormalizationEquivalence
the implicit Equivalence
in scope for the type
of Normalization
passed to being
. Here's an example:
scala> import org.scalactic._ import org.scalactic._ scala> import Explicitly._ import Explicitly._ scala> val lowerCased: Normalization[String] = StringNormalizations.lowerCased lowerCased: org.scalactic.Normalization[String] = lowerCased scala> after being lowerCased res0: org.scalactic.NormalizingEquivalence[String] = ComposedNormalizingEquivalence(Equality.default,lowerCased)
- Source:
- NormalizingEquivalence.scala
Value members
Abstract methods
Returns a normalized form of the passed object.
Returns a normalized form of the passed object.
If the passed object is already in normal form, this method may return the same instance passed.
- Type parameters:
- A
the type of the object to normalize
- Value parameters:
- a
the object to normalize
- Returns:
the normalized form of the passed object
- Source:
- NormalizingEquivalence.scala
Concrete methods
Returns a new NormalizingEquivalence
that combines this and the passed Normalization
.
Returns a new NormalizingEquivalence
that combines this and the passed Normalization
.
The normalized
method of the NormalizingEquivalence
's returned by this method returns a result
obtained by forwarding the passed value first to this NormalizingEquivalence
's implementation of the method,
then passing that result to the passed Normalization
's implementation of the method.
Essentially, the body of the composed normalized
method is:
uniformityPassedToAnd.normalized(uniformityOnWhichAndWasInvoked.normalized(a))
- Value parameters:
- other
a
Normalization
to 'and' with this one
- Returns:
a
NormalizingEquivalence
representing the composition of this and the passedNormalization
- Source:
- NormalizingEquivalence.scala
Determines the equality of two objects by normalizing the left-hand value, a
, and the right-hand
value, b
, then passing them to areEquivalent
method of afterNormalizationEquivalence
.
Determines the equality of two objects by normalizing the left-hand value, a
, and the right-hand
value, b
, then passing them to areEquivalent
method of afterNormalizationEquivalence
.
Both the left-hand value, a
, and right-hand value, b
, are normalized by passing them to the normalized
method of this
NormalizingEquivalence
.
- Source:
- NormalizingEquivalence.scala
Converts this NormalizingEquivalence
to a Normalization
.
Converts this NormalizingEquivalence
to a Normalization
.
- Returns:
a
Normalization
whosenormalized
method is implemented by forwarding to thenormalized
method of thisNormalizingEquivalence
.- Source:
- NormalizingEquivalence.scala
Concrete fields
The Equivalence
with which to determine equality after normalizing the left-hand and right-hand values.
The Equivalence
with which to determine equality after normalizing the left-hand and right-hand values.
In this trait's implementation, this val
is initialized with the result of invoking Equivalence.default[A]
.
Thus default Equivalence
is the default afterNormalizationEquivalence
. This may be changed by overriding
afterNormalizationEquivalence
in subclasses.
- Source:
- NormalizingEquivalence.scala