COOPENOMICS  v1
Кооперативная Экономика
table_ledger2_userwallets.hpp
См. документацию.
1#pragma once
2
3#include <eosio/asset.hpp>
4#include <eosio/eosio.hpp>
5
6#include "../consts.hpp"
7#include "../core/utils.hpp"
8
26struct [[eosio::table, eosio::contract(LEDGER2)]] userwallet {
27 uint64_t id;
28 eosio::name wallet_name;
29 eosio::name username;
30 eosio::asset available;
31 eosio::asset blocked;
32
33 uint64_t primary_key() const { return id; }
34 uint128_t by_userwallet() const { return combine_ids(wallet_name.value, username.value); }
35 uint64_t by_user() const { return username.value; }
36 uint64_t by_wallet() const { return wallet_name.value; }
37
38 bool is_empty() const { return available.amount == 0 && blocked.amount == 0; }
39};
40
41typedef eosio::multi_index<
42 "userwallets"_n, userwallet,
43 eosio::indexed_by<"byuserwallet"_n, eosio::const_mem_fun<userwallet, uint128_t, &userwallet::by_userwallet>>,
44 eosio::indexed_by<"byuser"_n, eosio::const_mem_fun<userwallet, uint64_t, &userwallet::by_user>>,
45 eosio::indexed_by<"bywallet"_n, eosio::const_mem_fun<userwallet, uint64_t, &userwallet::by_wallet>>>
contract
Definition: eosio.msig_tests.cpp:977
Definition: eosio.msig.hpp:34
Definition: table_ledger2_userwallets.hpp:26
uint64_t by_wallet() const
Definition: table_ledger2_userwallets.hpp:36
eosio::asset blocked
Definition: table_ledger2_userwallets.hpp:31
uint128_t by_userwallet() const
Definition: table_ledger2_userwallets.hpp:34
bool is_empty() const
Definition: table_ledger2_userwallets.hpp:38
eosio::name username
Definition: table_ledger2_userwallets.hpp:29
eosio::asset available
Definition: table_ledger2_userwallets.hpp:30
uint64_t by_user() const
Definition: table_ledger2_userwallets.hpp:35
uint64_t id
Definition: table_ledger2_userwallets.hpp:27
uint64_t primary_key() const
Definition: table_ledger2_userwallets.hpp:33
eosio::name wallet_name
Definition: table_ledger2_userwallets.hpp:28
eosio::multi_index< "userwallets"_n, userwallet, eosio::indexed_by<"byuserwallet"_n, eosio::const_mem_fun< userwallet, uint128_t, &userwallet::by_userwallet > >, eosio::indexed_by<"byuser"_n, eosio::const_mem_fun< userwallet, uint64_t, &userwallet::by_user > >, eosio::indexed_by<"bywallet"_n, eosio::const_mem_fun< userwallet, uint64_t, &userwallet::by_wallet > > > userwallets_index
Definition: table_ledger2_userwallets.hpp:46
static uint128_t combine_ids(const uint64_t &x, const uint64_t &y)
Definition: utils.hpp:7