cMHN 1.2
C++ library for learning MHNs with pRC
Loading...
Searching...
No Matches
pRC::String< N > Class Template Reference

#include <string.hpp>

Public Member Functions

 ~String ()=default
 
constexpr String (String const &)=default
 
constexpr String (String &&)=default
 
constexpr Stringoperator= (String const &) &=default
 
constexpr Stringoperator= (String &&) &=default
 
constexpr String ()
 
constexpr String (char const (&string)[N+1])
 
template<IsSame< char >... Ts>
requires (sizeof...(Ts) == size())
constexpr String (Ts const &...chars)
 
constexpr decltype(auto) operator[] (Index const index) &&
 
constexpr decltype(auto) operator[] (Index const index) const &&
 
constexpr decltype(auto) operator[] (Index const index) &
 
constexpr decltype(auto) operator[] (Index const index) const &
 
constexpr auto find (char const character) const
 
template<Index P, Index L>
requires (P + L < N)
constexpr auto substring () const
 
constexpr auto cString () &&=delete
 
constexpr auto cString () const &&=delete
 
constexpr auto cString () &
 
constexpr auto cString () const &
 

Static Public Member Functions

static constexpr auto size ()
 
static constexpr auto empty ()
 

Constructor & Destructor Documentation

◆ ~String()

template<Size N>
pRC::String< N >::~String ( )
default

◆ String() [1/5]

template<Size N>
pRC::String< N >::String ( String< N > const & )
constexprdefault

◆ String() [2/5]

template<Size N>
pRC::String< N >::String ( String< N > && )
constexprdefault

◆ String() [3/5]

template<Size N>
pRC::String< N >::String ( )
inlineconstexpr

◆ String() [4/5]

template<Size N>
pRC::String< N >::String ( char const (&) string[N+1])
inlineconstexpr

◆ String() [5/5]

template<Size N>
template<IsSame< char >... Ts>
requires (sizeof...(Ts) == size())
pRC::String< N >::String ( Ts const &... chars)
inlineconstexpr

Member Function Documentation

◆ cString() [1/4]

template<Size N>
auto pRC::String< N >::cString ( ) &
inlineconstexpr

◆ cString() [2/4]

template<Size N>
auto pRC::String< N >::cString ( ) &&
constexprdelete

◆ cString() [3/4]

template<Size N>
auto pRC::String< N >::cString ( ) const &
inlineconstexpr

◆ cString() [4/4]

template<Size N>
auto pRC::String< N >::cString ( ) const &&
constexprdelete

◆ empty()

template<Size N>
static constexpr auto pRC::String< N >::empty ( )
inlinestaticconstexpr

◆ find()

template<Size N>
auto pRC::String< N >::find ( char const character) const
inlineconstexpr

◆ operator=() [1/2]

template<Size N>
String & pRC::String< N >::operator= ( String< N > && ) &
constexprdefault

◆ operator=() [2/2]

template<Size N>
String & pRC::String< N >::operator= ( String< N > const & ) &
constexprdefault

◆ operator[]() [1/4]

template<Size N>
decltype(auto) pRC::String< N >::operator[] ( Index const index) &
inlineconstexpr

◆ operator[]() [2/4]

template<Size N>
decltype(auto) pRC::String< N >::operator[] ( Index const index) &&
inlineconstexpr

◆ operator[]() [3/4]

template<Size N>
decltype(auto) pRC::String< N >::operator[] ( Index const index) const &
inlineconstexpr

◆ operator[]() [4/4]

template<Size N>
decltype(auto) pRC::String< N >::operator[] ( Index const index) const &&
inlineconstexpr

◆ size()

template<Size N>
static constexpr auto pRC::String< N >::size ( )
inlinestaticconstexpr

◆ substring()

template<Size N>
template<Index P, Index L>
requires (P + L < N)
auto pRC::String< N >::substring ( ) const
inlineconstexpr

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