github.com/cosmos/cosmos-sdk@v0.50.10/types/errors/abci.go (about)

     1  package errors
     2  
     3  import (
     4  	abci "github.com/cometbft/cometbft/abci/types"
     5  
     6  	errorsmod "cosmossdk.io/errors"
     7  )
     8  
     9  // ResponseCheckTxWithEvents returns an ABCI ResponseCheckTx object with fields filled in
    10  // from the given error, gas values and events.
    11  func ResponseCheckTxWithEvents(err error, gw, gu uint64, events []abci.Event, debug bool) *abci.ResponseCheckTx {
    12  	space, code, log := errorsmod.ABCIInfo(err, debug)
    13  	return &abci.ResponseCheckTx{
    14  		Codespace: space,
    15  		Code:      code,
    16  		Log:       log,
    17  		GasWanted: int64(gw),
    18  		GasUsed:   int64(gu),
    19  		Events:    events,
    20  	}
    21  }
    22  
    23  // ResponseExecTxResultWithEvents returns an ABCI ExecTxResult object with fields
    24  // filled in from the given error, gas values and events.
    25  func ResponseExecTxResultWithEvents(err error, gw, gu uint64, events []abci.Event, debug bool) *abci.ExecTxResult {
    26  	space, code, log := errorsmod.ABCIInfo(err, debug)
    27  	return &abci.ExecTxResult{
    28  		Codespace: space,
    29  		Code:      code,
    30  		Log:       log,
    31  		GasWanted: int64(gw),
    32  		GasUsed:   int64(gu),
    33  		Events:    events,
    34  	}
    35  }
    36  
    37  // QueryResult returns a ResponseQuery from an error. It will try to parse ABCI
    38  // info from the error.
    39  func QueryResult(err error, debug bool) *abci.ResponseQuery {
    40  	space, code, log := errorsmod.ABCIInfo(err, debug)
    41  	return &abci.ResponseQuery{
    42  		Codespace: space,
    43  		Code:      code,
    44  		Log:       log,
    45  	}
    46  }