This class is designed to support the production of documents with keys like 1.
A child engine is an engine that 'belongs' to a full engine.
This represents a conclusion in the decision tree
The decision tree inside an engine with tests is made of nodes that either a conclusion or a decision.
This represents a decision in the decision tree
This is the visitor when folding a decision tree.
Documents are external documents such as requirements specifications, emails and so on.
This is the core object that describes an Engine.
This is the 'normal' engine.
An engine with child engines and a folding function for aggregating the results
R is the type returned by the child engines, or the engine if there are no child enginers.
Classes implementing this are displayed using htmlDisplay, rather than toString when shown on a website, or in HTML pages.
A merged requirement is used to handle the fact that many reportables may implement a '2.
The details about the parameters to an engine, including a parser for the live website and a default string value that allows the live website to be be tested by a selenium test easily
So this is all the ends in a parent / child map.
A project is basically a list of the engines that are used on a software project
A reference is usually a link to a document.
A report is what it says: the object representation of a (usually) html report
Reportables are things that appear in reports.
Quite a lot of reportables have 'child' reportables.
Templates was used to control the text is generated.
A reportable with a wrapper is used in the reports when making a projection of an original report.
Very little is known about Reportables: no methods are implemented.
As the name suggests this is both a requirement and a reportableholder
This is a full 'test + optional reason why + optional code to implement the behaviour that will make the test past
When reporting, this keeps track of what url a reportable is associated with.
Usecases are at the moment mostly 'just text'.
Engines have loggers which record interesting events.
Engines have loggers which record interesting events.
In order to avoid polluting the Engine trait, if you need access to the paramDetails, this can be imported
Paths are often used: see ReportableAndHolder walking and folding operations.