3 namespace pharext\SourceDir
;
8 use FilesystemIterator
;
10 use RecursiveDirectoryIterator
;
11 use RecursiveIteratorIterator
;
14 class Basic
implements IteratorAggregate
, SourceDir
18 public function __construct($path) {
22 public function getBaseDir() {
26 public function getPackageInfo() {
30 public function getArgs() {
34 public function setArgs(Args
$args) {
37 public function getIterator() {
38 $rdi = new RecursiveDirectoryIterator($this->path
,
39 FilesystemIterator
::CURRENT_AS_SELF |
// needed for 5.5
40 FilesystemIterator
::KEY_AS_PATHNAME |
41 FilesystemIterator
::SKIP_DOTS
);
42 $rii = new RecursiveIteratorIterator($rdi,
43 RecursiveIteratorIterator
::CHILD_FIRST
);
44 foreach ($rii as $path => $child) {
45 if (!$child->isDir()) {