algorithmClasses = $algorithmClasses; foreach ($algorithmClasses as $algorithmClass) { $this->addClass($algorithmClass); } } public function getAlgorithmClasses(): array { return $this->algorithmClasses; } public function getAvailableAlgorithms(): array { return $this->algorithms; } private function addClass(string $algorithmClass): void { if (class_exists($algorithmClass)) { try { $this->algorithms[] = new $algorithmClass(); } catch (Throwable $throwable) { //does nothing } } } }