Crow  1.0
A C++ microframework for the web
crow::json::detail::r_string Struct Reference

A read string implementation with comparison functionality. More...

Inheritance diagram for crow::json::detail::r_string:
Collaboration diagram for crow::json::detail::r_string:

Public Types

using iterator = const char *
 
using const_iterator = const char *
 

Public Member Functions

 r_string ()
 
 r_string (char *s, char *e)
 
 ~r_string ()
 
 r_string (const r_string &r)
 
 r_string (r_string &&r)
 
r_stringoperator= (r_string &&r)
 
r_stringoperator= (const r_string &r)
 
 operator std::string () const
 
const char * begin () const
 
const char * end () const
 
size_t size () const
 

Public Attributes

char * s_
 Start. More...
 
char * e_
 End. More...
 
uint8_t owned_ {0}
 

Private Member Functions

void force (char *s, uint32_t length)
 

Friends

std::ostream & operator<< (std::ostream &os, const r_string &s)
 
rvalue crow::json::load (const char *data, size_t size)
 

Detailed Description

A read string implementation with comparison functionality.

Member Typedef Documentation

◆ iterator

◆ const_iterator

Constructor & Destructor Documentation

◆ r_string() [1/4]

crow::json::detail::r_string::r_string ( )
inline

◆ r_string() [2/4]

crow::json::detail::r_string::r_string ( char *  s,
char *  e 
)
inline

◆ ~r_string()

crow::json::detail::r_string::~r_string ( )
inline

◆ r_string() [3/4]

crow::json::detail::r_string::r_string ( const r_string r)
inline

◆ r_string() [4/4]

crow::json::detail::r_string::r_string ( r_string &&  r)
inline

Member Function Documentation

◆ operator=() [1/2]

r_string& crow::json::detail::r_string::operator= ( r_string &&  r)
inline

◆ operator=() [2/2]

r_string& crow::json::detail::r_string::operator= ( const r_string r)
inline

◆ operator std::string()

crow::json::detail::r_string::operator std::string ( ) const
inline

◆ begin()

const char* crow::json::detail::r_string::begin ( ) const
inline
Here is the caller graph for this function:

◆ end()

const char* crow::json::detail::r_string::end ( ) const
inline
Here is the caller graph for this function:

◆ size()

size_t crow::json::detail::r_string::size ( ) const
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ force()

void crow::json::detail::r_string::force ( char *  s,
uint32_t  length 
)
inlineprivate

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const r_string s 
)
friend

◆ crow::json::load

rvalue crow::json::load ( const char *  data,
size_t  size 
)
friend

Member Data Documentation

◆ s_

char* crow::json::detail::r_string::s_

Start.

◆ e_

char* crow::json::detail::r_string::e_
mutable

End.

◆ owned_

uint8_t crow::json::detail::r_string::owned_ {0}

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