A feature model for a software product line.
A feature model is a tree describing features and their relationships. Here, it is represented as a list of features and feature constraints (\FeaturePhp\Model\Feature and \FeaturePhp\Model\ConstraintSolver). The underlying XML feature model has its own class, \FeaturePhp\Model\XmlModel.
| package | Default |
|---|
__construct(\FeaturePhp\Model\XmlModel $xmlModel)
\FeaturePhp\Model\XmlModel
addFeature(\SimpleXMLElement $node, \SimpleXMLElement $parent)
This is expected to be called only from the model's constructor through XmlModel::traverse().
\SimpleXMLElement
\SimpleXMLElement
getConstraintSolver() : \FeaturePhp\Model\ConstraintSolver
\FeaturePhp\Model\ConstraintSolvergetFeature(string $featureName, boolean $permissive = false) : \FeaturePhp\Model\Feature
string
boolean
\FeaturePhp\Model\FeaturegetFeatures() : array<mixed,\FeaturePhp\Model\Feature>
array<mixed,\FeaturePhp\Model\Feature>getRootFeature() : \FeaturePhp\Model\Feature
\FeaturePhp\Model\FeaturegetXmlModel() : \FeaturePhp\Model\XmlModel
\FeaturePhp\Model\XmlModel$constraintSolver : \FeaturePhp\Model\ConstraintSolver
$features : array<mixed,\FeaturePhp\Model\Feature>
$rootFeature : \FeaturePhp\Model\Feature
$xmlModel : \FeaturePhp\Model\XmlModel