public function visitSingleton(SingletonBinding $singleton) { if ($singleton->getIndex() !== null) { //already visited return; } $singleton->setIndex($this->count++); }