|
Simo 0.0.1
|
#include <Port.h>
Public Member Functions | |
| std::optional< Contract > | contract () |
| void | contract (Contract contract) |
| void | connected_port (ContractInterface *port) |
| void | connected_port_contract_predicate (std::function< bool(Contract)> predicate) |
| std::expected< bool, VERIFY_CONTRACT_ERROR > | verify_connected_port_contract () |
Protected Attributes | |
| std::optional< Contract > | contract_ |
| ContractInterface * | connected_port_ = nullptr |
| std::function< bool(Contract)> | connected_port_contract_predicate_ {} |
Class to implement the contract logic.
A contract is just a structure that a connecting port can probe And validate using a predicate