/** * Constructs an instance of this class. * * @param Unit $parent * @param string $symbol * @param string $quantity */ public function __construct(Unit $parent, $symbol, $quantity) { if (!$parent->isStandardUnit()) { throw new \InvalidArgumentException(sprintf('Parent unit "%s" is not a standard unit.', $parent->getSymbol())); } parent::__construct($quantity); $this->parent = $parent; $this->symbol = $symbol; }