Contract.h File
Builder-level validation contracts. More...
Included Headers
#include <memory>
#include <span>
#include <string>
#include <vector>
#include "contracts/ContractTypes.h"
#include "contracts/ValidationReport.h"
Namespaces Index
| namespace | simaai |
| namespace | neat |
Classes Index
| struct | ValidationContext |
|
Context passed to contracts during validation. More... | |
| class | Contract |
|
A single validation rule applied to an ordered node list. More... | |
Description
Builder-level validation contracts.
Defines the Contract base class — a typed predicate over an ordered node list — plus the ValidationContext passed to each contract during validation. Contracts are pure builder-level checks (STL only, no GStreamer); they report findings through ValidationReport rather than throwing.
- See Also
ContractRegistry
- See Also
Validators
- See Also
ValidationReport
File Listing
The file content with the documentation metadata removed is:
23#include "contracts/ContractTypes.h"
24#include "contracts/ValidationReport.h"
26namespace simaai::neat {
41struct ValidationContext {
49 Validate = 0,
50 Run,
51 Rtsp,
54 Mode mode = Mode::Validate;
92 virtual std::string description() const {
103 virtual void validate(std::span<const std::shared_ptr<Node>> nodes, const ValidationContext& ctx,
104 ValidationReport& report) const = 0;
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.