mini-llvm 0.1.0
Loading...
Searching...
No Matches
mini_llvm::Path Class Reference

#include <Path.h>

Inheritance diagram for mini_llvm::Path:
Collaboration diagram for mini_llvm::Path:

Public Member Functions

 Path ()=default
 Path (const Base &base)
 Path (Base &&base) noexcept
 Path (const SystemString &str)
 Path (SystemString &&str)
 Path (const char *str)
 Path (const std::string &str)
 Path (std::string &&str)
 Path (std::string_view str)
 Path (const Path &other)=default
 Path (Path &&other) noexcept=default
Pathoperator= (const Base &base)
Pathoperator= (Base &&base) noexcept
Pathoperator= (const SystemString &str)
Pathoperator= (SystemString &&str)
Pathoperator= (const char *str)
Pathoperator= (const std::string &str)
Pathoperator= (std::string_view str)
Pathoperator= (const Path &other)=default
Pathoperator= (Path &&other) noexcept=default
Base & base () noexcept
const Base & base () const noexcept
SystemString to_system_string () const
std::string to_string () const
bool empty () const
bool has_root_path () const
bool has_root_name () const
bool has_root_directory () const
bool has_relative_path () const
bool has_parent_path () const
bool has_filename () const
bool has_stem () const
bool has_extension () const
bool is_absolute () const
bool is_relative () const
Path root_path () const
Path root_name () const
Path root_directory () const
Path relative_path () const
Path parent_path () const
Path filename () const
Path stem () const
Path extension () const
Path lexically_normal () const
Path lexically_relative (const Path &base) const
Path lexically_proximate (const Path &base) const
Pathmake_preferred ()
Pathremove_filename ()
Pathreplace_filename (const Path &replacement)
Pathreplace_extension (const Path &replacement)
Pathoperator/= (const Path &other)
Pathoperator/= (const Base &other)
Pathoperator/= (const SystemString &other)
Pathoperator/= (const char *str)
Pathoperator/= (const std::string &str)
Pathoperator/= (std::string_view str)
Pathoperator+= (const Path &other)
Pathoperator+= (const Base &base)
Pathoperator+= (const SystemString &str)
Pathoperator+= (const char *str)
Pathoperator+= (const std::string &str)
Pathoperator+= (std::string_view str)
void clear ()
void swap (Path &other) noexcept

Static Public Attributes

static constexpr char preferred_separator = static_cast<char>(Base::preferred_separator)

Constructor & Destructor Documentation

◆ Path() [1/11]

mini_llvm::Path::Path ( )
default

◆ Path() [2/11]

mini_llvm::Path::Path ( const Base & base)
inline

◆ Path() [3/11]

mini_llvm::Path::Path ( Base && base)
inlinenoexcept

◆ Path() [4/11]

mini_llvm::Path::Path ( const SystemString & str)
inline

◆ Path() [5/11]

mini_llvm::Path::Path ( SystemString && str)
inline

◆ Path() [6/11]

mini_llvm::Path::Path ( const char * str)
inline

◆ Path() [7/11]

mini_llvm::Path::Path ( const std::string & str)
inline

◆ Path() [8/11]

mini_llvm::Path::Path ( std::string && str)
inline

◆ Path() [9/11]

mini_llvm::Path::Path ( std::string_view str)
inline

◆ Path() [10/11]

mini_llvm::Path::Path ( const Path & other)
default

◆ Path() [11/11]

mini_llvm::Path::Path ( Path && other)
defaultnoexcept

Member Function Documentation

◆ base() [1/2]

const Base & mini_llvm::Path::base ( ) const
inlinenoexcept

◆ base() [2/2]

Base & mini_llvm::Path::base ( )
inlinenoexcept

◆ clear()

void mini_llvm::Path::clear ( )
inline

◆ empty()

bool mini_llvm::Path::empty ( ) const
inline

◆ extension()

Path mini_llvm::Path::extension ( ) const
inline

◆ filename()

Path mini_llvm::Path::filename ( ) const
inline

◆ has_extension()

bool mini_llvm::Path::has_extension ( ) const
inline

◆ has_filename()

bool mini_llvm::Path::has_filename ( ) const
inline

◆ has_parent_path()

bool mini_llvm::Path::has_parent_path ( ) const
inline

◆ has_relative_path()

bool mini_llvm::Path::has_relative_path ( ) const
inline

◆ has_root_directory()

bool mini_llvm::Path::has_root_directory ( ) const
inline

◆ has_root_name()

bool mini_llvm::Path::has_root_name ( ) const
inline

◆ has_root_path()

bool mini_llvm::Path::has_root_path ( ) const
inline

◆ has_stem()

bool mini_llvm::Path::has_stem ( ) const
inline

◆ is_absolute()

bool mini_llvm::Path::is_absolute ( ) const
inline

◆ is_relative()

bool mini_llvm::Path::is_relative ( ) const
inline

◆ lexically_normal()

Path mini_llvm::Path::lexically_normal ( ) const
inline

◆ lexically_proximate()

Path mini_llvm::Path::lexically_proximate ( const Path & base) const
inline

◆ lexically_relative()

Path mini_llvm::Path::lexically_relative ( const Path & base) const
inline

◆ make_preferred()

Path & mini_llvm::Path::make_preferred ( )
inline

◆ operator+=() [1/6]

Path & mini_llvm::Path::operator+= ( const Base & base)
inline

◆ operator+=() [2/6]

Path & mini_llvm::Path::operator+= ( const char * str)
inline

◆ operator+=() [3/6]

Path & mini_llvm::Path::operator+= ( const Path & other)
inline

◆ operator+=() [4/6]

Path & mini_llvm::Path::operator+= ( const std::string & str)
inline

◆ operator+=() [5/6]

Path & mini_llvm::Path::operator+= ( const SystemString & str)
inline

◆ operator+=() [6/6]

Path & mini_llvm::Path::operator+= ( std::string_view str)
inline

◆ operator/=() [1/6]

Path & mini_llvm::Path::operator/= ( const Base & other)
inline

◆ operator/=() [2/6]

Path & mini_llvm::Path::operator/= ( const char * str)
inline

◆ operator/=() [3/6]

Path & mini_llvm::Path::operator/= ( const Path & other)
inline

◆ operator/=() [4/6]

Path & mini_llvm::Path::operator/= ( const std::string & str)
inline

◆ operator/=() [5/6]

Path & mini_llvm::Path::operator/= ( const SystemString & other)
inline

◆ operator/=() [6/6]

Path & mini_llvm::Path::operator/= ( std::string_view str)
inline

◆ operator=() [1/9]

Path & mini_llvm::Path::operator= ( Base && base)
inlinenoexcept

◆ operator=() [2/9]

Path & mini_llvm::Path::operator= ( const Base & base)
inline

◆ operator=() [3/9]

Path & mini_llvm::Path::operator= ( const char * str)
inline

◆ operator=() [4/9]

Path & mini_llvm::Path::operator= ( const Path & other)
default

◆ operator=() [5/9]

Path & mini_llvm::Path::operator= ( const std::string & str)
inline

◆ operator=() [6/9]

Path & mini_llvm::Path::operator= ( const SystemString & str)
inline

◆ operator=() [7/9]

Path & mini_llvm::Path::operator= ( Path && other)
defaultnoexcept

◆ operator=() [8/9]

Path & mini_llvm::Path::operator= ( std::string_view str)
inline

◆ operator=() [9/9]

Path & mini_llvm::Path::operator= ( SystemString && str)
inline

◆ parent_path()

Path mini_llvm::Path::parent_path ( ) const
inline

◆ relative_path()

Path mini_llvm::Path::relative_path ( ) const
inline

◆ remove_filename()

Path & mini_llvm::Path::remove_filename ( )
inline

◆ replace_extension()

Path & mini_llvm::Path::replace_extension ( const Path & replacement)
inline

◆ replace_filename()

Path & mini_llvm::Path::replace_filename ( const Path & replacement)
inline

◆ root_directory()

Path mini_llvm::Path::root_directory ( ) const
inline

◆ root_name()

Path mini_llvm::Path::root_name ( ) const
inline

◆ root_path()

Path mini_llvm::Path::root_path ( ) const
inline

◆ stem()

Path mini_llvm::Path::stem ( ) const
inline

◆ swap()

void mini_llvm::Path::swap ( Path & other)
inlinenoexcept

◆ to_string()

std::string mini_llvm::Path::to_string ( ) const
inline

◆ to_system_string()

SystemString mini_llvm::Path::to_system_string ( ) const
inline

Member Data Documentation

◆ preferred_separator

char mini_llvm::Path::preferred_separator = static_cast<char>(Base::preferred_separator)
staticconstexpr

The documentation for this class was generated from the following file:
  • include/mini-llvm/utils/Path.h