lfilesystem  0.0.1
C++ filesystem library
limes::files Namespace Reference

Filesystem utilities. More...

Namespaces

 dirs
 This namespace contains utility functions for finding some common directories.
 
 volume
 This namespace contains free functions for easily querying properties of the volume that the current working directory is mounted on.
 

Classes

class  CFile
 This class is a wrapper around a C-style FILE* that takes care of freeing the file when the object is destroyed, and provides a few other convenience methods. More...
 
class  Directory
 This class represents a directory on the filesystem. More...
 
class  DynamicLibrary
 This class represents a dynamically loaded library. More...
 
class  File
 This class represents a file on the filesystem. More...
 
class  FilesystemEntry
 The base class for any kind of object on the filesystem. More...
 
class  FileWatcher
 This class listens for changes to or operations on a certain file, and receives callbacks to be notified when changes occur. More...
 
class  Permissions
 This class encapsulates the standard library's permissions bitmask type, and provides some higher-level object oriented features for working with permissions. More...
 
class  SimpleFileWatcher
 This class implements all of FileWatcher's virtual methods, and allows you to easily specify a lambda function that will be called for any event type. More...
 
class  SymLink
 This class represents a symbolic link on the filesystem. More...
 
class  TempFile
 Represents a temporary file. More...
 
class  Volume
 This class represents a logical filesystem volume. More...
 

Typedefs

using FSPerms = std::filesystem::perms
 A typedef for the standard library permissions type. More...
 
using Path = std::filesystem::path
 Convenience typedef for filesystem paths. More...
 

Functions

LFILE_EXPORT bool isValidPath (const Path &path)
 Tests whether the passed path contains any invalid characters or character sequences, such as :: . More...
 
LFILE_EXPORT Path largestCommonPrefix (const Path &path1, const Path &path2)
 Returns the largest prefix path fragment common to path1 and path2 . More...
 
LFILE_EXPORT Path normalizePath (const Path &path)
 This function takes an input path and does some linting and transformations to create a consistent, canonical form of the path. More...
 
constexpr LFILE_EXPORT char dirSeparator () noexcept
 Returns the platform's preferred directory separator: \ on Windows, and / everywhere else. More...
 
LFILE_EXPORT consteval char PATHseparator () noexcept
 Returns the platform's separator char for the PATH environment variable: ; on Windows, and : everywhere else. More...
 
LFILE_EXPORT consteval bool filesystemIsCaseSensitive () noexcept
 Returns true if the current platform's filesystem is likely to be case-sensitive. More...
 
constexpr LFILE_EXPORT std::uintmax_t maxPathLength () noexcept
 Returns the maximum path length possible on the current operating system. More...
 

Detailed Description

Filesystem utilities.

This namespace contains all code of the limes_files library.