Base class for specifications that can be satisfied by Candidate1
and by Candidate2.
Inheritance Hierarchy
Object | |||
VisitableBase | |||
SpecificationBase<(Of <(<'TSpecification, Candidate1>)>)> | |||
SpecificationBase<(Of <(<'TSpecification, Candidate1, Candidate2>)>)> |
Assembly: Epic.Prelude
Declaration Syntax
C# |
[SerializableAttribute] public abstract class SpecificationBase<TSpecification, Candidate1, Candidate2> : SpecificationBase<TSpecification, Candidate1>, ISpecification<Candidate2>, IEquatable<ISpecification<Candidate2>>, ISpecification, IVisitable, IMapping<Candidate2, bool> where TSpecification : class, Object, ISpecification<Candidate1>, ISpecification<Candidate2>, IEquatable<TSpecification> where Candidate1 : class where Candidate2 : class
Generic Template Parameters
- TSpecification
- Type of the specification implemented.
- Candidate1
- First type of the candidates to satisfy the specification.
- Candidate2
- Second type of the candidates to satisfy the specification.
Remarks
The constructor throws InvalidOperationException if the instance produced is not assignable from TSpecification.
Moreover, the type initializer throws InvalidOperationException if either Candidate1 or Candidate2 are Object.
Members
All Members | Constructors | Methods | |||
Member | Description | |
---|---|---|
SpecificationBase<(Of <(<'TSpecification, Candidate1, Candidate2>)>)>()()()() | Initializes a new instance of the SpecificationBase<(Of <(<'TSpecification, Candidate1, Candidate2>)>)> class | |
And(ISpecification<(Of <<'(Candidate2>)>>)) |
Create a new ISpecification<(Of <(<'TCandidate>)>)> that evaluates the other
only if the current specification is satisfied.
| |
AndAlso(ISpecification<(Of <<'(Candidate2>)>>)) |
Create a new Conjunction<(Of <(<'TCandidate>)>)> that evaluates the other
only if the current specification is satisfied.
| |
BuildNegation(ISpecification<(Of <<'(Candidate2>)>>)%) |
Builds a negation of the current specification, assigning negatedSpecification.
| |
Equals(ISpecification<(Of <<'(Candidate2>)>>)) |
Determines whether the specified ISpecification<(Of <(<'TCandidate>)>)> is equal to the
current specification.
| |
IsSatisfiedBy(Candidate2) |
Determines whether this specification is satisfied by the specified candidate.
| |
IsSatisfiedByA(Candidate2) |
Determines whether this specification is satisfied by a the specified candidate.
| |
Or(ISpecification<(Of <<'(Candidate2>)>>)) |
Create a new ISpecification<(Of <(<'TCandidate>)>)> that evaluates the other
only if the current specification is not satisfied.
| |
OrElse(ISpecification<(Of <<'(Candidate2>)>>)) |
Create a new Disjunction<(Of <(<'TCandidate>)>)> that evaluates the other
only if the current specification is not satisfied.
|