NSVD Reader  0.0.1
nodamushi::svd::path< STR > Struct Template Reference

dot '.' separeted path. More...

#include <path.hpp>

Public Member Functions

 path ()
 
 path (string_ref s)
 
 path (const path< STR > &p, size_t from, size_t size)
 
 path (const path< STR > &a, const path< STR > &b)
 
 path (const path< STR > &a, path< STR > &&b)
 
 path (path< STR > &&)=default
 
template<typename STR2 >
 path (const path< STR2 > &p)
 
 path (const path< STR > &)=default
 
path< STR > & operator= (path< STR > &&)=default
 
path< STR > & operator= (const path< STR > &)=default
 
template<typename STR2 >
path< STR > & operator= (const path< STR2 > &p)
 
path< STR > & operator= (const std::string &s)
 
path< STR > & add (const path< STR > &p)
 
path< STR > & add (path< STR > &&p)
 
path< STR > & add_name (string_ref p)
 
path< STR > append (const path< STR > &a) const
 
path< STR > append (path< STR > &&a) const
 
path< STR > add (const path< STR > &a) const
 
path< STR > add (path< STR > &&a) const
 
string_ref operator[] (size_t i) const
 
size_t size () const noexcept
 
bool single () const noexcept
 
bool empty () const noexcept
 
 operator bool () const noexcept
 
path< STR > subpath (size_t from, size_t end=0) const
 
auto begin () const
 
auto end () const
 
auto cbegin () const
 
auto cend () const
 
auto begin ()
 
auto end ()
 
template<typename S >
bool equals (const path< S > &s) const
 
template<typename S >
bool operator!= (const path< S > &s) const
 
template<typename S >
bool operator== (const path< S > &s) const
 
bool operator== (string_ref s) const
 
bool operator!= (string_ref s) const
 
template<typename S >
int compare (const path< S > &s) const noexcept
 
template<typename S >
bool operator< (const path< S > &s) const noexcept
 
template<typename S >
bool operator> (const path< S > &s) const noexcept
 
template<typename S >
bool operator<= (const path< S > &s) const noexcept
 
template<typename S >
bool operator>= (const path< S > &s) const noexcept
 

Friends

template<typename STR2 >
class path
 

Detailed Description

template<typename STR = substring>
struct nodamushi::svd::path< STR >

dot '.' separeted path.

compare rule:
  • a == a
  • a < b
  • A < a
  • ab < ac
  • AB < ab
  • ab < AC
  • a0 < aa
  • a0 < a1
  • a1 < a2
  • a2 < a10
  • a00 < a10
  • a00 < a1
  • a0 < a00
  • a00 < a0a
  • a0a < a00a
  • a0 < a0a
  • a0a < a0b
  • a0a < a1
  • a < a.a

Definition at line 16 of file path.hpp.

Constructor & Destructor Documentation

◆ path() [1/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( )
inline

Definition at line 116 of file path.hpp.

◆ path() [2/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( string_ref  s)
inline

Definition at line 117 of file path.hpp.

◆ path() [3/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( const path< STR > &  p,
size_t  from,
size_t  size 
)
inline

Definition at line 139 of file path.hpp.

◆ path() [4/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( const path< STR > &  a,
const path< STR > &  b 
)
inline

Definition at line 141 of file path.hpp.

◆ path() [5/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( const path< STR > &  a,
path< STR > &&  b 
)
inline

Definition at line 147 of file path.hpp.

◆ path() [6/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( path< STR > &&  )
default

◆ path() [7/8]

template<typename STR = substring>
template<typename STR2 >
nodamushi::svd::path< STR >::path ( const path< STR2 > &  p)
inline

Definition at line 156 of file path.hpp.

◆ path() [8/8]

template<typename STR = substring>
nodamushi::svd::path< STR >::path ( const path< STR > &  )
default

Member Function Documentation

◆ add() [1/4]

template<typename STR = substring>
path<STR>& nodamushi::svd::path< STR >::add ( const path< STR > &  p)
inline

Definition at line 188 of file path.hpp.

◆ add() [2/4]

template<typename STR = substring>
path<STR>& nodamushi::svd::path< STR >::add ( path< STR > &&  p)
inline

Definition at line 197 of file path.hpp.

◆ add() [3/4]

template<typename STR = substring>
path<STR> nodamushi::svd::path< STR >::add ( const path< STR > &  a) const
inline

Definition at line 214 of file path.hpp.

◆ add() [4/4]

template<typename STR = substring>
path<STR> nodamushi::svd::path< STR >::add ( path< STR > &&  a) const
inline

Definition at line 215 of file path.hpp.

◆ add_name()

template<typename STR = substring>
path<STR>& nodamushi::svd::path< STR >::add_name ( string_ref  p)
inline

Definition at line 206 of file path.hpp.

◆ append() [1/2]

template<typename STR = substring>
path<STR> nodamushi::svd::path< STR >::append ( const path< STR > &  a) const
inline

Definition at line 212 of file path.hpp.

◆ append() [2/2]

template<typename STR = substring>
path<STR> nodamushi::svd::path< STR >::append ( path< STR > &&  a) const
inline

Definition at line 213 of file path.hpp.

◆ begin() [1/2]

template<typename STR = substring>
auto nodamushi::svd::path< STR >::begin ( ) const
inline

Definition at line 227 of file path.hpp.

◆ begin() [2/2]

template<typename STR = substring>
auto nodamushi::svd::path< STR >::begin ( )
inline

Definition at line 231 of file path.hpp.

◆ cbegin()

template<typename STR = substring>
auto nodamushi::svd::path< STR >::cbegin ( ) const
inline

Definition at line 229 of file path.hpp.

◆ cend()

template<typename STR = substring>
auto nodamushi::svd::path< STR >::cend ( ) const
inline

Definition at line 230 of file path.hpp.

◆ compare()

template<typename STR = substring>
template<typename S >
int nodamushi::svd::path< STR >::compare ( const path< S > &  s) const
inlinenoexcept

a == a a < b A < a ab < ac AB < ab ab < AC a0 < aa a0 < a1 a1 < a2 a2 < a10 a00 < a10 a00 < a1 a0 < a00 a00 < a0a a0a < a00a a0 < a0a a0a < a0b a0a < a1

a < a.a

Definition at line 291 of file path.hpp.

◆ empty()

template<typename STR = substring>
bool nodamushi::svd::path< STR >::empty ( ) const
inlinenoexcept

Definition at line 220 of file path.hpp.

◆ end() [1/2]

template<typename STR = substring>
auto nodamushi::svd::path< STR >::end ( ) const
inline

Definition at line 228 of file path.hpp.

◆ end() [2/2]

template<typename STR = substring>
auto nodamushi::svd::path< STR >::end ( )
inline

Definition at line 232 of file path.hpp.

◆ equals()

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::equals ( const path< S > &  s) const
inline

Definition at line 235 of file path.hpp.

◆ operator bool()

template<typename STR = substring>
nodamushi::svd::path< STR >::operator bool ( ) const
inlinenoexcept

Definition at line 221 of file path.hpp.

◆ operator!=() [1/2]

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::operator!= ( const path< S > &  s) const
inline

Definition at line 248 of file path.hpp.

◆ operator!=() [2/2]

template<typename STR = substring>
bool nodamushi::svd::path< STR >::operator!= ( string_ref  s) const
inline

Definition at line 263 of file path.hpp.

◆ operator<()

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::operator< ( const path< S > &  s) const
inlinenoexcept

Definition at line 303 of file path.hpp.

◆ operator<=()

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::operator<= ( const path< S > &  s) const
inlinenoexcept

Definition at line 305 of file path.hpp.

◆ operator=() [1/4]

template<typename STR = substring>
path<STR>& nodamushi::svd::path< STR >::operator= ( path< STR > &&  )
default

◆ operator=() [2/4]

template<typename STR = substring>
path<STR>& nodamushi::svd::path< STR >::operator= ( const path< STR > &  )
default

◆ operator=() [3/4]

template<typename STR = substring>
template<typename STR2 >
path<STR>& nodamushi::svd::path< STR >::operator= ( const path< STR2 > &  p)
inline

Definition at line 168 of file path.hpp.

◆ operator=() [4/4]

template<typename STR = substring>
path<STR>& nodamushi::svd::path< STR >::operator= ( const std::string &  s)
inline

Definition at line 177 of file path.hpp.

◆ operator==() [1/2]

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::operator== ( const path< S > &  s) const
inline

Definition at line 253 of file path.hpp.

◆ operator==() [2/2]

template<typename STR = substring>
bool nodamushi::svd::path< STR >::operator== ( string_ref  s) const
inline

Definition at line 258 of file path.hpp.

◆ operator>()

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::operator> ( const path< S > &  s) const
inlinenoexcept

Definition at line 304 of file path.hpp.

◆ operator>=()

template<typename STR = substring>
template<typename S >
bool nodamushi::svd::path< STR >::operator>= ( const path< S > &  s) const
inlinenoexcept

Definition at line 306 of file path.hpp.

◆ operator[]()

template<typename STR = substring>
string_ref nodamushi::svd::path< STR >::operator[] ( size_t  i) const
inline

Definition at line 217 of file path.hpp.

◆ single()

template<typename STR = substring>
bool nodamushi::svd::path< STR >::single ( ) const
inlinenoexcept

Definition at line 219 of file path.hpp.

◆ size()

template<typename STR = substring>
size_t nodamushi::svd::path< STR >::size ( ) const
inlinenoexcept

Definition at line 218 of file path.hpp.

◆ subpath()

template<typename STR = substring>
path<STR> nodamushi::svd::path< STR >::subpath ( size_t  from,
size_t  end = 0 
) const
inline

Definition at line 222 of file path.hpp.

Friends And Related Function Documentation

◆ path

template<typename STR = substring>
template<typename STR2 >
friend class path
friend

Definition at line 114 of file path.hpp.


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