#include "rtc_base/third_party/base64/base64.h"
#include <string.h>
#include "absl/strings/string_view.h"
#include "rtc_base/checks.h"
vector;
namespace rtc {
static const char kPad = …;
static const unsigned char pd = …;
static const unsigned char sp = …;
static const unsigned char il = …;
const char Base64::Base64Table[] = …
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
const unsigned char Base64::DecodeTable[] = …;
bool Base64::IsBase64Char(char ch) { … }
bool Base64::GetNextBase64Char(char ch, char* next_ch) { … }
bool Base64::IsBase64Encoded(absl::string_view str) { … }
void Base64::EncodeFromArray(const void* data,
size_t len,
std::string* result) { … }
size_t Base64::GetNextQuantum(DecodeFlags parse_flags,
bool illegal_pads,
const char* data,
size_t len,
size_t* dpos,
unsigned char qbuf[4],
bool* padded) { … }
bool Base64::DecodeFromArray(const char* data,
size_t len,
DecodeFlags flags,
std::string* result,
size_t* data_used) { … }
bool Base64::DecodeFromArray(const char* data,
size_t len,
DecodeFlags flags,
vector<char>* result,
size_t* data_used) { … }
bool Base64::DecodeFromArray(const char* data,
size_t len,
DecodeFlags flags,
vector<uint8_t>* result,
size_t* data_used) { … }
template <typename T>
bool Base64::DecodeFromArrayTemplate(const char* data,
size_t len,
DecodeFlags flags,
T* result,
size_t* data_used) { … }
}