rapidyaml  0.16.0
parseandemitYAML,anddoitfast

Typedefs

using c4::fmt::const_base64_wrapper = detail::base64_wrapper_< cbyte >
 a tag type to mark a payload to be encoded as base64 More...
 
using c4::fmt::base64_wrapper = detail::base64_wrapper_< byte >
 a tag type to mark a payload to be decoded as base64 More...
 
template<class Container >
using c4::fmt::const_base64_container_wrapper = detail::base64_container_wrapper_< const Container, cbyte >
 a tag type to mark a payload as base64-encoded More...
 
template<class Container >
using c4::fmt::base64_container_wrapper = detail::base64_container_wrapper_< Container, byte >
 a tag type to mark a payload to be encoded as base64 More...
 

Functions

const_base64_wrapper c4::fmt::cbase64 (csubstr s, size_t *reqsize=nullptr)
 a tag function to mark a csubstr payload to be encoded in base64 format More...
 
const_base64_wrapper c4::fmt::base64 (csubstr s, size_t *reqsize=nullptr)
 a tag function to mark a csubstr payload to be encoded in base64 format More...
 
base64_wrapper c4::fmt::base64 (substr s, size_t *reqsize=nullptr)
 a tag function to mark a variable to be decoded from base64 More...
 
template<class T >
const_base64_wrapper c4::fmt::cbase64 (T const *arg, size_t sz, size_t *reqsize=nullptr)
 a tag function to mark a payload to be encoded in base64 format More...
 
template<class T >
auto c4::fmt::base64 (T *arg, size_t sz, size_t *reqsize=nullptr) -> typename std::conditional< std::is_const< typename std::remove_reference< typename std::remove_pointer< T >::type >::type >::value, const_base64_wrapper, base64_wrapper >::type
 a tag function to mark a payload to be encoded in base64 format More...
 
template<class T >
auto c4::fmt::cbase64 (T const &arg, size_t *reqsize=nullptr) -> typename std::enable_if< !detail::has_resize< T >::value, const_base64_wrapper >::type
 a tag function to mark a payload to be encoded in base64 format More...
 
template<class T >
auto c4::fmt::base64 (T &arg, size_t *reqsize=nullptr) -> typename std::enable_if< !detail::has_resize< T >::value, typename std::conditional< std::is_const< typename std::remove_reference< typename std::remove_pointer< T >::type >::type >::value, const_base64_wrapper, base64_wrapper >::type >::type
 a tag function to mark a payload to be encoded or decoded in base64 format More...
 

Detailed Description

Typedef Documentation

using c4::fmt::const_base64_wrapper = typedef detail::base64_wrapper_<cbyte>

a tag type to mark a payload to be encoded as base64

Definition at line 103 of file format_base64.hpp.

using c4::fmt::base64_wrapper = typedef detail::base64_wrapper_<byte>

a tag type to mark a payload to be decoded as base64

Definition at line 105 of file format_base64.hpp.

template<class Container >
using c4::fmt::const_base64_container_wrapper = typedef detail::base64_container_wrapper_<const Container, cbyte>

a tag type to mark a payload as base64-encoded

Definition at line 110 of file format_base64.hpp.

template<class Container >
using c4::fmt::base64_container_wrapper = typedef detail::base64_container_wrapper_<Container, byte>

a tag type to mark a payload to be encoded as base64

Definition at line 113 of file format_base64.hpp.

Function Documentation

const_base64_wrapper c4::fmt::cbase64 ( csubstr  s,
size_t *  reqsize = nullptr 
)
inline

a tag function to mark a csubstr payload to be encoded in base64 format

Definition at line 117 of file format_base64.hpp.

118 {
119  return const_base64_wrapper(cblob(s.str, s.len), reqsize);
120 }
detail::base64_wrapper_< cbyte > const_base64_wrapper
a tag type to mark a payload to be encoded as base64
const_base64_wrapper c4::fmt::base64 ( csubstr  s,
size_t *  reqsize = nullptr 
)
inline

a tag function to mark a csubstr payload to be encoded in base64 format

Definition at line 122 of file format_base64.hpp.

Referenced by sample_base64().

123 {
124  return const_base64_wrapper(cblob(s.str, s.len), reqsize);
125 }
detail::base64_wrapper_< cbyte > const_base64_wrapper
a tag type to mark a payload to be encoded as base64
base64_wrapper c4::fmt::base64 ( substr  s,
size_t *  reqsize = nullptr 
)
inline

a tag function to mark a variable to be decoded from base64

Definition at line 127 of file format_base64.hpp.

128 {
129  return base64_wrapper(blob(s.str, s.len), reqsize);
130 }
detail::base64_wrapper_< byte > base64_wrapper
a tag type to mark a payload to be decoded as base64
template<class T >
const_base64_wrapper c4::fmt::cbase64 ( T const *  arg,
size_t  sz,
size_t *  reqsize = nullptr 
)
inline

a tag function to mark a payload to be encoded in base64 format

Definition at line 135 of file format_base64.hpp.

136 {
137  return const_base64_wrapper(cblob(arg, sz), reqsize);
138 }
detail::base64_wrapper_< cbyte > const_base64_wrapper
a tag type to mark a payload to be encoded as base64
template<class T >
auto c4::fmt::base64 ( T *  arg,
size_t  sz,
size_t *  reqsize = nullptr 
) -> typename std::conditional<std::is_const<typename std::remove_reference<typename std::remove_pointer<T>::type>::type>::value, const_base64_wrapper, base64_wrapper>::type
inline

a tag function to mark a payload to be encoded in base64 format

Definition at line 141 of file format_base64.hpp.

145 {
146  using U = typename std::remove_reference<typename std::remove_pointer<T>::type>::type;
147  using ret_type = typename std::conditional<std::is_const<U>::value,
149  base64_wrapper>::type;
150  using blob_type = typename std::conditional<std::is_const<U>::value,
151  cblob,
152  blob>::type;
153  return ret_type(blob_type(arg, sz), reqsize);
154 }
detail::base64_wrapper_< byte > base64_wrapper
a tag type to mark a payload to be decoded as base64
detail::base64_wrapper_< cbyte > const_base64_wrapper
a tag type to mark a payload to be encoded as base64
template<class T >
auto c4::fmt::cbase64 ( T const &  arg,
size_t *  reqsize = nullptr 
) -> typename std::enable_if< detail::has_resize< T >::value, const_base64_container_wrapper< T >>::type
inline

a tag function to mark a payload to be encoded in base64 format

a tag function to mark a container (payload with a .resize() method) to be encoded in base64 format.

Definition at line 159 of file format_base64.hpp.

161 {
162  return const_base64_wrapper(cblob(arg), reqsize);
163 }
detail::base64_wrapper_< cbyte > const_base64_wrapper
a tag type to mark a payload to be encoded as base64
template<class T >
auto c4::fmt::base64 ( T &  arg,
size_t *  reqsize = nullptr 
) -> typename std::enable_if< detail::has_resize< T >::value, typename std::conditional< std::is_const< typename std::remove_reference< typename std::remove_pointer< T >::type >::type >::value, const_base64_container_wrapper< T >, base64_container_wrapper< T >>::type >::type
inline

a tag function to mark a payload to be encoded or decoded in base64 format

a tag function to mark a container (payload with a .resize() method) to be encoded or decoded in base64 format.

Subsequently when decoding, from_chars() will resize the container to fit the decoded data.

Definition at line 166 of file format_base64.hpp.

171 {
172  using U = typename std::remove_reference<typename std::remove_pointer<T>::type>::type;
173  using ret_type = typename std::conditional<std::is_const<U>::value,
175  base64_wrapper>::type;
176  using blob_type = typename std::conditional<std::is_const<U>::value,
177  cblob,
178  blob>::type;
179  return ret_type(blob_type(arg), reqsize);
180 }
detail::base64_wrapper_< byte > base64_wrapper
a tag type to mark a payload to be decoded as base64
detail::base64_wrapper_< cbyte > const_base64_wrapper
a tag type to mark a payload to be encoded as base64