signatureGenerator = $signatureGenerator; } /** * {@inheritDoc} * * @throws InvalidArgumentException */ public function addSignature(ClassGenerator $classGenerator, array $parameters): ClassGenerator { $classGenerator->addPropertyFromGenerator(new PropertyGenerator( 'signature' . $this->signatureGenerator->generateSignatureKey($parameters), $this->signatureGenerator->generateSignature($parameters), PropertyGenerator::FLAG_STATIC | PropertyGenerator::FLAG_PRIVATE )); return $classGenerator; } }