SoPlex Documentation
Loading...
Searching...
No Matches
basic_string_view< Char > Class Template Reference

#include <core.h>

Public Types

using value_type = Char
 
using iterator = const Char*
 

Public Member Functions

constexpr basic_string_view () FMT_NOEXCEPT
 
constexpr basic_string_view (const Char *s, size_t count) FMT_NOEXCEPT
 
 basic_string_view (const Char *s)
 
template<typename Traits , typename Alloc >
FMT_CONSTEXPR basic_string_view (const std::basic_string< Char, Traits, Alloc > &s) FMT_NOEXCEPT
 
template<typename S , FMT_ENABLE_IF(std::is_same< S, detail::std_string_view< Char > >::value) >
FMT_CONSTEXPR basic_string_view (S s) FMT_NOEXCEPT
 
constexpr const Char * data () const
 
constexpr size_t size () const
 
constexpr iterator begin () const
 
constexpr iterator end () const
 
constexpr const Char & operator[] (size_t pos) const
 
FMT_CONSTEXPR void remove_prefix (size_t n)
 
int compare (basic_string_view other) const
 

Private Attributes

const Char * data_
 
size_t size_
 

Friends

bool operator== (basic_string_view lhs, basic_string_view rhs)
 
bool operator!= (basic_string_view lhs, basic_string_view rhs)
 
bool operator< (basic_string_view lhs, basic_string_view rhs)
 
bool operator<= (basic_string_view lhs, basic_string_view rhs)
 
bool operator> (basic_string_view lhs, basic_string_view rhs)
 
bool operator>= (basic_string_view lhs, basic_string_view rhs)
 

Detailed Description

template<typename Char>
class basic_string_view< Char >

An implementation of std::basic_string_view for pre-C++17. It provides a subset of the API. fmt::basic_string_view is used for format strings even if std::string_view is available to prevent issues when a library is compiled with a different -std option than the client code (which is not recommended).

Definition at line 355 of file core.h.

Member Typedef Documentation

◆ iterator

template<typename Char >
using iterator = const Char*

Definition at line 362 of file core.h.

◆ value_type

template<typename Char >
using value_type = Char

Definition at line 361 of file core.h.

Constructor & Destructor Documentation

◆ basic_string_view() [1/5]

template<typename Char >
basic_string_view ( )
constexpr

Definition at line 364 of file core.h.

◆ basic_string_view() [2/5]

template<typename Char >
basic_string_view ( const Char * s,
size_t count )
constexpr

Constructs a string reference object from a C string and a size.

Definition at line 367 of file core.h.

◆ basic_string_view() [3/5]

template<typename Char >
basic_string_view ( const Char * s)

\rst Constructs a string reference object from a C string computing the size with std::char_traits<Char>::length. \endrst

Definition at line 380 of file core.h.

◆ basic_string_view() [4/5]

template<typename Char >
template<typename Traits , typename Alloc >
FMT_CONSTEXPR basic_string_view ( const std::basic_string< Char, Traits, Alloc > & s)

Constructs a string reference from a std::basic_string object.

Definition at line 385 of file core.h.

◆ basic_string_view() [5/5]

template<typename Char >
template<typename S , FMT_ENABLE_IF(std::is_same< S, detail::std_string_view< Char > >::value) >
FMT_CONSTEXPR basic_string_view ( S s)

Definition at line 392 of file core.h.

Member Function Documentation

◆ begin()

template<typename Char >
iterator begin ( ) const
constexpr

◆ compare()

template<typename Char >
int compare ( basic_string_view< Char > other) const

Definition at line 412 of file core.h.

References basic_string_view< Char >::data_, and basic_string_view< Char >::size_.

◆ data()

◆ end()

template<typename Char >
iterator end ( ) const
constexpr

◆ operator[]()

template<typename Char >
const Char & operator[] ( size_t pos) const
constexpr

Definition at line 404 of file core.h.

References basic_string_view< Char >::data_.

◆ remove_prefix()

template<typename Char >
FMT_CONSTEXPR void remove_prefix ( size_t n)

Definition at line 406 of file core.h.

References basic_string_view< Char >::data_, and basic_string_view< Char >::size_.

◆ size()

Friends And Related Symbol Documentation

◆ operator!=

template<typename Char >
bool operator!= ( basic_string_view< Char > lhs,
basic_string_view< Char > rhs )
friend

Definition at line 423 of file core.h.

◆ operator<

template<typename Char >
bool operator< ( basic_string_view< Char > lhs,
basic_string_view< Char > rhs )
friend

Definition at line 426 of file core.h.

◆ operator<=

template<typename Char >
bool operator<= ( basic_string_view< Char > lhs,
basic_string_view< Char > rhs )
friend

Definition at line 429 of file core.h.

◆ operator==

template<typename Char >
bool operator== ( basic_string_view< Char > lhs,
basic_string_view< Char > rhs )
friend

Definition at line 420 of file core.h.

◆ operator>

template<typename Char >
bool operator> ( basic_string_view< Char > lhs,
basic_string_view< Char > rhs )
friend

Definition at line 432 of file core.h.

◆ operator>=

template<typename Char >
bool operator>= ( basic_string_view< Char > lhs,
basic_string_view< Char > rhs )
friend

Definition at line 435 of file core.h.

Member Data Documentation

◆ data_

◆ size_

template<typename Char >
size_t size_
private