NGL  6.5
The NCCA Graphics Library
fmt::BasicStringRef< Char > Class Template Reference

#include <format.h>

+ Inheritance diagram for fmt::BasicStringRef< Char >:
+ Collaboration diagram for fmt::BasicStringRef< Char >:

Public Member Functions

 BasicStringRef (const Char *s, std::size_t size)
 
 BasicStringRef (const Char *s)
 
 BasicStringRef (const std::basic_string< Char > &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::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);

Definition at line 416 of file format.h.

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.

Definition at line 423 of file format.h.

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.

Definition at line 431 of file format.h.

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

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

Definition at line 439 of file format.h.

Member Function Documentation

template<typename Char>
int fmt::BasicStringRef< Char >::compare ( BasicStringRef< Char >  other) const
inline

Definition at line 458 of file format.h.

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

Returns a pointer to the string data.

Definition at line 452 of file format.h.

+ Here is the caller graph for this function:

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

Returns the string size.

Definition at line 455 of file format.h.

+ Here is the caller graph for this function:

template<typename Char>
std::basic_string<Char> fmt::BasicStringRef< Char >::to_string ( ) const
inline

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

Definition at line 447 of file format.h.

Friends And Related Function Documentation

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

Definition at line 469 of file format.h.

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

Definition at line 472 of file format.h.

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

Definition at line 475 of file format.h.

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

Definition at line 466 of file format.h.

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

Definition at line 478 of file format.h.

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

Definition at line 481 of file format.h.

Member Data Documentation

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

Definition at line 418 of file format.h.

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

Definition at line 419 of file format.h.


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