#include <producer_schedule.hpp>
Definition at line 163 of file producer_schedule.hpp.
◆ for_each_key() [1/2]
Definition at line 168 of file producer_schedule.hpp.
168 {
169 std::visit([&
op](
const auto &
a){
170 a.for_each_key(std::forward<Op>(
op));
172 }
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
block_signing_authority authority
◆ for_each_key() [2/2]
template<typename Op >
void sysio::chain::producer_authority::for_each_key |
( |
Op && | op | ) |
const |
|
inline |
Definition at line 175 of file producer_schedule.hpp.
175 {
177 }
static void for_each_key(const block_signing_authority &authority, Op &&op)
◆ from_shared()
Definition at line 197 of file producer_schedule.hpp.
197 {
198 producer_authority result;
199 result.producer_name = src.producer_name;
201 [](
const shared_block_signing_authority_v0&
a) {
203 }
204 }, src.authority);
205
206 return result;
207 }
overloaded(Ts...) -> overloaded< Ts... >
static auto from_shared(const shared_block_signing_authority_v0 &src)
◆ get_abi_variant()
fc::variant sysio::chain::producer_authority::get_abi_variant |
( |
| ) |
const |
ABI's for contracts expect variants to be serialized as a 2 entry array of [type-name, value].
This is incompatible with standard FC rules for static_variants which produce
[ordinal, value]
this method produces an appropriate variant for contracts where the authority field is correctly formatted
Definition at line 5 of file producer_schedule.cpp.
5 {
6 auto authority_variant = std::visit([](
const auto&
a){
9
10 fc::variant type = std::string(std::decay_t<
decltype(
a)>::abi_type_name());
11
13 std::move(type),
15 };
17
20 ("authority", std::move(authority_variant));
21}
An order-preserving dictionary of variants.
stores null, int64, uint64, double, bool, string, std::vector<variant>, and variant_object's.
std::vector< fc::variant > variants
void to_variant(const sysio::chain::shared_public_key &var, fc::variant &vo)
◆ keys_satisfy_and_relevant() [1/2]
Definition at line 179 of file producer_schedule.hpp.
179 {
180 return std::visit([&keys](
const auto &
a){
181 return a.keys_satisfy_and_relevant(keys);
183 }
◆ keys_satisfy_and_relevant() [2/2]
std::pair< bool, size_t > sysio::chain::producer_authority::keys_satisfy_and_relevant |
( |
const std::set< public_key_type > & | presented_keys | ) |
const |
|
inline |
Definition at line 185 of file producer_schedule.hpp.
185 {
187 }
static std::pair< bool, size_t > keys_satisfy_and_relevant(const std::set< public_key_type > &keys, const block_signing_authority &authority)
◆ to_shared()
Definition at line 189 of file producer_schedule.hpp.
189 {
190 auto shared_auth = std::visit([&alloc](
const auto&
a) {
191 return a.to_shared(alloc);
193
194 return shared_producer_authority(
producer_name, std::move(shared_auth));
195 }
◆ operator!=
Definition at line 226 of file producer_schedule.hpp.
226 {
227 return tie( lhs.producer_name, lhs.authority ) != tie( rhs.producer_name, rhs.authority );
228 }
◆ operator==
Definition at line 223 of file producer_schedule.hpp.
223 {
224 return tie( lhs.producer_name, lhs.authority ) == tie( rhs.producer_name, rhs.authority );
225 }
◆ authority
◆ producer_name
name sysio::chain::producer_authority::producer_name |
The documentation for this struct was generated from the following files: