Fork me on GitHubEpicdominant domains
APIEpic.Specifications

Epic.Specifications
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.
Declaration Syntax
C#
namespace Epic.Specifications
Types
All TypesClassesInterfaces
TypeDescription
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.
blog comments powered by Disqus