vsg 1.1.10
VulkanSceneGraph library
Loading...
Searching...
No Matches
vsg::Path Class Reference

#include <Path.h>

Public Types

using value_type = char
using string_type = std::basic_string<value_type>
using size_type = size_t
using reference = value_type&
using const_reference = const value_type&
using iterator = string_type::iterator
using const_iterator = string_type::const_iterator
using pointer = value_type*
using const_pointer = const value_type*

Public Member Functions

 Path (const Path &path)
 Path (const std::string &str)
 Path (const char *str)
 Path (const std::wstring &str)
 Path (const wchar_t *str)
iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
Pathassign (const Path &path)
Pathassign (const std::string &str)
Pathassign (const char *str)
Pathassign (const std::wstring &str)
Pathassign (const wchar_t *str)
Pathoperator= (const Path &path)
Pathoperator= (const std::string &str)
Pathoperator= (const char *str)
Pathoperator= (const std::wstring &str)
Pathoperator= (const wchar_t *str)
int compare (const Path &rhs) const
int compare (size_type pos, size_type n, const Path &rhs) const
int compare (const char *rhs) const
int compare (const wchar_t *rhs) const
int compare (size_type pos, size_type n, const char *rhs) const
int compare (size_type pos, size_type n, const wchar_t *rhs) const
bool operator== (const Path &rhs) const
bool operator!= (const Path &rhs) const
bool operator< (const Path &rhs) const
bool operator== (const char *rhs) const
bool operator!= (const char *rhs) const
bool operator== (const wchar_t *rhs) const
bool operator!= (const wchar_t *rhs) const
 operator bool () const noexcept
bool empty () const
size_type size () const
size_type length () const
std::string string () const
std::wstring wstring () const
const string_type & native () const noexcept
 operator const string_type & () const noexcept
const value_type * c_str () const noexcept
reference operator[] (size_type pos)
const_reference operator[] (size_type pos) const
void clear () noexcept
void swap (Path &rhs) noexcept
Pathconcat (const Path &path)
 directly add to end of path without a path separator
Pathconcat (char c)
 directly add to end of path without a path separator
Pathoperator+= (const Path &path)
 directly add to end of path without a path separator
Pathappend (const Path &path)
 add to end of path with path separator
Pathoperator/= (const Path &path)
 add to end of path with path separator
Path substr (size_type pos, size_type len=Path::npos) const
size_type find (const Path &s, size_type pos=0) const
size_type find (const char *s, size_type pos=0) const
size_type find (const wchar_t *s, size_type pos=0) const
size_type find_first_of (const Path &s, size_type pos=0) const
size_type find_first_of (const char *s, size_type pos=0) const
size_type find_first_of (const char c, size_type pos=0) const
size_type find_first_of (const wchar_t *s, size_type pos=0) const
size_type find_first_of (const wchar_t c, size_type pos=0) const
size_type find_last_of (const Path &s, size_type pos=npos) const
size_type find_last_of (const char *s, size_type pos=npos) const
size_type find_last_of (const char c, size_type pos=npos) const
size_type find_last_of (const wchar_t *s, size_type pos=npos) const
size_type find_last_of (const wchar_t c, size_type pos=npos) const
Pathreplace (size_type pos, size_type n, const Path &str)
Pathreplace (size_type pos, size_type n, const std::string &str)
Pathreplace (size_type pos, size_type n, const std::wstring &str)
Pathreplace (size_type pos, size_type n, const char *str)
Pathreplace (size_type pos, size_type n, const wchar_t *str)
Patherase (size_t pos=0, size_t len=Path::npos)
FileType type () const
Path lexically_normal () const

Static Public Attributes

static constexpr value_type windows_separator = '\\'
static constexpr value_type posix_separator = '/'
static constexpr value_type preferred_separator = posix_separator
static constexpr value_type alternate_separator = windows_separator
static constexpr const value_type * separators = "/\\"
static const size_type npos = static_cast<size_type>(-1)

Protected Attributes

string_type _string

Detailed Description

Class for managing paths/filenames with full support for wide and single width path strings. Similar in role and features to std::filesystem::path, but is able to work on older compilers.


The documentation for this class was generated from the following file: