AsmGrader 0.0.0
Loading...
Searching...
No Matches
asmgrader::StaticString< N > Class Template Reference

A fully compile-time capable string type Guaranteed to be null-terminated. More...

#include <static_string.hpp>

Public Member Functions

consteval StaticString ()=default
 
consteval StaticString (const char(&input)[N+1])
 
consteval StaticString (const ranges::forward_range auto &rng)
 
consteval std::size_t size () const
 
consteval operator std::string_view () const
 
std::string str () const
 
template<std::size_t OtherSize>
consteval auto operator<=> (const StaticString< OtherSize > &rhs) const
 
constexpr auto operator<=> (std::string_view rhs) const
 
template<std::size_t OtherSize>
consteval bool operator== (const StaticString< OtherSize > &rhs) const
 
consteval bool operator== (std::string_view rhs) const
 

Public Attributes

std::array< char, N+1 > data {}
 

Detailed Description

template<std::size_t N>
class asmgrader::StaticString< N >

A fully compile-time capable string type Guaranteed to be null-terminated.

Constructor & Destructor Documentation

◆ StaticString() [1/3]

template<std::size_t N>
asmgrader::StaticString< N >::StaticString ( )
constevaldefault

◆ StaticString() [2/3]

template<std::size_t N>
asmgrader::StaticString< N >::StaticString ( const char(&) input[N+1])
inlineconsteval

◆ StaticString() [3/3]

template<std::size_t N>
asmgrader::StaticString< N >::StaticString ( const ranges::forward_range auto & rng)
inlineconsteval

Member Function Documentation

◆ operator std::string_view()

template<std::size_t N>
asmgrader::StaticString< N >::operator std::string_view ( ) const
inlineconsteval

◆ operator<=>() [1/2]

template<std::size_t N>
template<std::size_t OtherSize>
auto asmgrader::StaticString< N >::operator<=> ( const StaticString< OtherSize > & rhs) const
inlineconsteval

◆ operator<=>() [2/2]

template<std::size_t N>
auto asmgrader::StaticString< N >::operator<=> ( std::string_view rhs) const
inlineconstexpr

◆ operator==() [1/2]

template<std::size_t N>
template<std::size_t OtherSize>
bool asmgrader::StaticString< N >::operator== ( const StaticString< OtherSize > & rhs) const
inlineconsteval

◆ operator==() [2/2]

template<std::size_t N>
bool asmgrader::StaticString< N >::operator== ( std::string_view rhs) const
inlineconsteval

◆ size()

template<std::size_t N>
std::size_t asmgrader::StaticString< N >::size ( ) const
inlineconsteval

◆ str()

template<std::size_t N>
std::string asmgrader::StaticString< N >::str ( ) const
inline

Member Data Documentation

◆ data

template<std::size_t N>
std::array<char, N + 1> asmgrader::StaticString< N >::data {}

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