27 #include <graphene/chain/hardfork.hpp> 30 namespace graphene {
namespace chain {
44 transfer_from_account_not_whitelisted,
45 "'from' account ${from} is not whitelisted for asset ${asset}",
51 transfer_to_account_not_whitelisted,
52 "'to' account ${to} is not whitelisted for asset ${asset}",
61 transfer_restricted_transfer_asset,
62 "Asset ${asset} has transfer_restricted flag enabled",
69 "Insufficient Balance: ${balance}, unable to transfer '${total_transfer}' from account '${a}' to '${t}'",
93 override_transfer_not_permitted,
94 "override_transfer not permitted for asset ${asset}",
103 "The to_account is not allowed to transact the asset" );
110 "The from_account is not allowed to transact the asset" );
void_result do_apply(const transfer_operation &o)
void adjust_balance(account_id_type account, asset delta)
Adjust a particular account's balance in a given asset by a delta.
account_id_type from
Account to transfer asset from.
bool is_authorized_asset(const database &d, const account_object &acct, const asset_object &asset_obj)
time_point_sec head_block_time() const
This class represents an account on the object graphAccounts are the primary unit of authority on the...
tracks the blockchain state in an extensible manner
void_result do_evaluate(const transfer_operation &o)
asset get_balance(account_id_type owner, asset_id_type asset_id) const
Retrieve a particular account's balance in a given asset.
#define FC_RETHROW_EXCEPTIONS(LOG_LEVEL, FORMAT,...)
Catchs all exception's, std::exceptions, and ... and rethrows them after appending the provided log m...
account_id_type issuer
ID of the account which issued this asset.
Allows the issuer of an asset to transfer an asset from any account to any account if they have overr...
asset amount
The amount of asset to transfer from from to to.
string to_pretty_string(const asset &a) const
bool can_override() const
Transfers an amount of one asset from one account to another.
bool is_transfer_restricted() const
#define FC_CAPTURE_AND_RETHROW(...)
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
string name
The account's name. This name must be unique among all account names on the graph. May not be empty.
tracks the parameters of an assetAll assets have a globally unique symbol name that controls how they...
account_id_type to
Account to transfer asset to.
asset amount
The amount of asset to transfer from from to to.
void_result do_apply(const override_transfer_operation &o)
account_id_type from
Account to transfer asset from.
#define GRAPHENE_ASSERT(expr, exc_type, FORMAT,...)
account_id_type to
Account to transfer asset to.
void_result do_evaluate(const override_transfer_operation &o)