BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
Go to the documentation of this file.
29 #include <graphene/chain/hardfork.hpp>
32 namespace graphene {
namespace chain {
49 "The creator account is not allowed to transact the asset" );
51 "The owner account is not allowed to transact the asset" );
107 obj.owner = op.
owner;
defines vesting in terms of coin-days accrued which allows for dynamic deposit/withdraw
#define FC_CAPTURE_AND_RETHROW(...)
share_type begin_balance
The total amount of asset to vest.
fc::uint128_t coin_seconds_earned
tracks the blockchain state in an extensible manner
Withdraw from a vesting balance.
void_result do_apply(const vesting_balance_withdraw_operation &op)
uint32_t vesting_duration_seconds
Duration of the vesting period, in seconds. Must be greater than 0 and greater than vesting_cliff_sec...
time_point_sec head_block_time() const
vesting_balance_id_type vesting_balance
Create a vesting balance.
account_id_type owner
Who is able to withdraw the balance.
tracks the parameters of an asset
const T & create(F &&constructor)
void adjust_balance(account_id_type account, asset delta)
Adjust a particular account's balance in a given asset by a delta.
vesting_policy_initializer policy
bool is_transfer_restricted() const
void operator()(const instant_vesting_policy_initializer &i) const
uint32_t vesting_cliff_seconds
fc::time_point_sec begin_timestamp
init_policy_visitor(vesting_policy &po, const share_type &begin_balance, const fc::time_point_sec &n)
account_id_type owner
Must be vesting_balance.owner.
fc::time_point_sec coin_seconds_earned_last_update
void_result do_evaluate(const vesting_balance_create_operation &op)
This class represents an account on the object graph.
void operator()(const cdd_vesting_policy_initializer &i) const
fc::time_point_sec start_claim
bool is_authorized_asset(const database &d, const account_object &acct, const asset_object &asset_obj)
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
void withdraw(const fc::time_point_sec &now, const asset &amount)
fc::time_point_sec start_claim
uint32_t vesting_cliff_seconds
No amount may be withdrawn before this many seconds of the vesting period have elapsed.
visitor::result_type visit(visitor &v)
void operator()(const linear_vesting_policy_initializer &i) const
account_id_type owner
Account which owns and may withdraw from this vesting balance.
const account_object * fee_paying_account
account_id_type creator
Who provides funds initially.
fc::time_point_sec begin_timestamp
This is the time at which funds begin vesting.
void_result do_evaluate(const vesting_balance_withdraw_operation &op)
void modify(const T &obj, const Lambda &m)
Linear vesting balance with cliff.
bool is_withdraw_allowed(const fc::time_point_sec &now, const asset &amount) const
uint32_t vesting_duration_seconds
object_id_type do_apply(const vesting_balance_create_operation &op)