BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
Go to the documentation of this file.
30 namespace graphene {
namespace protocol {
37 vector<commitment_type> in;
38 vector<commitment_type> out(
outputs.size());
40 for( uint32_t i = 0; i < out.size(); ++i )
45 if( i > 0 )
FC_ASSERT( out[i-1] < out[i],
"all outputs must be sorted by commitment id" );
48 FC_ASSERT( out.size(),
"there must be at least one output" );
78 vector<commitment_type> in(
inputs.size());
79 vector<commitment_type> out;
82 for( uint32_t i = 0; i < in.size(); ++i )
84 in[i] =
inputs[i].commitment;
86 if( i > 0 )
FC_ASSERT( in[i-1] < in[i],
"all inputs must be sorted by commitment id" );
88 FC_ASSERT( in.size(),
"there must be at least one input" );
108 vector<commitment_type> in(
inputs.size());
109 vector<commitment_type> out(
outputs.size());
111 for( uint32_t i = 0; i < in.size(); ++i )
113 in[i] =
inputs[i].commitment;
115 if( i > 0 )
FC_ASSERT( in[i-1] < in[i] );
117 for( uint32_t i = 0; i < out.size(); ++i )
119 out[i] =
outputs[i].commitment;
120 if( i > 0 )
FC_ASSERT( out[i-1] < out[i] );
123 FC_ASSERT( in.size(),
"there must be at least one input" );
145 stealth_confirmation::operator string()
const
154 *
this = fc::raw::unpack<stealth_confirmation>(
fc::from_base58( base58 ) );
constexpr int64_t GRAPHENE_MAX_SHARE_SUPPLY(1000000000000000LL)
#define FC_CAPTURE_AND_RETHROW(...)
Converts public account balance to a blinded or stealth balance.
std::string to_base58(const char *d, size_t s)
Transfers from blind to blind.
vector< blind_input > inputs
uint32_t price_per_output
commitment_type blind(const blind_factor_type &blind, uint64_t value)
share_type calculate_fee(const fee_params_t &k) const
#define GRAPHENE_TEMP_ACCOUNT
Represents the canonical account with WILDCARD authority (anybody can access funds in temp account)
std::vector< char > from_base58(const std::string &base58_str)
vector< blind_output > outputs
blind_factor_type blinding_factor
#define GRAPHENE_IMPLEMENT_EXTERNAL_SERIALIZATION(type)
account_id_type fee_payer() const
range_proof_info range_get_info(const range_proof_type &proof)
Converts blinded/stealth balance to a public account balance.
vector< blind_input > inputs
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
uint64_t fee
the cost to register the cheapest non-free account
share_type calculate_fee(const fee_params_t &) const
blind_factor_type blinding_factor
vector< blind_output > outputs
uint64_t fee
the cost to register the cheapest non-free account
bool verify_sum(const std::vector< commitment_type > &commits, const std::vector< commitment_type > &neg_commits, int64_t excess)
uint32_t price_per_output
void pack(Stream &s, const flat_set< T, A... > &value, uint32_t _max_depth)