Interface PatternContract
The Contract Interfaces in this system that designate categories of patterns DO NOT enforce methods, and should be used only for categorization. The specific patterns DO enforce methods, which correspond to our released traits to honor them. If you want to fully develop your own that has no inherent correlation to our approach, you should IMPLEMENT THE CATEGORICAL CONTRACT, and NOT THE PATTERN SPECIFIC CONTRACT, then fill in the blanks as needed. Given the broad application of design patterns and huge variance of scope, we CAN NOT apply an enforced standard approach to them without enforcing opinion that reduces options
in various cases, which is against the mission of this software.
Contract interfaces enforce expected behavior in a non-colliding way. They are tasked with enforcing methods, and extending interfaces provided by standards and other packages for compatibility.
All valid oroboros classes MUST extend at
least one Contract Interface to be considered valid.
- oroboros\core\interfaces\contract\patterns\PatternContract implements oroboros\core\interfaces\contract\BaseContract
Direct known implementers
oroboros\core\interfaces\contract\patterns\behavioral\BehavioralContract
,
oroboros\core\interfaces\contract\patterns\concurrency\ConcurrencyContract
,
oroboros\core\interfaces\contract\patterns\creational\CreationalContract
,
oroboros\core\interfaces\contract\patterns\creational\PrototypeContract
,
oroboros\core\interfaces\contract\patterns\creational\PrototypicalContract
,
oroboros\core\interfaces\contract\patterns\structural\StructuralContract
Indirect known implementers
oroboros\core\abstracts\libraries\prototype\AbstractPrototyper
,
oroboros\core\abstracts\patterns\creational\AbstractPrototyper
,
oroboros\core\abstracts\patterns\creational\AbstractPrototypical
,
oroboros\core\patterns\creational\Prototyper
Package: oroboros\core\patterns
Category: contract-interfaces
License: The MIT License (MIT)
Author: Brian Dayhoff mopsyd@me.com
Version: 0.2.4-alpha
Since: 0.2.4-alpha
Link: bitbucket.org/oroborosframework/oroboros-core/wiki/development/api/contract_interface.md
Located at core/interfaces/contract/patterns/PatternContract.php