BitShares-Core  7.0.2
BitShares blockchain node software and command-line wallet software
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
graphene::protocol::restriction Struct Reference

#include <restriction.hpp>

Public Types

enum  function_type {
  func_eq, func_ne, func_lt, func_le,
  func_gt, func_ge, func_in, func_not_in,
  func_has_all, func_has_none, func_attr, func_logical_or,
  func_variant_assert, FUNCTION_TYPE_COUNT
}
 
using variant_assert_argument_type = pair< int64_t, vector< restriction > >
 
using argument_type = fc::static_variant< GRAPHENE_OP_RESTRICTION_ARGUMENTS_VARIADIC >
 

Public Member Functions

 restriction ()=default
 
 restriction (const unsigned_int &member_index, function_type type, const argument_type &argument)
 
size_t restriction_count () const
 

Static Public Member Functions

static size_t restriction_count (const vector< restriction > &restrictions)
 

Public Attributes

unsigned_int member_index
 
unsigned_int restriction_type
 
argument_type argument
 
extensions_type extensions
 

Detailed Description

Defines the set of valid operation restritions as a discriminated union type.

Definition at line 33 of file restriction.hpp.

Member Typedef Documentation

◆ argument_type

Definition at line 99 of file restriction.hpp.

◆ variant_assert_argument_type

Definition at line 53 of file restriction.hpp.

Member Enumeration Documentation

◆ function_type

Enumerator
func_eq 
func_ne 
func_lt 
func_le 
func_gt 
func_ge 
func_in 
func_not_in 
func_has_all 
func_has_none 
func_attr 
func_logical_or 
func_variant_assert 
FUNCTION_TYPE_COUNT 

Sentry value which contains the number of different types.

Definition at line 34 of file restriction.hpp.

Constructor & Destructor Documentation

◆ restriction() [1/2]

graphene::protocol::restriction::restriction ( )
default

◆ restriction() [2/2]

graphene::protocol::restriction::restriction ( const unsigned_int member_index,
function_type  type,
const argument_type argument 
)
inline

Definition at line 108 of file restriction.hpp.

Member Function Documentation

◆ restriction_count() [1/2]

size_t graphene::protocol::restriction::restriction_count ( ) const

Definition at line 39 of file restriction.cpp.

◆ restriction_count() [2/2]

size_t graphene::protocol::restriction::restriction_count ( const vector< restriction > &  restrictions)
static

Definition at line 35 of file restriction.cpp.

Member Data Documentation

◆ argument

argument_type graphene::protocol::restriction::argument

Definition at line 103 of file restriction.hpp.

◆ extensions

extensions_type graphene::protocol::restriction::extensions

Definition at line 105 of file restriction.hpp.

◆ member_index

unsigned_int graphene::protocol::restriction::member_index

Definition at line 101 of file restriction.hpp.

◆ restriction_type

unsigned_int graphene::protocol::restriction::restriction_type

Definition at line 102 of file restriction.hpp.


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