public function on($value) { if (!$this->generator->contains($value)) { throw new DomainException('Cannot shrink {' . var_export($value, true) . '} because ' . 'it does not belong to the domain of this Generator'); } }