提交 f5b6df7d 编写于 作者: A Anton Perkov

producers_election.hpp renamed to voting.hpp fixes

上级 b657ba73
......@@ -4,7 +4,7 @@
*/
#pragma once
#include "producers_election.hpp"
#include "voting.hpp"
#include "delegate_bandwith.hpp"
#include <eosiolib/generic_currency.hpp>
......@@ -12,11 +12,11 @@
namespace eosiosystem {
template<account_name SystemAccount>
class contract : public producers_election<SystemAccount>, public delegate_bandwith<SystemAccount> {
class contract : public voting<SystemAccount>, public delegate_bandwith<SystemAccount> {
public:
using producers_election<SystemAccount>::on;
using voting<SystemAccount>::on;
using delegate_bandwith<SystemAccount>::on;
using pe = producers_election<SystemAccount>;
using pe = voting<SystemAccount>;
using db = delegate_bandwith<SystemAccount>;
static const account_name system_account = SystemAccount;
......@@ -34,13 +34,13 @@ namespace eosiosystem {
static void apply( account_name code, action_name act ) {
if( !eosio::dispatch<contract, typename delegate_bandwith<SystemAccount>::delegatebw,
typename delegate_bandwith<SystemAccount>::undelegatebw,
typename producers_election<SystemAccount>::register_proxy,
typename producers_election<SystemAccount>::unregister_proxy,
typename producers_election<SystemAccount>::register_producer,
typename producers_election<SystemAccount>::vote_producer,
typename producers_election<SystemAccount>::stake_vote,
typename producers_election<SystemAccount>::unstake_vote,
typename producers_election<SystemAccount>::unstake_vote_deferred,
typename voting<SystemAccount>::register_proxy,
typename voting<SystemAccount>::unregister_proxy,
typename voting<SystemAccount>::register_producer,
typename voting<SystemAccount>::vote_producer,
typename voting<SystemAccount>::stake_vote,
typename voting<SystemAccount>::unstake_vote,
typename voting<SystemAccount>::unstake_vote_deferred,
nonce>( code, act) ) {
if ( !eosio::dispatch<currency, typename currency::transfer, typename currency::issue>( code, act ) ) {
eosio::print("Unexpected action: ", eosio::name(act), "\n");
......
......@@ -27,7 +27,7 @@ namespace eosiosystem {
using eosio::transaction;
template<account_name SystemAccount>
class producers_election {
class voting {
public:
static const account_name system_account = SystemAccount;
typedef eosio::generic_currency< eosio::token<system_account,S(4,EOS)> > currency;
......@@ -364,7 +364,8 @@ namespace eosiosystem {
eosio_assert( bool(acv), "stake not found" );
auto weeks = (now() - acv->last_unstake_time) / unstake_pay_period;
eosio_assert( 0 == weeks, "less than one week since last unstaking balance transfer" );
eosio_assert( 0 == weeks, "less than one week passed since last transfer or unstake request" );
eosio_assert( 0 < acv->unstaking.quantity, "no unstaking money to transfer" );
auto unstake_amount = std::min(weeks * acv->unstake_per_week, acv->unstaking);
uint32_t new_trx_id = unstake_amount < acv->unstaking ? /* XXX send_deferred() */ 0 : 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册