Bitcoin Core 28.99.0
P2P Digital Currency
tx_out.cpp
Go to the documentation of this file.
1// Copyright (c) 2019-2022 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
6#include <core_memusage.h>
7#include <policy/feerate.h>
8#include <policy/policy.h>
10#include <streams.h>
11#include <test/fuzz/fuzz.h>
12
14{
15 DataStream ds{buffer};
16 CTxOut tx_out;
17 try {
18 ds >> tx_out;
19 } catch (const std::ios_base::failure&) {
20 return;
21 }
22
23 const CFeeRate dust_relay_fee{DUST_RELAY_TX_FEE};
24 (void)GetDustThreshold(tx_out, dust_relay_fee);
25 (void)IsDust(tx_out, dust_relay_fee);
26 (void)RecursiveDynamicUsage(tx_out);
27
28 (void)tx_out.ToString();
29 (void)tx_out.IsNull();
30 tx_out.SetNull();
31 assert(tx_out.IsNull());
32}
Fee rate in satoshis per kilovirtualbyte: CAmount / kvB.
Definition: feerate.h:33
An output of a transaction.
Definition: transaction.h:150
void SetNull()
Definition: transaction.h:164
bool IsNull() const
Definition: transaction.h:170
std::string ToString() const
Definition: transaction.cpp:61
Double ended buffer combining vector and stream-like interfaces.
Definition: streams.h:147
static size_t RecursiveDynamicUsage(const CScript &script)
Definition: core_memusage.h:12
CAmount GetDustThreshold(const CTxOut &txout, const CFeeRate &dustRelayFeeIn)
Definition: policy.cpp:26
bool IsDust(const CTxOut &txout, const CFeeRate &dustRelayFeeIn)
Definition: policy.cpp:65
static constexpr unsigned int DUST_RELAY_TX_FEE
Min feerate for defining dust.
Definition: policy.h:55
FUZZ_TARGET(tx_out)
Definition: tx_out.cpp:13
assert(!tx.IsCoinBase())