/** * Constructor * * @param string $name Name of the property to create * @param ICE_Stack $primitives Stack of primitive properties which make up this composite */ public function __construct($name, ICE_Stack $primitives) { throw new Exception('Composite style properties are not yet fully supported!'); parent::__construct($name); foreach ($primitives as $primitive) { if ($primitive instanceof ICE_Style_Property_Primitive) { $this->properties[$primitive->name] = $primitive; } else { throw new Exception('Only primitive properties can be added to a composite property'); } } }