Bitcoin Core 30.99.0
P2P Digital Currency
Classes | Namespaces | Concepts | Macros | Enumerations | Functions
bitcoinkernel_wrapper.h File Reference
#include <kernel/bitcoinkernel.h>
#include <array>
#include <functional>
#include <memory>
#include <optional>
#include <span>
#include <stdexcept>
#include <string>
#include <string_view>
#include <type_traits>
#include <utility>
#include <vector>
Include dependency graph for bitcoinkernel_wrapper.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  btck::is_bitmask_enum< T >
 
struct  btck::is_bitmask_enum< ScriptVerificationFlags >
 
class  btck::Iterator< Collection, ValueType >
 
class  btck::Range< Container, SizeFunc, GetFunc >
 
class  btck::View< CType >
 
class  btck::Handle< CType, CopyFunc, DestroyFunc >
 
class  btck::UniqueHandle< CType, DestroyFunc >
 
struct  btck::UniqueHandle< CType, DestroyFunc >::Deleter
 
class  btck::ScriptPubkeyApi< Derived >
 
class  btck::ScriptPubkeyView
 
class  btck::ScriptPubkey
 
class  btck::TransactionOutputApi< Derived >
 
class  btck::TransactionOutputView
 
class  btck::TransactionOutput
 
class  btck::TxidApi< Derived >
 
class  btck::TxidView
 
class  btck::Txid
 
class  btck::OutPointApi< Derived >
 
class  btck::OutPointView
 
class  btck::OutPoint
 
class  btck::TransactionInputApi< Derived >
 
class  btck::TransactionInputView
 
class  btck::TransactionInput
 
class  btck::TransactionApi< Derived >
 
class  btck::TransactionView
 
class  btck::Transaction
 
class  btck::BlockHashApi< Derived >
 
class  btck::BlockHashView
 
class  btck::BlockHash
 
class  btck::Block
 
class  btck::Logger< T >
 
class  btck::BlockTreeEntry
 
class  btck::KernelNotifications
 
class  btck::BlockValidationState
 
class  btck::ValidationInterface
 
class  btck::ChainParams
 
class  btck::ContextOptions
 
class  btck::Context
 
class  btck::ChainstateManagerOptions
 
class  btck::ChainView
 
class  btck::CoinApi< Derived >
 
class  btck::CoinView
 
class  btck::Coin
 
class  btck::TransactionSpentOutputsApi< Derived >
 
class  btck::TransactionSpentOutputsView
 
class  btck::TransactionSpentOutputs
 
class  btck::BlockSpentOutputs
 
class  btck::ChainMan
 

Namespaces

namespace  btck
 

Concepts

concept  btck::BitmaskEnum
 
concept  btck::IndexedContainer
 
concept  btck::Log
 

Macros

#define MAKE_RANGE_METHOD(method_name, ContainerType, SizeFunc, GetFunc, container_expr)
 

Enumerations

enum class  btck::LogCategory : btck_LogCategory {
  btck::ALL = btck_LogCategory_ALL , btck::BENCH = btck_LogCategory_BENCH , btck::BLOCKSTORAGE = btck_LogCategory_BLOCKSTORAGE , btck::COINDB = btck_LogCategory_COINDB ,
  btck::LEVELDB = btck_LogCategory_LEVELDB , btck::MEMPOOL = btck_LogCategory_MEMPOOL , btck::PRUNE = btck_LogCategory_PRUNE , btck::RAND = btck_LogCategory_RAND ,
  btck::REINDEX = btck_LogCategory_REINDEX , btck::VALIDATION = btck_LogCategory_VALIDATION , btck::KERNEL = btck_LogCategory_KERNEL
}
 
enum class  btck::LogLevel : btck_LogLevel { btck::TRACE_LEVEL = btck_LogLevel_TRACE , btck::DEBUG_LEVEL = btck_LogLevel_DEBUG , btck::INFO_LEVEL = btck_LogLevel_INFO }
 
enum class  btck::ChainType : btck_ChainType {
  btck::MAINNET = btck_ChainType_MAINNET , btck::TESTNET = btck_ChainType_TESTNET , btck::TESTNET_4 = btck_ChainType_TESTNET_4 , btck::SIGNET = btck_ChainType_SIGNET ,
  btck::REGTEST = btck_ChainType_REGTEST
}
 
enum class  btck::SynchronizationState : btck_SynchronizationState { btck::INIT_REINDEX = btck_SynchronizationState_INIT_REINDEX , btck::INIT_DOWNLOAD = btck_SynchronizationState_INIT_DOWNLOAD , btck::POST_INIT = btck_SynchronizationState_POST_INIT }
 
enum class  btck::Warning : btck_Warning { btck::UNKNOWN_NEW_RULES_ACTIVATED = btck_Warning_UNKNOWN_NEW_RULES_ACTIVATED , btck::LARGE_WORK_INVALID_CHAIN = btck_Warning_LARGE_WORK_INVALID_CHAIN }
 
enum class  btck::ValidationMode : btck_ValidationMode { btck::VALID = btck_ValidationMode_VALID , btck::INVALID = btck_ValidationMode_INVALID , btck::INTERNAL_ERROR = btck_ValidationMode_INTERNAL_ERROR }
 
enum class  btck::BlockValidationResult : btck_BlockValidationResult {
  btck::UNSET = btck_BlockValidationResult_UNSET , btck::CONSENSUS = btck_BlockValidationResult_CONSENSUS , btck::CACHED_INVALID = btck_BlockValidationResult_CACHED_INVALID , btck::INVALID_HEADER = btck_BlockValidationResult_INVALID_HEADER ,
  btck::MUTATED = btck_BlockValidationResult_MUTATED , btck::MISSING_PREV = btck_BlockValidationResult_MISSING_PREV , btck::INVALID_PREV = btck_BlockValidationResult_INVALID_PREV , btck::TIME_FUTURE = btck_BlockValidationResult_TIME_FUTURE ,
  btck::HEADER_LOW_WORK = btck_BlockValidationResult_HEADER_LOW_WORK
}
 
enum class  btck::ScriptVerifyStatus : btck_ScriptVerifyStatus { btck::OK = btck_ScriptVerifyStatus_OK , btck::ERROR_INVALID_FLAGS_COMBINATION = btck_ScriptVerifyStatus_ERROR_INVALID_FLAGS_COMBINATION , btck::ERROR_SPENT_OUTPUTS_REQUIRED = btck_ScriptVerifyStatus_ERROR_SPENT_OUTPUTS_REQUIRED }
 
enum class  btck::ScriptVerificationFlags : btck_ScriptVerificationFlags {
  btck::NONE = btck_ScriptVerificationFlags_NONE , btck::P2SH = btck_ScriptVerificationFlags_P2SH , btck::DERSIG = btck_ScriptVerificationFlags_DERSIG , btck::NULLDUMMY = btck_ScriptVerificationFlags_NULLDUMMY ,
  btck::CHECKLOCKTIMEVERIFY = btck_ScriptVerificationFlags_CHECKLOCKTIMEVERIFY , btck::CHECKSEQUENCEVERIFY = btck_ScriptVerificationFlags_CHECKSEQUENCEVERIFY , btck::WITNESS = btck_ScriptVerificationFlags_WITNESS , btck::TAPROOT = btck_ScriptVerificationFlags_TAPROOT ,
  btck::ALL = btck_ScriptVerificationFlags_ALL
}
 

Functions

template<BitmaskEnum T>
constexpr T btck::operator| (T lhs, T rhs)
 
template<BitmaskEnum T>
constexpr T btck::operator& (T lhs, T rhs)
 
template<BitmaskEnum T>
constexpr T btck::operator^ (T lhs, T rhs)
 
template<BitmaskEnum T>
constexpr T btck::operator~ (T value)
 
template<BitmaskEnum T>
constexpr T & btck::operator|= (T &lhs, T rhs)
 
template<BitmaskEnum T>
constexpr T & btck::operator&= (T &lhs, T rhs)
 
template<BitmaskEnum T>
constexpr T & btck::operator^= (T &lhs, T rhs)
 
template<typename T >
btck::check (T ptr)
 
template<typename T >
std::vector< std::byte > btck::write_bytes (const T *object, int(*to_bytes)(const T *, btck_WriteBytes, void *))
 
void btck::logging_disable ()
 
void btck::logging_set_options (const btck_LoggingOptions &logging_options)
 
void btck::logging_set_level_category (LogCategory category, LogLevel level)
 
void btck::logging_enable_category (LogCategory category)
 
void btck::logging_disable_category (LogCategory category)
 

Macro Definition Documentation

◆ MAKE_RANGE_METHOD

#define MAKE_RANGE_METHOD (   method_name,
  ContainerType,
  SizeFunc,
  GetFunc,
  container_expr 
)
Value:
auto method_name() const & { \
return Range<ContainerType, SizeFunc, GetFunc>{container_expr}; \
} \
auto method_name() const && = delete;

Definition at line 259 of file bitcoinkernel_wrapper.h.