The Battle for Wesnoth 1.21.0-dev
 
Loading...
Searching...
No Matches
base64.hpp
Go to the documentation of this file.
1/*
2 Copyright (C) 2003 - 2025
3 by David White <dave@whitevine.net>
4 Part of the Battle for Wesnoth Project https://www.wesnoth.org/
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY.
12
13 See the COPYING file for more details.
14*/
15
16#pragma once
17
18#include <cstdint>
19#include "utils/span.hpp"
20#include <string>
21#include <string_view>
22#include <vector>
23
24namespace utils
25{
27}
28
29// Official Base64 encoding (RFC4648)
30namespace base64 {
31 std::vector<uint8_t> decode(std::string_view encoded);
32 std::string encode(utils::byte_view bytes);
33}
34// crypt()-compatible radix-64 encoding
35namespace crypt64 {
36 std::vector<uint8_t> decode(std::string_view encoded);
37 std::string encode(utils::byte_view bytes);
38 // Single character functions. For special use only
39 int decode(char encoded_char);
40 char encode(int value);
41}
std::string encode(utils::byte_view bytes)
Definition base64.cpp:223
std::vector< uint8_t > decode(std::string_view in)
Definition base64.cpp:219
std::string encode(utils::byte_view bytes)
Definition base64.cpp:233
std::vector< uint8_t > decode(std::string_view in)
Definition base64.cpp:229
std::unique_ptr< MIX_Audio, decltype(&MIX_DestroyAudio)> value
Definition sound.cpp:139