0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-10-01 05:08:59 +02:00

ircd::base: Indicate noexcept on apropos out-of-line declarations.

This commit is contained in:
Jason Volk 2020-08-09 03:13:56 -07:00
parent 1baa590d9c
commit abc41ca666
2 changed files with 10 additions and 5 deletions

View file

@ -16,7 +16,7 @@ namespace ircd
// Binary -> Base58 encode suite
constexpr size_t b58encode_size(const size_t &);
size_t b58encode_size(const const_buffer &in);
string_view b58encode(const mutable_buffer &out, const const_buffer &in);
string_view b58encode(const mutable_buffer &out, const const_buffer &in) noexcept;
// Base58 -> Binary decode suite
constexpr size_t b58decode_size(const size_t &);
@ -26,12 +26,12 @@ namespace ircd
// Binary -> Base64 conversion suite
constexpr size_t b64encode_size(const size_t &);
size_t b64encode_size(const const_buffer &in);
string_view b64encode(const mutable_buffer &out, const const_buffer &in);
string_view b64encode(const mutable_buffer &out, const const_buffer &in) noexcept;
// Binary -> Base64 conversion without padding
constexpr size_t b64encode_unpadded_size(const size_t &);
size_t b64encode_unpadded_size(const const_buffer &in);
string_view b64encode_unpadded(const mutable_buffer &out, const const_buffer &in);
string_view b64encode_unpadded(const mutable_buffer &out, const const_buffer &in) noexcept;
// Base64 -> Binary conversion (padded or unpadded)
constexpr size_t b64decode_size(const size_t &);
@ -42,8 +42,8 @@ namespace ircd
string_view b64tob58(const mutable_buffer &out, const string_view &in);
string_view b58tob64(const mutable_buffer &out, const string_view &in);
string_view b58tob64_unpadded(const mutable_buffer &out, const string_view &in);
string_view b64tob64url(const mutable_buffer &out, const string_view &in);
string_view b64urltob64(const mutable_buffer &out, const string_view &in);
string_view b64tob64url(const mutable_buffer &out, const string_view &in) noexcept;
string_view b64urltob64(const mutable_buffer &out, const string_view &in) noexcept;
}
inline size_t

View file

@ -24,6 +24,7 @@ namespace ircd::base
ircd::string_view
ircd::b64urltob64(const mutable_buffer &out,
const string_view &in)
noexcept
{
//TODO: optimize with single pass
string_view ret(in);
@ -35,6 +36,7 @@ ircd::b64urltob64(const mutable_buffer &out,
ircd::string_view
ircd::b64tob64url(const mutable_buffer &out,
const string_view &in)
noexcept
{
//TODO: optimize with single pass
string_view ret(in);
@ -145,6 +147,7 @@ ircd::base::b64_encode_permute_tab
ircd::string_view
ircd::b64encode(const mutable_buffer &out,
const const_buffer &in)
noexcept
{
const auto pads
{
@ -171,6 +174,7 @@ ircd::b64encode(const mutable_buffer &out,
ircd::string_view
ircd::b64encode_unpadded(const mutable_buffer &out,
const const_buffer &in)
noexcept
{
const size_t res_len
{
@ -362,6 +366,7 @@ ircd::b58decode(const mutable_buffer &buf,
ircd::string_view
ircd::b58encode(const mutable_buffer &buf,
const const_buffer &in)
noexcept
{
auto p(begin(in));
size_t zeroes(0);