public static function try(array $paths): Storage
    {
        foreach ($paths as $diskpath) {
            if (is_string($diskpath)) {
                if (file_exists($diskpath)) {
                    return new Storage\Disk($diskpath);
                }
            } elseif ($diskpath instanceof Path) {
                if ($diskpath->fileInfo()->isFile() || $diskpath->fileInfo()->isDir()) {
                    return new Storage\Disk($diskpath);
                }
            } elseif ($diskpath instanceof Storage) {
                if ($diskpath->isFile() || $diskpath->isDir()) {
                    return $diskpath;
                }
            } elseif ($diskpath instanceof FileSystem) {
                if ($diskpath->isFile() || $diskpath->isDir()) {
                    return $diskpath->storage();
                }
            } else {
                throw new UnexpectedValueException(sprintf('invalid search-path of type \'%s\'', is_object($diskpath) ? get_class($diskpath) : gettype($diskpath)), 500);
            }
        }

        throw new FileNotFoundException('file not found', 404);
    }
public static function try(array $paths): Storage
    {
        foreach ($paths as $diskpath) {
            if (is_string($diskpath)) {
                if (file_exists($diskpath)) {
                    return new Storage\Disk($diskpath);
                }
            } elseif ($diskpath instanceof Path) {
                if ($diskpath->fileInfo()->isFile() || $diskpath->fileInfo()->isDir()) {
                    return new Storage\Disk($diskpath);
                }
            } elseif ($diskpath instanceof Storage) {
                if ($diskpath->isFile() || $diskpath->isDir()) {
                    return $diskpath;
                }
            } elseif ($diskpath instanceof FileSystem) {
                if ($diskpath->isFile() || $diskpath->isDir()) {
                    return $diskpath->storage();
                }
            } else {
                throw new UnexpectedValueException(sprintf('invalid search-path of type \'%s\'', is_object($diskpath) ? get_class($diskpath) : gettype($diskpath)), 500);
            }
        }

        throw new FileNotFoundException('file not found', 404);
    }
public static function try ( array $ paths ) : Storage { foreach ( $ paths as $ diskpath ) { if ( is_string ( $ diskpath ) ) { if ( file_exists ( $ diskpath ) ) { return new Storage \ Disk ( $ diskpath ) ; } } elseif ( $ diskpath instanceof Path ) { if ( $ diskpath -> fileInfo ( ) -> isFile ( ) || $ diskpath -> fileInfo ( ) -> isDir ( ) ) { return new Storage \ Disk ( $ diskpath ) ; } } elseif ( $ diskpath instanceof Storage ) { if ( $ diskpath -> isFile ( ) || $ diskpath -> isDir ( ) ) { return $ diskpath ; } } elseif ( $ diskpath instanceof FileSystem ) { if ( $ diskpath -> isFile ( ) || $ diskpath -> isDir ( ) ) { return $ diskpath -> storage ( ) ; } } else { throw new UnexpectedValueException ( sprintf ( 'invalid search-path of type \'%s\'' , is_object ( $ diskpath ) ? get_class ( $ diskpath ) : gettype ( $ diskpath ) ) , 500 ) ; } } throw new FileNotFoundException ( 'file not found' , 404 ) ; }
list of possible paths
=> !not components of a single path!
@param  string[]|Path[]|Storage[]|FileSystem[] $paths
@return Storage
list of possible paths = > !not components of a single path!