Bitcoin ABC  0.26.3
P2P Digital Currency
Public Member Functions | Private Attributes | List of all members
CScriptCheck Class Reference

Closure representing one script verification. More...

#include <validation.h>

Collaboration diagram for CScriptCheck:
[legend]

Public Member Functions

 CScriptCheck (const CTxOut &outIn, const CTransaction &txToIn, unsigned int nInIn, uint32_t nFlagsIn, bool cacheIn, const PrecomputedTransactionData &txdataIn, TxSigCheckLimiter *pTxLimitSigChecksIn=nullptr, CheckInputsLimiter *pBlockLimitSigChecksIn=nullptr)
 
 CScriptCheck (const CScriptCheck &)=delete
 
CScriptCheckoperator= (const CScriptCheck &)=delete
 
 CScriptCheck (CScriptCheck &&)=default
 
CScriptCheckoperator= (CScriptCheck &&)=default
 
bool operator() ()
 
ScriptError GetScriptError () const
 
ScriptExecutionMetrics GetScriptExecutionMetrics () const
 

Private Attributes

CTxOut m_tx_out
 
const CTransactionptxTo
 
unsigned int nIn
 
uint32_t nFlags
 
bool cacheStore
 
ScriptError error {ScriptError::UNKNOWN}
 
ScriptExecutionMetrics metrics
 
PrecomputedTransactionData txdata
 
TxSigCheckLimiterpTxLimitSigChecks
 
CheckInputsLimiterpBlockLimitSigChecks
 

Detailed Description

Closure representing one script verification.

Note that this stores references to the spending transaction.

Note that if pLimitSigChecks is passed, then failure does not imply that scripts have failed.

Definition at line 526 of file validation.h.

Constructor & Destructor Documentation

◆ CScriptCheck() [1/3]

CScriptCheck::CScriptCheck ( const CTxOut outIn,
const CTransaction txToIn,
unsigned int  nInIn,
uint32_t  nFlagsIn,
bool  cacheIn,
const PrecomputedTransactionData txdataIn,
TxSigCheckLimiter pTxLimitSigChecksIn = nullptr,
CheckInputsLimiter pBlockLimitSigChecksIn = nullptr 
)
inline

Definition at line 540 of file validation.h.

◆ CScriptCheck() [2/3]

CScriptCheck::CScriptCheck ( const CScriptCheck )
delete

◆ CScriptCheck() [3/3]

CScriptCheck::CScriptCheck ( CScriptCheck &&  )
default

Member Function Documentation

◆ GetScriptError()

ScriptError CScriptCheck::GetScriptError ( ) const
inline

Definition at line 557 of file validation.h.

Here is the caller graph for this function:

◆ GetScriptExecutionMetrics()

ScriptExecutionMetrics CScriptCheck::GetScriptExecutionMetrics ( ) const
inline

Definition at line 559 of file validation.h.

Here is the caller graph for this function:

◆ operator()()

bool CScriptCheck::operator() ( )

Definition at line 1716 of file validation.cpp.

Here is the call graph for this function:

◆ operator=() [1/2]

CScriptCheck& CScriptCheck::operator= ( const CScriptCheck )
delete

◆ operator=() [2/2]

CScriptCheck& CScriptCheck::operator= ( CScriptCheck &&  )
default

Member Data Documentation

◆ cacheStore

bool CScriptCheck::cacheStore
private

Definition at line 532 of file validation.h.

◆ error

ScriptError CScriptCheck::error {ScriptError::UNKNOWN}
private

Definition at line 533 of file validation.h.

◆ m_tx_out

CTxOut CScriptCheck::m_tx_out
private

Definition at line 528 of file validation.h.

◆ metrics

ScriptExecutionMetrics CScriptCheck::metrics
private

Definition at line 534 of file validation.h.

◆ nFlags

uint32_t CScriptCheck::nFlags
private

Definition at line 531 of file validation.h.

◆ nIn

unsigned int CScriptCheck::nIn
private

Definition at line 530 of file validation.h.

◆ pBlockLimitSigChecks

CheckInputsLimiter* CScriptCheck::pBlockLimitSigChecks
private

Definition at line 537 of file validation.h.

◆ pTxLimitSigChecks

TxSigCheckLimiter* CScriptCheck::pTxLimitSigChecks
private

Definition at line 536 of file validation.h.

◆ ptxTo

const CTransaction* CScriptCheck::ptxTo
private

Definition at line 529 of file validation.h.

◆ txdata

PrecomputedTransactionData CScriptCheck::txdata
private

Definition at line 535 of file validation.h.


The documentation for this class was generated from the following files: