Kagome
Polkadot Runtime Engine in C++17
transaction_validity.hpp File Reference
#include <cstdint>
#include <vector>
#include <boost/variant.hpp>
#include <outcome/outcome.hpp>
#include "primitives/transaction.hpp"
#include "scale/tie.hpp"
Include dependency graph for transaction_validity.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kagome::primitives::ValidTransaction
 Information concerning a valid transaction. More...
 

Namespaces

 kagome::primitives
 

Typedefs

using kagome::primitives::TransactionValidityError = boost::variant< InvalidTransaction, UnknownTransaction >
 
using kagome::primitives::TransactionValidity = boost::variant< ValidTransaction, TransactionValidityError >
 

Enumerations

enum  kagome::primitives::TransactionSource : uint8_t { kagome::primitives::TransactionSource::InBlock, kagome::primitives::TransactionSource::Local, kagome::primitives::TransactionSource::External }
 
enum  kagome::primitives::InvalidTransaction : uint8_t {
  kagome::primitives::InvalidTransaction::Call = 1, kagome::primitives::InvalidTransaction::Payment, kagome::primitives::InvalidTransaction::Future, kagome::primitives::InvalidTransaction::Stale,
  kagome::primitives::InvalidTransaction::BadProof, kagome::primitives::InvalidTransaction::AncientBirthBlock, kagome::primitives::InvalidTransaction::ExhaustsResources, kagome::primitives::InvalidTransaction::Custom,
  kagome::primitives::InvalidTransaction::BadMandatory, kagome::primitives::InvalidTransaction::MandatoryDispatch
}
 Transaction is invalid. Details are described by the error code. More...
 
enum  kagome::primitives::UnknownTransaction : uint8_t { kagome::primitives::UnknownTransaction::CannotLookup = 1, kagome::primitives::UnknownTransaction::NoUnsignedValidator, kagome::primitives::UnknownTransaction::Custom }
 An unknown transaction validity. More...
 

Functions

template<class Stream , typename = std::enable_if_t<Stream::is_encoder_stream>>
Stream & kagome::primitives::operator<< (Stream &s, const InvalidTransaction &v)
 
template<class Stream , typename = std::enable_if_t<Stream::is_decoder_stream>>
Stream & kagome::primitives::operator>> (Stream &s, InvalidTransaction &v)
 
template<class Stream , typename = std::enable_if_t<Stream::is_encoder_stream>>
Stream & kagome::primitives::operator<< (Stream &s, const UnknownTransaction &v)
 
template<class Stream , typename = std::enable_if_t<Stream::is_decoder_stream>>
Stream & kagome::primitives::operator>> (Stream &s, UnknownTransaction &v)