public function remove(string $name): self{
        if(!array_key_exists($name, $this->routes)){
            return $this;
        }

        $route  = $this->routes[$name];
        $node   = $this->leaves[$route];

        unset($this->routes[$name]);
        unset($this->leaves[$route]);

        $node->removeRoute($route);

        while(0 === count($node->getRoutes()) && $node !== $node->getParent()){
            $parent = $node->getParent();

            $parent->removeChildNode($node);

            $node   = $parent;
        }

        return $this;
    }
public function remove(string $name): self{
        if(!array_key_exists($name, $this->routes)){
            return $this;
        }

        $route  = $this->routes[$name];
        $node   = $this->leaves[$route];

        unset($this->routes[$name]);
        unset($this->leaves[$route]);

        $node->removeRoute($route);

        while(0 === count($node->getRoutes()) && $node !== $node->getParent()){
            $parent = $node->getParent();

            $parent->removeChildNode($node);

            $node   = $parent;
        }

        return $this;
    }
public function remove ( string $ name ) : self { if ( ! array_key_exists ( $ name , $ this -> routes ) ) { return $ this ; } $ route = $ this -> routes [ $ name ] ; $ node = $ this -> leaves [ $ route ] ; unset ( $ this -> routes [ $ name ] ) ; unset ( $ this -> leaves [ $ route ] ) ; $ node -> removeRoute ( $ route ) ; while ( 0 === count ( $ node -> getRoutes ( ) ) && $ node !== $ node -> getParent ( ) ) { $ parent = $ node -> getParent ( ) ; $ parent -> removeChildNode ( $ node ) ; $ node = $ parent ; } return $ this ; }
Remove route.

@param   string  $name

@return  $this
Remove route .