aboutsummaryrefslogtreecommitdiffstats
path: root/libdevcore/CommonData.h
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-12-06 03:35:45 +0800
committerchriseth <chris@ethereum.org>2018-12-06 05:37:05 +0800
commite8455c2a6d33abbebfe678fdaa1728311838e21a (patch)
tree93b4d89200f468189920f69ee218a5dbd59e1cfb /libdevcore/CommonData.h
parent3a378eae1a57683d0f31ab54c122b2a5c6a7c8bb (diff)
downloaddexon-solidity-e8455c2a6d33abbebfe678fdaa1728311838e21a.tar.gz
dexon-solidity-e8455c2a6d33abbebfe678fdaa1728311838e21a.tar.zst
dexon-solidity-e8455c2a6d33abbebfe678fdaa1728311838e21a.zip
Move toHex implementation to cpp file.
Diffstat (limited to 'libdevcore/CommonData.h')
-rw-r--r--libdevcore/CommonData.h20
1 files changed, 1 insertions, 19 deletions
diff --git a/libdevcore/CommonData.h b/libdevcore/CommonData.h
index 0a8c37d2..6da2b292 100644
--- a/libdevcore/CommonData.h
+++ b/libdevcore/CommonData.h
@@ -61,25 +61,7 @@ enum class HexCase
/// Convert a series of bytes to the corresponding string of hex duplets.
/// @param _w specifies the width of the first of the elements. Defaults to two - enough to represent a byte.
/// @example toHex("A\x69") == "4169"
-inline std::string toHex(bytes const& _data, int _w = 2, HexPrefix _prefix = HexPrefix::DontAdd, HexCase _case = HexCase::Lower)
-{
- std::ostringstream ret;
- int rix = _data.size() - 1;
- for (uint8_t c: _data)
- {
- // switch hex case every four hexchars
- auto hexcase = std::nouppercase;
- if (_case == HexCase::Upper)
- hexcase = std::uppercase;
- else if (_case == HexCase::Mixed)
- hexcase = (rix-- & 2) == 0 ? std::nouppercase : std::uppercase;
-
- ret << std::hex << hexcase << std::setfill('0') << std::setw(_w)
- << size_t(c);
- }
-
- return (_prefix == HexPrefix::Add) ? "0x" + ret.str() : ret.str();
-}
+std::string toHex(bytes const& _data, int _w = 2, HexPrefix _prefix = HexPrefix::DontAdd, HexCase _case = HexCase::Lower);
/// Converts a (printable) ASCII hex character into the correspnding integer value.
/// @example fromHex('A') == 10 && fromHex('f') == 15 && fromHex('5') == 5