Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | Friends | List of all members
fmt::BasicStringRef< Char > Class Template Reference

#include <format.h>

Public Member Functions

 BasicStringRef (const Char *s, std::size_t size)
 
 BasicStringRef (const Char *s)
 
template<typename Allocator >
 BasicStringRef (const std::basic_string< Char, std::char_traits< Char >, Allocator > &s)
 
std::basic_string< Char > to_string () const
 
const Char * data () const
 
std::size_t size () const
 
int compare (BasicStringRef other) const
 

Private Attributes

const Char * data_
 
std::size_t size_
 

Friends

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

Detailed Description

template<typename Char>
class fmt::BasicStringRef< Char >

A string reference. It can be constructed from a C string or std::basic_string.

You can use one of the following typedefs for common character types:

+---------—+----------------------—+ | Type | Definition | +============+=========================+ | StringRef | BasicStringRef<char> | +---------—+----------------------—+ | WStringRef | BasicStringRef<wchar_t> | +---------—+----------------------—+

This class is most useful as a parameter type to allow passing different types of strings to a function, for example::

template <typename... Args> std::string format(StringRef format_str, const Args & ... args);

format("{}", 42); format(std::string("{}"), 42);

Constructor & Destructor Documentation

template<typename Char>
fmt::BasicStringRef< Char >::BasicStringRef ( const Char *  s,
std::size_t  size 
)
inline

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

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

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

template<typename Char>
template<typename Allocator >
fmt::BasicStringRef< Char >::BasicStringRef ( const std::basic_string< Char, std::char_traits< Char >, Allocator > &  s)
inline

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

Member Function Documentation

template<typename Char>
int fmt::BasicStringRef< Char >::compare ( BasicStringRef< Char >  other) const
inline
template<typename Char>
const Char* fmt::BasicStringRef< Char >::data ( ) const
inline
template<typename Char>
std::size_t fmt::BasicStringRef< Char >::size ( ) const
inline
template<typename Char>
std::basic_string<Char> fmt::BasicStringRef< Char >::to_string ( ) const
inline

Converts a string reference to an std::string object.

Friends And Related Function Documentation

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

Member Data Documentation

template<typename Char>
const Char* fmt::BasicStringRef< Char >::data_
private
template<typename Char>
std::size_t fmt::BasicStringRef< Char >::size_
private

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