|null */ private $destructorCallbacks = null; /** @phpstan-return Set<\Closure() : void> */ public function getDestructorCallbacks() : Set{ return $this->destructorCallbacks === null ? ($this->destructorCallbacks = new Set()) : $this->destructorCallbacks; } public function __destruct(){ if($this->destructorCallbacks !== null){ foreach($this->destructorCallbacks as $callback){ $callback(); } } } }