19 declare(strict_types=1);
    33         $this->path[] = $focus;
    39         $clone->path[] = end($this->path)->getSubnode($id);
    45         return count($this->path) == 1;
    51         $last_node = array_pop($clone->path);
    52         $parent = array_pop($clone->path);
    53         $clone->path[] = $parent->withSubnode($last_node);
    61         foreach ($hops as $hop) {
    62             if ($hop != end($this->path)->
getId()) {
    63                 $zipper = $zipper->
toChild($hop);
    71         if (count($this->path) == 1) {
    72             return array_pop($this->path);
    81         $focus = array_pop($clone->path);
    82         $new_focus = 
$f($focus);
    83         $clone->path[] = $new_focus;
    89         $zipper = $zipper ?? $this;
    91         foreach (end($zipper->path)->getSubnodes() as $subnode) {
    93                 ->modifyAll($f, $zipper->toChild($subnode->getId()))
 
modifyAll(callable $f, Zipper $zipper=null)
 
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins