classname; } public function transplant(Value $old): void { parent::transplant($old); if ($old instanceof self) { $this->classname = $old->classname; $this->spl_object_hash = $old->spl_object_hash; $this->spl_object_id = $old->spl_object_id; $this->filename = $old->filename; $this->startline = $old->startline; } } /** * @psalm-param class-string $a * @psalm-param class-string $b */ public static function sortByHierarchy(string $a, string $b): int { if (\is_subclass_of($a, $b)) { return -1; } if (\is_subclass_of($b, $a)) { return 1; } return 0; } }