aboutsummaryrefslogtreecommitdiff
path: root/src/crypto/hex_base.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/crypto/hex_base.h')
-rw-r--r--src/crypto/hex_base.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/crypto/hex_base.h b/src/crypto/hex_base.h
new file mode 100644
index 0000000000..cdfea68c29
--- /dev/null
+++ b/src/crypto/hex_base.h
@@ -0,0 +1,23 @@
+// Copyright (c) 2009-present The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#ifndef BITCOIN_CRYPTO_HEX_BASE_H
+#define BITCOIN_CRYPTO_HEX_BASE_H
+
+#include <span.h>
+
+#include <cstddef>
+#include <cstdint>
+#include <string>
+
+/**
+ * Convert a span of bytes to a lower-case hexadecimal string.
+ */
+std::string HexStr(const Span<const uint8_t> s);
+inline std::string HexStr(const Span<const char> s) { return HexStr(MakeUCharSpan(s)); }
+inline std::string HexStr(const Span<const std::byte> s) { return HexStr(MakeUCharSpan(s)); }
+
+signed char HexDigit(char c);
+
+#endif // BITCOIN_CRYPTO_HEX_BASE_H