getType()) { case vfsStreamContent::TYPE_BLOCK: $this->visitBlockDevice($content); break; case vfsStreamContent::TYPE_FILE: $this->visitFile($content); break; case vfsStreamContent::TYPE_DIR: if (!$content->isDot()) { $this->visitDirectory($content); } break; default: throw new \InvalidArgumentException('Unknown content type ' . $content->getType() . ' for ' . $content->getName()); } return $this; } /** * visit a block device and process it * * @param vfsStreamBlock $block * @return vfsStreamVisitor */ public function visitBlockDevice(vfsStreamBlock $block) { return $this->visitFile($block); } }