def listdir(self, fil=None, sort=None): """ return a sequence of Paths. listdir will return either a tuple or a list of paths depending on implementation choices. """ if isinstance(fil, str): fil = common.fnmatch(fil) # XXX unify argument naming with LocalPath.listdir def notsvn(path): return path.basename != '.svn' paths = [] for localpath in self.localpath.listdir(notsvn): p = self.__class__(localpath, auth=self.auth) paths.append(p) if fil or sort: paths = filter(fil, paths) paths = isinstance(paths, list) and paths or list(paths) if callable(sort): paths.sort(sort) elif sort: paths.sort() return paths
def listdir(self, fil=None, sort=None): """ list directory contents, possibly filter by the given fil func and possibly sorted. """ if isinstance(fil, str): fil = common.fnmatch(fil) res = [] for name in self._callex(os.listdir, self.strpath): childurl = self.join(name) if fil is None or fil(childurl): res.append(childurl) if callable(sort): res.sort(sort) elif sort: res.sort() return res
def listdir(self, fil=None, sort=None): """ list directory contents, possibly filter by the given fil func and possibly sorted. """ if isinstance(fil, str): fil = common.fnmatch(fil) nameinfo_seq = self._listdir_nameinfo() if len(nameinfo_seq) == 1: name, info = nameinfo_seq[0] if name == self.basename and info.kind == 'file': #if not self.check(dir=1): raise py.error.ENOTDIR(self) paths = self._make_path_tuple(nameinfo_seq) if fil or sort: paths = filter(fil, paths) paths = isinstance(paths, list) and paths or list(paths) if callable(sort): paths.sort(sort) elif sort: paths.sort() return paths