+ /// \return list other files in the directory having optional extension 'ext'.
+ FileNameList dirList(std::string const & ext) const;
+
+ /// copy a file
+ /// \return true when file/directory is writable (write test file)
+ /// \warning This methods has different semantics when system level
+ /// copy command, it will overwrite the \c target file if it exists,
+ /// If \p keepsymlink is true, the copy will be written to the symlink
+ /// target. Otherwise, the symlink will be destroyed.
+ bool copyTo(FileName const & target, bool keepsymlink = false) const;
+
+ /// remove pointed file.
+ /// \return true on success.
+ bool removeFile() const;
+
+ /// rename pointed file.
+ /// \return false if the operation fails or if the \param target file
+ /// already exists.
+ /// \return true on success.
+ bool renameTo(FileName const & target) const;
+
+ /// move pointed file to \param target.
+ /// If \p target exists it will be overwritten (if it is a symlink,
+ /// the symlink will be destroyed).
+ /// \return true on success.
+ bool moveTo(FileName const & target) const;
+ bool link(FileName const & name) const;
+
+ /// change mode of pointed file.
+ /// This methods does nothing and return true on platforms that does not
+ /// support this.
+ /// \return true on success.
+ bool changePermission(unsigned long int mode) const;
+
+ /// remove pointed directory and all contents.
+ /// \return true on success.