7namespace sysio {
namespace chain {
16 struct by_account_permission;
20 ordered_unique<tag<by_id>, member<permission_usage_object, permission_usage_object::id_type, &permission_usage_object::id>>
46 template <
typename Index>
49 if( owner != other.owner )
53 if(
id == other.id ||
id == other.parent )
59 if(
id == parent->parent )
61 if( parent->parent._id == 0 )
89 ordered_unique<tag<by_id>, member<permission_object, permission_object::id_type, &permission_object::id>>,
90 ordered_unique<tag<by_parent>,
92 member<permission_object, permission_object::id_type, &permission_object::parent>,
93 member<permission_object, permission_object::id_type, &permission_object::id>
96 ordered_unique<tag<by_owner>,
98 member<permission_object, account_name, &permission_object::owner>,
99 member<permission_object, permission_name, &permission_object::name>
102 ordered_unique<tag<by_name>,
104 member<permission_object, permission_name, &permission_object::name>,
105 member<permission_object, permission_object::id_type, &permission_object::id>
114 static const uint64_t overhead = 5 * overhead_per_row_per_index_ram_bytes;
#define CHAINBASE_SET_INDEX_TYPE(OBJECT_TYPE, INDEX_TYPE)
boost::multi_index_container< Object, Args..., chainbase::node_allocator< Object > > shared_multi_index_container
constexpr uint64_t billable_size_v
chainbase::shared_multi_index_container< permission_object, indexed_by< ordered_unique< tag< by_id >, member< permission_object, permission_object::id_type, &permission_object::id > >, ordered_unique< tag< by_parent >, composite_key< permission_object, member< permission_object, permission_object::id_type, &permission_object::parent >, member< permission_object, permission_object::id_type, &permission_object::id > > >, ordered_unique< tag< by_owner >, composite_key< permission_object, member< permission_object, account_name, &permission_object::owner >, member< permission_object, permission_name, &permission_object::name > > >, ordered_unique< tag< by_name >, composite_key< permission_object, member< permission_object, permission_name, &permission_object::name >, member< permission_object, permission_object::id_type, &permission_object::id > > > > > permission_index
chainbase::shared_multi_index_container< permission_usage_object, indexed_by< ordered_unique< tag< by_id >, member< permission_usage_object, permission_usage_object::id_type, &permission_usage_object::id > > > > permission_usage_index
#define FC_REFLECT(TYPE, MEMBERS)
Specializes fc::reflector for TYPE.
unsigned __int64 uint64_t
Immutable except for fc::from_variant.
authority auth
authority required to execute this permission
permission_name parent
parent permission
time_point last_updated
the last time this authority was updated
account_name owner
the account this permission belongs to
permission_name name
human-readable name for the permission
time_point last_used
when this permission was last used