irods
4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems. Fossies Dox: irods-4.2.8.tar.gz ("unofficial" and yet experimental doxygen-generated source code documentation) 
|
Go to the documentation of this file. 1 #ifndef IRODS_FILESYSTEM_PATH_HPP
2 #define IRODS_FILESYSTEM_PATH_HPP
59 template <
typename Source,
60 typename = std::enable_if_t<path_traits::is_pathable<Source>>>
61 path(
const Source& _source)
66 template <
typename InputIterator,
67 typename ValueType =
typename std::iterator_traits<InputIterator>::value_type,
69 path(InputIterator _begin, InputIterator _end)
99 template <
typename Source,
100 typename = std::enable_if_t<path_traits::is_pathable<Source>>>
113 template <
typename Source,
114 typename = std::enable_if_t<path_traits::is_pathable<Source>>>
117 return *
this = _source;
120 template <
typename InputIterator,
121 typename ValueType =
typename std::iterator_traits<InputIterator>::value_type,
123 auto assign(InputIterator _begin, InputIterator _end) ->
path&
132 template <
typename Source,
133 typename = std::enable_if_t<path_traits::is_pathable<Source>>>
136 return *
this /=
path{_source};
139 template <
typename Source,
140 typename = std::enable_if_t<path_traits::is_pathable<Source>>>
143 return *
this /=
path{_source};
146 template <
typename InputIterator,
147 typename ValueType =
typename std::iterator_traits<InputIterator>::value_type,
149 auto append(InputIterator _begin, InputIterator _end) ->
path&
151 return *
this /=
path{_begin, _end};
163 template <
typename Source,
164 typename = std::enable_if_t<path_traits::is_pathable<Source>>>
167 return *
this +=
path{_p};
173 template <
typename InputIterator,
174 typename ValueType =
typename std::iterator_traits<InputIterator>::value_type,
176 auto concat(InputIterator _begin, InputIterator _end) ->
path&
178 return *
this +=
path{_begin, _end};
234 auto begin() const -> iterator;
235 auto
end() const -> iterator;
237 auto
rbegin() const -> reverse_iterator;
238 auto
rend() const -> reverse_iterator;
271 return _other.path_ptr_ == path_ptr_ && _other.pos_ == pos_;
292 path::string_type::size_type
pos_;
369 inline auto operator==(
const path& _lhs,
const path& _rhs) noexcept ->
bool {
return _lhs.compare(_rhs) == 0; }
370 inline auto operator!=(
const path& _lhs,
const path& _rhs) noexcept ->
bool {
return _lhs.compare(_rhs) != 0; }
371 inline auto operator< (
const path& _lhs,
const path& _rhs) noexcept ->
bool {
return _lhs.compare(_rhs) < 0; }
372 inline auto operator<=(
const path& _lhs,
const path& _rhs) noexcept ->
bool {
return _lhs.compare(_rhs) <= 0; }
373 inline auto operator> (
const path& _lhs,
const path& _rhs) noexcept ->
bool {
return _lhs.compare(_rhs) > 0; }
374 inline auto operator>=(
const path& _lhs,
const path& _rhs) noexcept ->
bool {
return _lhs.compare(_rhs) >= 0; }
379 auto operator<<(std::ostream& _os,
const path& _p) -> std::ostream&;
382 inline auto swap(
path& _lhs,
path& _rhs) noexcept ->
void { _lhs.swap(_rhs); }
387 #endif // IRODS_FILESYSTEM_PATH_HPP
auto operator!=(const reverse_iterator &_rhs) const noexcept -> bool
auto hash_value(const path &_p) noexcept -> std::size_t
reverse_iterator()=default
static constexpr const value_type *const dot
auto has_object_name() const -> bool
auto operator=(const Source &_source) -> path &
auto operator>>(std::istream &_is, path &_p) -> std::istream &
auto replace_extension(const path &_replacement={}) -> path &
auto lexically_proximate(const path &_base) const -> path
auto is_absolute() const -> bool
auto operator--() -> reverse_iterator &
auto operator=(value_type *_p) -> path &
auto operator=(const reverse_iterator &) -> reverse_iterator &=default
auto end() const -> iterator
auto operator/=(const path &_p) -> path &
auto remove_object_name() -> path &
~reverse_iterator()=default
path(const path &_p)=default
auto begin() const -> iterator
auto assign(InputIterator _begin, InputIterator _end) -> path &
auto operator+=(const Source &_p) -> path &
auto concat(InputIterator _begin, InputIterator _end) -> path &
iterator::difference_type difference_type
auto operator+=(const string_type &_p) -> path &
auto operator!=(const iterator &_other) const noexcept -> bool
auto empty() const -> bool
auto is_relative() const -> bool
auto swap(path &_rhs) -> void
auto operator=(const value_type *_p) -> path &
reverse_iterator(iterator _it)
auto operator+=(const value_type *_p) -> path &
auto operator=(const path &_p) -> path &=default
auto operator++(int) -> reverse_iterator
auto rend() const -> reverse_iterator
auto operator/(const path &_lhs, const path &_rhs) -> path
path::string_type::size_type pos_
auto operator->() const -> pointer
auto string() const -> string_type
auto operator--(int) -> reverse_iterator
static constexpr const value_type *const dot_dot
auto extension() const -> path
auto operator=(const iterator &_other) -> iterator &=default
iterator::iterator_category iterator_category
auto has_relative_path() const -> bool
auto operator=(iterator &&_other) -> iterator &=default
auto stem() const -> path
auto end(const collection_iterator &) noexcept -> const collection_iterator
auto operator*() const -> reference
iterator(const iterator &_other)=default
auto begin(collection_iterator _iter) noexcept -> collection_iterator
void append_separator_if_needed(const path &_p)
auto replace_object_name(const path &_replacement={}) -> path &
auto operator=(string_type &&_source) -> path &
auto operator++() -> reverse_iterator &
auto operator<<(std::ostream &_os, const path &_p) -> std::ostream &
auto operator->() const -> pointer
auto assign(string_type &&_source) -> path &
auto append(const Source &_source) -> path &
auto compare(const path &_p) const noexcept -> int
static constexpr value_type preferred_separator
auto operator!=(const path &_lhs, const path &_rhs) noexcept -> bool
auto operator--(int) -> iterator
std::basic_string< value_type > string_type
auto move(rcComm_t &_comm, const path &_old_p, const path &_new_p) -> void
std::ptrdiff_t difference_type
auto operator<=(const path &_lhs, const path &_rhs) noexcept -> bool
reverse_iterator(reverse_iterator &&)=default
auto operator==(const reverse_iterator &_rhs) const noexcept -> bool
auto operator+=(const path &_p) -> path &
auto relative_path() const -> path
auto operator>=(const path &_lhs, const path &_rhs) noexcept -> bool
typedef int((*funcPtr)())
auto operator*() const -> reference
auto operator==(const path &_lhs, const path &_rhs) noexcept -> bool
auto has_root_collection() const -> bool
auto operator>(const path &_lhs, const path &_rhs) noexcept -> bool
auto root_collection() const -> path
path(value_type *_source)
auto has_extension() const -> bool
std::bidirectional_iterator_tag iterator_category
auto operator/=(const Source &_source) -> path &
auto operator+=(value_type _p) -> path &
auto assign(const Source &_source) -> path &
auto lexically_relative(const path &_base) const -> path
auto rbegin() const -> reverse_iterator
iterator(iterator &&_other)=default
path(const value_type *_source)
auto operator=(path &&_p) noexcept -> path &=default
path(string_type &&_source) noexcept
auto has_parent_path() const -> bool
path(path &&_p) noexcept=default
auto parent_path() const -> path
auto operator<(const path &_lhs, const path &_rhs) noexcept -> bool
auto c_str() const noexcept -> const value_type *
path(InputIterator _begin, InputIterator _end)
auto operator++(int) -> iterator
auto lexicographical_compare(path::iterator _first1, path::iterator _last1, path::iterator _first2, path::iterator _last2) -> bool
reverse_iterator(const reverse_iterator &)=default
auto lexically_normal() const -> path
auto has_stem() const -> bool
auto operator==(const iterator &_other) const noexcept -> bool
auto object_name() const -> path
auto operator=(reverse_iterator &&) -> reverse_iterator &=default
auto append(InputIterator _begin, InputIterator _end) -> path &
path(const Source &_source)