Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / mikey179 / vfsStream / src / main / php / org / bovigo / vfs / vfsStreamContainer.php
1 <?php
2 /**
3  * This file is part of vfsStream.
4  *
5  * For the full copyright and license information, please view the LICENSE
6  * file that was distributed with this source code.
7  *
8  * @package  org\bovigo\vfs
9  */
10 namespace org\bovigo\vfs;
11 /**
12  * Interface for stream contents that are able to store other stream contents.
13  */
14 interface vfsStreamContainer extends \IteratorAggregate
15 {
16     /**
17      * adds child to the directory
18      *
19      * @param  vfsStreamContent  $child
20      */
21     public function addChild(vfsStreamContent $child);
22
23     /**
24      * removes child from the directory
25      *
26      * @param   string  $name
27      * @return  bool
28      */
29     public function removeChild($name);
30
31     /**
32      * checks whether the container contains a child with the given name
33      *
34      * @param   string  $name
35      * @return  bool
36      */
37     public function hasChild($name);
38
39     /**
40      * returns the child with the given name
41      *
42      * @param   string  $name
43      * @return  vfsStreamContent
44      */
45     public function getChild($name);
46
47     /**
48      * checks whether directory contains any children
49      *
50      * @return  bool
51      * @since   0.10.0
52      */
53     public function hasChildren();
54
55     /**
56      * returns a list of children for this directory
57      *
58      * @return  vfsStreamContent[]
59      */
60     public function getChildren();
61 }