Embedded Template Library 1.0
Loading...
Searching...
No Matches
etl::base64_rfc4648_url_decoder< Buffer_Size > Class Template Reference

Base64 RFC-4648-URL Decoder. More...

#include <base64_decoder.h>

Public Member Functions

 ETL_STATIC_ASSERT ((Buffer_Size >=etl::base64::Min_Decode_Buffer_Size), "Buffer size must be greater than etl::base64::Min_Decode_Buffer_Size")
 
ETL_CONSTEXPR14 base64_rfc4648_url_decoder ()
 Base64 RFC-4648-Padding constructor.
 
ETL_CONSTEXPR14 base64_rfc4648_url_decoder (callback_type callback_)
 Base64 RFC-4648-Padding constructor.
 
- Public Member Functions inherited from etl::ibase64_decoder
template<typename T >
ETL_CONSTEXPR14 bool decode (T value)
 Decode to Base64.
 
template<typename TInputIterator >
ETL_CONSTEXPR14 bool decode (TInputIterator input_begin, TInputIterator input_end)
 Decode from Base64.
 
template<typename TInputIterator >
ETL_CONSTEXPR14 bool decode (TInputIterator input_begin, size_t input_length)
 Decode from Base64.
 
template<typename TInputIterator >
ETL_CONSTEXPR14 bool decode_final (TInputIterator input_begin, TInputIterator input_end)
 Decode from Base64.
 
template<typename TInputIterator >
ETL_CONSTEXPR14 bool decode_final (TInputIterator input_begin, size_t input_length)
 Decode from Base64.
 
ETL_CONSTEXPR14 bool flush ()
 Flush any remaining data to the output.
 
ETL_CONSTEXPR14 void restart ()
 Reset the encoder.
 
ETL_NODISCARD ETL_CONSTEXPR14 const unsigned charbegin () const
 Returns the beginning of the output buffer.
 
ETL_NODISCARD ETL_CONSTEXPR14 const unsigned charend () const
 This only returns a useful value if a callback has not been set or called.
 
ETL_NODISCARD ETL_CONSTEXPR14 const unsigned charcbegin () const
 Returns the beginning of the output buffer.
 
ETL_NODISCARD ETL_CONSTEXPR14 const unsigned charcend () const
 This only returns a useful value if a callback has not been set or called.
 
ETL_NODISCARD ETL_CONSTEXPR14 size_t size () const
 
ETL_NODISCARD ETL_CONSTEXPR14 size_t buffer_size () const
 Returns the maximum size of the output buffer.
 
ETL_NODISCARD ETL_CONSTEXPR14 span_type span () const
 
ETL_NODISCARD ETL_CONSTEXPR14 bool overflow () const
 Returns true if the output buffer has overflowed.
 
ETL_NODISCARD ETL_CONSTEXPR14 bool invalid_data () const
 Returns true if an invalid character was detected.
 
ETL_NODISCARD ETL_CONSTEXPR14 bool error () const
 Returns true if an error was detected.
 

Static Public Member Functions

static ETL_NODISCARD ETL_CONSTEXPR14 size_t safe_output_buffer_size (size_t input_length)
 Calculate the required output encode buffer size.
 

Additional Inherited Members

- Public Types inherited from etl::ibase64_decoder
typedef etl::span< const unsigned charspan_type
 
typedef etl::delegate< void(const span_type &)> callback_type
 
- Public Types inherited from etl::base64
enum  { Invalid_Data = etl::integral_limits<int>::max , Min_Encode_Buffer_Size = 4 , Min_Decode_Buffer_Size = 3 }
 
- Protected Member Functions inherited from etl::ibase64_decoder
ETL_CONSTEXPR14 ibase64_decoder (const char *encoder_table_, bool use_padding_, unsigned char *p_output_buffer_, size_t ouput_buffer_max_size_, callback_type callback_)
 Constructor.
 
- Protected Member Functions inherited from etl::base64
ETL_CONSTEXPR14 base64 (const char *encoder_table_, bool use_padding_)
 
- Static Protected Member Functions inherited from etl::ibase64_decoder
static ETL_NODISCARD ETL_CONSTEXPR14 size_t decoded_size_from_valid_input_length (size_t input_length)
 Calculates the minimum buffer size required to decode from Base64.
 
- Static Protected Member Functions inherited from etl::base64
static ETL_CONSTEXPR14 const charcharacter_set_1 ()
 
static ETL_CONSTEXPR14 const charcharacter_set_2 ()
 
static ETL_CONSTEXPR14 const charcharacter_set_3 ()
 
- Protected Attributes inherited from etl::base64
const charencoder_table
 
const bool use_padding
 

Detailed Description

template<size_t Buffer_Size = etl::base64::Min_Decode_Buffer_Size>
class etl::base64_rfc4648_url_decoder< Buffer_Size >

Base64 RFC-4648-URL Decoder.


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