Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
sysio::chain::additional_block_signatures_extension Struct Reference

#include <block.hpp>

Inheritance diagram for sysio::chain::additional_block_signatures_extension:
Collaboration diagram for sysio::chain::additional_block_signatures_extension:

Public Member Functions

 additional_block_signatures_extension ()=default
 
 additional_block_signatures_extension (const vector< signature_type > &signatures)
 
 additional_block_signatures_extension (vector< signature_type > &&signatures)
 
void reflector_init ()
 

Static Public Member Functions

static constexpr uint16_t extension_id ()
 
static constexpr bool enforce_unique ()
 

Public Attributes

vector< signature_typesignatures
 

Detailed Description

Definition at line 54 of file block.hpp.

Constructor & Destructor Documentation

◆ additional_block_signatures_extension() [1/3]

sysio::chain::additional_block_signatures_extension::additional_block_signatures_extension ( )
default

◆ additional_block_signatures_extension() [2/3]

sysio::chain::additional_block_signatures_extension::additional_block_signatures_extension ( const vector< signature_type > & signatures)
inline

Definition at line 60 of file block.hpp.

61 :signatures( signatures )
62 {}

◆ additional_block_signatures_extension() [3/3]

sysio::chain::additional_block_signatures_extension::additional_block_signatures_extension ( vector< signature_type > && signatures)
inline

Definition at line 64 of file block.hpp.

65 :signatures( std::move(signatures) )
66 {}

Member Function Documentation

◆ enforce_unique()

static constexpr bool sysio::chain::additional_block_signatures_extension::enforce_unique ( )
inlinestaticconstexpr

Definition at line 56 of file block.hpp.

56{ return true; }

◆ extension_id()

static constexpr uint16_t sysio::chain::additional_block_signatures_extension::extension_id ( )
inlinestaticconstexpr

Definition at line 55 of file block.hpp.

55{ return 2; }
Here is the caller graph for this function:

◆ reflector_init()

void sysio::chain::additional_block_signatures_extension::reflector_init ( )

Definition at line 4 of file block.cpp.

4 {
6 "additional_block_signatures_extension expects FC to support reflector_init" );
7
8 SYS_ASSERT( signatures.size() > 0, ill_formed_additional_block_signatures_extension,
9 "Additional block signatures extension must contain at least one signature",
10 );
11
12 set<signature_type> unique_sigs;
13
14 for( const auto& s : signatures ) {
15 auto res = unique_sigs.insert( s );
16 SYS_ASSERT( res.second, ill_formed_additional_block_signatures_extension,
17 "Signature ${s} was repeated in the additional block signatures extension",
18 ("s", s)
19 );
20 }
21 }
#define SYS_ASSERT(expr, exc_type, FORMAT,...)
Definition exceptions.hpp:7
constexpr bool has_feature_reflector_init_on_unpacked_reflected_types
Definition raw.hpp:440
char * s

Member Data Documentation

◆ signatures

vector<signature_type> sysio::chain::additional_block_signatures_extension::signatures

Definition at line 70 of file block.hpp.


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