TrinityCore
fmt::BasicCStringRef< Char > Class Template Reference

#include <format.h>

Public Member Functions

 BasicCStringRef (const Char *s)
 
template<typename Allocator >
 BasicCStringRef (const std::basic_string< Char, std::char_traits< Char >, Allocator > &s)
 
const Char * c_str () const
 

Private Attributes

const Char * data_
 

Detailed Description

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

A reference to a null terminated string. 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 | +=============+==========================+ | CStringRef | BasicCStringRef<char> | +----------—+-----------------------—+ | WCStringRef | BasicCStringRef<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(CStringRef format_str, const Args & ... args);

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

Constructor & Destructor Documentation

◆ BasicCStringRef() [1/2]

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

Constructs a string reference object from a C string.

664 : data_(s) {}
const Char * data_
Definition: format.h:660

◆ BasicCStringRef() [2/2]

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

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

674  : data_(s.c_str()) {}
const Char * data_
Definition: format.h:660

Member Function Documentation

◆ c_str()

template<typename Char>
const Char* fmt::BasicCStringRef< Char >::c_str ( ) const
inline

Returns the pointer to a C string.

677 { return data_; }
const Char * data_
Definition: format.h:660
+ Here is the caller graph for this function:

Member Data Documentation

◆ data_

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

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