Commit Graph

9 Commits

Author SHA1 Message Date
Ross Nicoll
2efd44d46b Clean up semantics of composite clauses
This deprecates the existing composition clauses and adds new better named versions,
as well as changing 'AnyOf' to require at least one matching subclase (better matching
the name of the clause).
2017-01-17 11:34:21 +00:00
Joel Dudley
e55833d147 Details of First/AnyComposition. Expands on clause workings. Typos. 2017-01-09 16:09:32 +00:00
Katarzyna Streich
e10b199ae1 Add clauses documentation. 2016-11-29 11:53:54 +00:00
Shams Asari
2f769b3db0 Cleaning up doc headers to be consistent wrt casing 2016-11-28 14:08:16 +00:00
Ross Nicoll
203c4fb3d8 Merge ConcreteClause into Clause
Change Clause to an abstract class, and merge ConcreteClause into it. CompositeClause now
overrides defaults provided in Clause which are more suitable for composition of clauses.
2016-08-31 17:55:36 +01:00
Ross Nicoll
13b040ecd6 Rework clauses to use composition
Rework clauses so that rather than defining match/no-match behaviour themselves, they are
now composed by nesting them within clauses that understand how to match their child clauses.
This unifies a lot of the structure of clauses and removes corner cases needed for the first
design, as well as moving towards a model which is easier to prove.
2016-08-26 17:35:52 +01:00
Ross Nicoll
03e120d04b Add default values for ifMatched/ifNotMatched/requiredCommands 2016-08-23 11:23:47 +01:00
Ross Nicoll
162d19deeb Change how clause verification is called
Change away from extending ClauseVerifier for contracts which support clauses, and explicitely call
clause verification code in the verify() function. This should make the flow of control easier to understand.
2016-08-11 15:39:11 +01:00
Ross Nicoll
1943b3633f Add documentation on contract clauses 2016-07-12 17:47:51 +01:00