mempool_removal_reason.h raw

   1  // Copyright (c) 2016-present The Bitcoin Core developers
   2  // Distributed under the MIT software license, see the accompanying
   3  // file COPYING or https://opensource.org/license/mit/.
   4  
   5  #ifndef BITCOIN_KERNEL_MEMPOOL_REMOVAL_REASON_H
   6  #define BITCOIN_KERNEL_MEMPOOL_REMOVAL_REASON_H
   7  
   8  #include <string>
   9  
  10  /** Reason why a transaction was removed from the mempool,
  11   * this is passed to the notification signal.
  12   */
  13  enum class MemPoolRemovalReason {
  14      EXPIRY,      //!< Expired from mempool
  15      SIZELIMIT,   //!< Removed in size limiting
  16      REORG,       //!< Removed for reorganization
  17      BLOCK,       //!< Removed for block
  18      CONFLICT,    //!< Removed for conflict with in-block transaction
  19      REPLACED,    //!< Removed for replacement
  20  };
  21  
  22  std::string RemovalReasonToString(const MemPoolRemovalReason& r) noexcept;
  23  
  24  #endif // BITCOIN_KERNEL_MEMPOOL_REMOVAL_REASON_H
  25