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\ConstraintSolver
getFeature(string $featureName, boolean $permissive = false
) : \FeaturePhp\Model\Feature
string
boolean
\FeaturePhp\Model\Feature
getFeatures() : array<mixed,\FeaturePhp\Model\Feature>
array<mixed,\FeaturePhp\Model\Feature>
getRootFeature() : \FeaturePhp\Model\Feature
\FeaturePhp\Model\Feature
getXmlModel() : \FeaturePhp\Model\XmlModel
\FeaturePhp\Model\XmlModel
$constraintSolver : \FeaturePhp\Model\ConstraintSolver
$features : array<mixed,\FeaturePhp\Model\Feature>
$rootFeature : \FeaturePhp\Model\Feature
$xmlModel : \FeaturePhp\Model\XmlModel