The Epic.Specifications namespace contains a general purpose framework for specifications. It provides a closure of operations over basic logical operators (conjunction, disjunction and negation) with some well designed extensions for handling inhteritance.
It's defined in Epic.Prelude.
It's defined in Epic.Prelude.
Declaration Syntax
C# |
namespace Epic.Specifications
Types
All Types | Classes | Interfaces |
Type | Description | |
---|---|---|
![]() | Any<(Of <(<'TCandidate>)>)> |
Specification that is satisfied by any TCandidate.
|
![]() | Conjunction<(Of <(<'TCandidate>)>)> |
Specification that is satisfied by any TCandidate that is satisfied by all the
specifications.
|
![]() | Disjunction<(Of <(<'TCandidate>)>)> |
Specification that is satisfied by any TCandidate that is satisfied by at
least one of the specifications.
|
![]() | IMonadicSpecificationComposition<(Of <(<'TCandidate>)>)> |
Interface implemented by polyadic composition of specifications.
|
![]() | IPolyadicSpecificationComposition<(Of <(<'TCandidate>)>)> |
Interface implemented by polyadic composition of specifications.
|
![]() | ISpecification |
Common interface for specifications.
|
![]() | ISpecification<(Of <(<'TCandidate>)>)> |
Specificaiton interface.
|
![]() | Negation<(Of <(<'TCandidate>)>)> |
Specification that is satisfied by any TCandidate that doesn't satisfy the negated one.
|
![]() | No<(Of <(<'TCandidate>)>)> |
Specification that is not satisfied by any TCandidate.
|
![]() | SpecificationBase<(Of <(<'TSpecification, Candidate>)>)> |
Base class for specifications of Candidate.
|
![]() | SpecificationBase<(Of <(<'TSpecification, Candidate1, Candidate2>)>)> |
Base class for specifications that can be satisfied by Candidate1
and by Candidate2.
|
![]() | StatelessSpecificationBase<(Of <(<'TSpecification, TCandidate>)>)> |
Base class for stateless specification.
|
![]() | Variant<(Of <(<'FromCandidate, ToCandidate>)>)> |
Specification that is satisfied by any ToCandidate that is a
FromCandidate satisfing the inner specification.
|