Branch data Line data Source code
1 : : // Copyright (c) 2009-2010 Satoshi Nakamoto 2 : : // Copyright (c) 2009-2019 The Bitcoin Core developers 3 : : // Distributed under the MIT software license, see the accompanying 4 : : // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 : : 6 : : #include <primitives/block.h> 7 : : 8 : : #include <hash.h> 9 : : #include <tinyformat.h> 10 : : 11 : 1509127 : uint256 CBlockHeader::GetHash() const 12 : : { 13 : 1509127 : return (CHashWriter{PROTOCOL_VERSION} << *this).GetHash(); 14 : : } 15 : : 16 : 293 : std::string CBlock::ToString() const 17 : : { 18 : 293 : std::stringstream s; 19 [ + - - + ]: 586 : s << strprintf("CBlock(hash=%s, ver=0x%08x, hashPrevBlock=%s, hashMerkleRoot=%s, nTime=%u, nBits=%08x, nNonce=%u, vtx=%u)\n", 20 [ + - + - ]: 293 : GetHash().ToString(), 21 : 293 : nVersion, 22 [ + - ]: 293 : hashPrevBlock.ToString(), 23 [ + - ]: 293 : hashMerkleRoot.ToString(), 24 : 293 : nTime, nBits, nNonce, 25 : 293 : vtx.size()); 26 [ + + ]: 282443 : for (const auto& tx : vtx) { 27 [ + - + - : 282150 : s << " " << tx->ToString() << "\n"; + - + - ] 28 : : } 29 [ + - ]: 293 : return s.str(); 30 : 293 : }