Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
file.hpp File Reference

Includes the C++ Filesystem library and provides some convenience helpers. More...

Go to the source code of this file.

Description

Includes the C++ Filesystem library and provides some convenience helpers.

The std::filesystem library allows for portable access to file and directory handling functions; this header maps these functions with an concise fs:: namespace prefix, and offers some convenience extensions, which are „slightly non-portable“ (meaning they were developed on Linux and „should“ work on Unix like systems; adapters for exotic operating systems could be added here when necessary...)

Todo:
3/2024 should be part of generic utilities

Definition in file file.hpp.

#include "lib/error.hpp"
#include "lib/symbol.hpp"
#include "lib/meta/util.hpp"
#include <filesystem>
#include <cstdlib>

Namespaces

namespace  std
 STL namespace.
 
namespace  std::filesystem
 
namespace  util
 

Classes

struct  StringConv< fs::path, void >
 specialisation: render filesystem path as double quoted string More...
 

Functions

fs::path getHomePath ()
 
fs::path consolidated (fs::path rawPath)
 resolves symlinks, ~ (Unix home dir) and relative specs
 
bool has_perm (fs::path const &p, fs::perms permissionMask)
 check if the denoted path p has at least the given permissions
 
bool can_read (fs::path const &p)
 check if the owner has read permissions on the denoted file or directory
 
bool can_write (fs::path const &p)
 
bool can_exec (fs::path const &p)