Bitcoin Core 31.99.0
P2P Digital Currency
block.cpp
Go to the documentation of this file.
1// Copyright (c) 2009-2010 Satoshi Nakamoto
2// Copyright (c) 2009-present 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#include <memory>
12#include <sstream>
13
15{
16 return (HashWriter{} << *this).GetHash();
17}
18
19std::string CBlock::ToString() const
20{
21 std::stringstream s;
22 s << strprintf("CBlock(hash=%s, ver=0x%08x, hashPrevBlock=%s, hashMerkleRoot=%s, nTime=%u, nBits=%08x, nNonce=%u, vtx=%u)\n",
23 GetHash().ToString(),
28 vtx.size());
29 for (const auto& tx : vtx) {
30 s << " " << tx->ToString() << "\n";
31 }
32 return s.str();
33}
uint32_t nNonce
Definition: block.h:35
uint32_t nBits
Definition: block.h:34
uint32_t nTime
Definition: block.h:33
int32_t nVersion
Definition: block.h:30
uint256 hashPrevBlock
Definition: block.h:31
uint256 hashMerkleRoot
Definition: block.h:32
uint256 GetHash() const
Definition: block.cpp:14
std::string ToString() const
Definition: block.cpp:19
std::vector< CTransactionRef > vtx
Definition: block.h:77
A writer stream (for serialization) that computes a 256-bit hash.
Definition: hash.h:101
std::string ToString() const
Definition: uint256.cpp:21
256-bit opaque blob.
Definition: uint256.h:195
#define strprintf
Format arguments and return the string or write to given std::ostream (see tinyformat::format doc for...
Definition: tinyformat.h:1172