A retain-release type of smart pointer.
Definition SmartPtr.hpp:132
Handle for a file or directory.
Definition FileHandle.hpp:46
Interface for iterating on directories.
Definition FileHandle.hpp:477
Interface for accessing file systems.
Definition FileSystem.hpp:28
File iterator for the local file system.
Definition LocalFileIterator.hpp:20
LocalFileIterator(LocalFileSystem &fs, FileHandle &&fileHandle)
const FileHandle & getParent() const override
Gets the parent FileHandle this iterator iterates over.
std::filesystem::directory_iterator mIterator
The Directory handle.
Definition LocalFileIterator.hpp:29
FileHandle mFileHandle
The file handle the iterator is operating on.
Definition LocalFileIterator.hpp:26
LocalFileIterator & operator=(LocalFileIterator &)=delete
LocalFileIterator(const LocalFileIterator &)=delete
~LocalFileIterator() override
IFileSystem * getFileSystem() const override
FileHandle getFileHandle() const override
Gets the current entry file handle.
Int32 mIndex
The index of the current entry.
Definition LocalFileIterator.hpp:32
void next() override
Advances to the next item.
bool isValid() const override
Checks if iterator points to a valid item.
LocalFileIterator & operator=(const LocalFileIterator &)=delete
RC< LocalFileSystem > mFileSystem
File system that created this iterator.
Definition LocalFileIterator.hpp:23
Int32 getIndex() const override
Gets the current index of iterator in the directory.
LocalFileIterator(LocalFileIterator &&)
An implementation of a local file system.
Definition LocalFileSystem.hpp:17
Definition Application.hpp:19
std::int32_t Int32
Definition DataTypes.hpp:21
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25