Clementine
Public Types | Public Member Functions | Friends | List of all members
basic_string_view< Char > Class Template Reference

An implementation of std::basic_string_view for pre-C++17. More...

#include <core.h>

Public Types

using value_type = Char
 
using iterator = const Char *
 

Public Member Functions

constexpr basic_string_view (const Char *s, size_t count) FMT_NOEXCEPT
 Constructs a string reference object from a C string and a size. More...
 
 basic_string_view (const Char *s)
 Constructs a string reference object from a C string computing the size with std::char_traits<Char>::length. More...
 
template<typename Traits , typename Alloc >
FMT_CONSTEXPR basic_string_view (const std::basic_string< Char, Traits, Alloc > &s) FMT_NOEXCEPT
 Constructs a string reference from a std::basic_string object. More...
 
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
 Returns a pointer to the string data. More...
 
constexpr size_t size () const
 Returns the string size. More...
 
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
 

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).

Constructor & Destructor Documentation

◆ basic_string_view() [1/3]

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

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

◆ basic_string_view() [2/3]

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

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

◆ basic_string_view() [3/3]

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

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

Member Function Documentation

◆ data()

template<typename Char>
constexpr const Char* basic_string_view< Char >::data ( ) const
inline

Returns a pointer to the string data.

◆ size()

template<typename Char>
constexpr size_t basic_string_view< Char >::size ( ) const
inline

Returns the string size.


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