Class basic_resolver

Inheritance Relationships

Base Type

Class Documentation

class legion::core::filesystem::basic_resolver : public legion::core::filesystem::filesystem_resolver

Public Functions

inline explicit basic_resolver(std::string_view view)
basic_resolver(const basic_resolver &other) = default
basic_resolver(basic_resolver &&other) noexcept = default
basic_resolver &operator=(const basic_resolver &other) = default
basic_resolver &operator=(basic_resolver &&other) noexcept = default
~basic_resolver() = default
inline virtual filesystem_resolver *make() override

Required to create new instances of the provider, similar to a surrogate constructor if required arguments must be copied over.

inline virtual bool is_file() const noexcept override

Checks if target points to a file.

Note

(implementation details) Certain traits obviously overrule others. The progression here works like this:

  • if is_file cannot be directory

  • if is_directory cannot be written and cannot be read

  • if exists cannot be created and is valid

  • if exists and is file can be read

inline virtual bool is_directory() const noexcept override

Checks if target points to a directory.

inline virtual bool is_valid() const noexcept override

Checks if target points to a valid location.

inline virtual bool writeable() const noexcept override

Checks if the target location can be written to.

inline virtual bool readable() const noexcept override

Checks if the target location can be read from.

inline virtual bool creatable() const noexcept override

Checks if the target location can be created.

inline virtual bool exists() const noexcept override

Checks if the target location exists.

inline std::string get_absolute_path() const
inline virtual std::set<std::string> ls() const noexcept override

Gets all entries in a directory or similar concept (assume -a).

Note

When not is_directory this should return an empty set. set_target

Return

A set of strings of entries at the current pointed at location.

inline virtual common::result<basic_resource, fs_error> get(interfaces::implement_signal_t) noexcept override
inline virtual common::result<const basic_resource, fs_error> get(interfaces::implement_signal_t) const noexcept override
inline virtual common::result<void, fs_error> set(interfaces::implement_signal_t, const basic_resource &res) override
inline virtual void erase(interfaces::implement_signal_t) const noexcept override