From acf1b77bcd5e3f9f33cec24f90757f633d572b8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Mon, 10 Dec 2018 13:36:37 +0100 Subject: [PATCH] Make `decl_module` not require a return type for functions (#1230) If no return type is specified, `Result` is added and `Ok(())` is returned by default. Closes: #1182 --- .../substrate_test_runtime.compact.wasm | Bin 45958 -> 45865 bytes .../release/node_runtime.compact.wasm | Bin 640603 -> 639458 bytes substrate/srml/assets/src/lib.rs | 13 +-- substrate/srml/balances/src/lib.rs | 11 +- substrate/srml/consensus/src/lib.rs | 20 ++-- substrate/srml/council/src/motions.rs | 9 +- substrate/srml/council/src/seats.rs | 24 ++--- substrate/srml/council/src/voting.rs | 16 +-- substrate/srml/democracy/src/lib.rs | 12 +-- substrate/srml/example/src/lib.rs | 7 +- substrate/srml/grandpa/src/lib.rs | 3 +- substrate/srml/session/src/lib.rs | 6 +- substrate/srml/staking/src/lib.rs | 26 ++--- substrate/srml/support/src/dispatch.rs | 99 ++++++++++++++---- substrate/srml/timestamp/src/lib.rs | 4 +- substrate/srml/treasury/src/lib.rs | 21 +--- substrate/srml/upgrade-key/src/lib.rs | 10 +- 17 files changed, 134 insertions(+), 147 deletions(-) diff --git a/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 5ca74bfa6b289d03e5cef85a3ba9efe3fe42ef5a..a88f31d9c041c3520dcaa0d7ae84d92d42209888 100644 GIT binary patch delta 3813 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 delta 111675 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

0w?AMfY=TI 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 Result { + fn issue(origin, total: T::Balance) { let origin = ensure_signed(origin)?; let id = Self::next_asset_id(); @@ -75,11 +75,10 @@ decl_module! { >::insert((id, origin.clone()), total); Self::deposit_event(RawEvent::Issued(id, origin, total)); - Ok(()) } /// Move some assets from one holder to another. - fn transfer(origin, id: AssetId, target: T::AccountId, amount: T::Balance) -> Result { + fn transfer(origin, id: AssetId, target: T::AccountId, amount: T::Balance) { let origin = ensure_signed(origin)?; let origin_account = (id, origin.clone()); let origin_balance = >::get(&origin_account); @@ -88,20 +87,16 @@ decl_module! { Self::deposit_event(RawEvent::Transfered(id, origin, target.clone(), amount)); >::insert(origin_account, origin_balance - amount); >::mutate((id, target), |balance| *balance += amount); - - Ok(()) } /// Destroy any assets of `id` owned by `origin`. - fn destroy(origin, id: AssetId) -> Result { + fn destroy(origin, id: AssetId) { let origin = ensure_signed(origin)?; let balance = >::take((id, origin.clone())); ensure!(!balance.is_zero(), "origin balance should be non-zero"); Self::deposit_event(RawEvent::Destroyed(id, origin, balance)); - - Ok(()) } } } diff --git a/substrate/srml/balances/src/lib.rs b/substrate/srml/balances/src/lib.rs index f945a5ee2e..778b34b4f7 100644 --- a/substrate/srml/balances/src/lib.rs +++ b/substrate/srml/balances/src/lib.rs @@ -14,8 +14,8 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! Balances: Handles setting and retrieval of free balance, -//! retrieving total balance, reserve and unreserve balance, +//! Balances: Handles setting and retrieval of free balance, +//! retrieving total balance, reserve and unreserve balance, //! repatriating a reserved balance to a beneficiary account that exists, //! transfering a balance between accounts (when not reserved), //! slashing an account balance, account removal, rewards, @@ -134,7 +134,7 @@ decl_module! { origin, dest: RawAddress, value: ::Type - ) -> Result { + ) { let transactor = ensure_signed(origin)?; let dest = Self::lookup(dest)?; @@ -170,8 +170,6 @@ decl_module! { Self::set_free_balance_creating(&dest, new_to_balance); Self::deposit_event(RawEvent::Transfer(transactor, dest, value, fee)); } - - Ok(()) } /// Set the balances of a given account. @@ -179,11 +177,10 @@ decl_module! { who: RawAddress, free: ::Type, reserved: ::Type - ) -> Result { + ) { let who = Self::lookup(who)?; Self::set_free_balance(&who, free.into()); Self::set_reserved_balance(&who, reserved.into()); - Ok(()) } } } diff --git a/substrate/srml/consensus/src/lib.rs b/substrate/srml/consensus/src/lib.rs index 6a30327d81..0502e505ea 100644 --- a/substrate/srml/consensus/src/lib.rs +++ b/substrate/srml/consensus/src/lib.rs @@ -41,7 +41,6 @@ use rstd::prelude::*; use rstd::result; use parity_codec::Encode; use runtime_support::{storage, Parameter}; -use runtime_support::dispatch::Result; use runtime_support::storage::StorageValue; use runtime_support::storage::unhashed::StorageVec; use primitives::CheckInherentError; @@ -142,16 +141,15 @@ decl_storage! { decl_module! { pub struct Module for enum Call where origin: T::Origin { /// Report some misbehaviour. - fn report_misbehavior(origin, _report: Vec) -> Result { + fn report_misbehavior(origin, _report: Vec) { ensure_signed(origin)?; // TODO. - Ok(()) } /// Note the previous block's validator missed their opportunity to propose a block. /// This only comes in if 2/3+1 of the validators agree that no proposal was submitted. /// It's only relevant for the previous block. - fn note_offline(origin, offline_val_indices: Vec) -> Result { + fn note_offline(origin, offline_val_indices: Vec) { ensure_inherent(origin)?; assert!( >::extrinsic_index() == Some(T::NOTE_OFFLINE_POSITION), @@ -162,34 +160,28 @@ decl_module! { for validator_index in offline_val_indices.into_iter() { T::OnOfflineValidator::on_offline_validator(validator_index as usize); } - - Ok(()) } /// Make some on-chain remark. - fn remark(origin, _remark: Vec) -> Result { + fn remark(origin, _remark: Vec) { ensure_signed(origin)?; - Ok(()) } /// Set the number of pages in the WebAssembly environment's heap. - fn set_heap_pages(pages: u64) -> Result { + fn set_heap_pages(pages: u64) { storage::unhashed::put_raw(well_known_keys::HEAP_PAGES, &pages.encode()); - Ok(()) } /// Set the new code. - pub fn set_code(new: Vec) -> Result { + pub fn set_code(new: Vec) { storage::unhashed::put_raw(well_known_keys::CODE, &new); - Ok(()) } /// Set some items of storage. - fn set_storage(items: Vec) -> Result { + fn set_storage(items: Vec) { for i in &items { storage::unhashed::put_raw(&i.0, &i.1); } - Ok(()) } fn on_finalise() { diff --git a/substrate/srml/council/src/motions.rs b/substrate/srml/council/src/motions.rs index d6b875c58f..5316d5c681 100644 --- a/substrate/srml/council/src/motions.rs +++ b/substrate/srml/council/src/motions.rs @@ -21,7 +21,7 @@ use rstd::result; use codec::Compact; use substrate_primitives::u32_trait::Value as U32; use primitives::traits::{Hash, EnsureOrigin}; -use srml_support::dispatch::{Result, Dispatchable, Parameter}; +use srml_support::dispatch::{Dispatchable, Parameter}; use srml_support::{StorageValue, StorageMap}; use super::{Trait as CouncilTrait, Module as Council}; use system::{self, ensure_signed}; @@ -68,7 +68,7 @@ decl_event!( decl_module! { pub struct Module for enum Call where origin: ::Origin { fn deposit_event() = default; - fn propose(origin, threshold: Compact, proposal: Box<::Proposal>) -> Result { + fn propose(origin, threshold: Compact, proposal: Box<::Proposal>) { let who = ensure_signed(origin)?; let threshold = threshold.into(); @@ -90,10 +90,9 @@ decl_module! { Self::deposit_event(RawEvent::Proposed(who, index, proposal_hash, threshold)); } - Ok(()) } - fn vote(origin, proposal: T::Hash, index: Compact, approve: bool) -> Result { + fn vote(origin, proposal: T::Hash, index: Compact, approve: bool) { let who = ensure_signed(origin)?; let index = index.into(); @@ -154,8 +153,6 @@ decl_module! { // update voting >::insert(&proposal, voting); } - - Ok(()) } } } diff --git a/substrate/srml/council/src/seats.rs b/substrate/srml/council/src/seats.rs index d582ac6904..7fef771d38 100644 --- a/substrate/srml/council/src/seats.rs +++ b/substrate/srml/council/src/seats.rs @@ -91,7 +91,7 @@ decl_module! { /// Set candidate approvals. Approval slots stay valid as long as candidates in those slots /// are registered. - fn set_approvals(origin, votes: Vec, index: Compact) -> Result { + fn set_approvals(origin, votes: Vec, index: Compact) { let who = ensure_signed(origin)?; let index: VoteIndex = index.into(); @@ -110,7 +110,6 @@ decl_module! { } >::insert(&who, index); >::insert(&who, votes); - Ok(()) } /// Remove a voter. For it not to be a bond-consuming no-op, all approved candidate indices @@ -124,7 +123,7 @@ decl_module! { who: Address, who_index: Compact, assumed_vote_index: Compact - ) -> Result { + ) { let reporter = ensure_signed(origin)?; let assumed_vote_index: VoteIndex = assumed_vote_index.into(); @@ -166,11 +165,10 @@ decl_module! { >::slash_reserved(&reporter, Self::voting_bond()); Self::deposit_event(RawEvent::BadReaperSlashed(reporter)); } - Ok(()) } /// Remove a voter. All votes are cancelled and the voter deposit is returned. - fn retract_voter(origin, index: Compact) -> Result { + fn retract_voter(origin, index: Compact) { let who = ensure_signed(origin)?; ensure!(!Self::presentation_active(), "cannot retract when presenting"); @@ -183,13 +181,12 @@ decl_module! { Self::remove_voter(&who, index, voters); >::unreserve(&who, Self::voting_bond()); - Ok(()) } /// Submit oneself for candidacy. /// /// Account must have enough transferrable funds in it to pay the bond. - fn submit_candidacy(origin, slot: Compact) -> Result { + fn submit_candidacy(origin, slot: Compact) { let who = ensure_signed(origin)?; ensure!(!Self::is_a_candidate(&who), "duplicate candidate submission"); @@ -215,7 +212,6 @@ decl_module! { } >::put(candidates); >::put(count as u32 + 1); - Ok(()) } /// Claim that `signed` is one of the top Self::carry_count() + current_vote().1 candidates. @@ -276,37 +272,33 @@ decl_module! { /// Set the desired member count; if lower than the current count, then seats will not be up /// election when they expire. If more, then a new vote will be started if one is not already /// in progress. - fn set_desired_seats(count: Compact) -> Result { + fn set_desired_seats(count: Compact) { let count: u32 = count.into(); >::put(count); - Ok(()) } /// Remove a particular member. A tally will happen instantly (if not already in a presentation /// period) to fill the seat if removal means that the desired members are not met. /// This is effective immediately. - fn remove_member(who: Address) -> Result { + fn remove_member(who: Address) { let who = >::lookup(who)?; let new_council: Vec<(T::AccountId, T::BlockNumber)> = Self::active_council() .into_iter() .filter(|i| i.0 != who) .collect(); >::put(new_council); - Ok(()) } /// Set the presentation duration. If there is currently a vote being presented for, will /// invoke `finalise_vote`. - fn set_presentation_duration(count: ::Type) -> Result { + fn set_presentation_duration(count: ::Type) { >::put(count.into()); - Ok(()) } /// Set the presentation duration. If there is current a vote being presented for, will /// invoke `finalise_vote`. - fn set_term_duration(count: ::Type) -> Result { + fn set_term_duration(count: ::Type) { >::put(count.into()); - Ok(()) } fn on_finalise(n: T::BlockNumber) { diff --git a/substrate/srml/council/src/voting.rs b/substrate/srml/council/src/voting.rs index b598e8ca05..d61e5f2a33 100644 --- a/substrate/srml/council/src/voting.rs +++ b/substrate/srml/council/src/voting.rs @@ -35,7 +35,7 @@ decl_module! { pub struct Module for enum Call where origin: T::Origin { fn deposit_event() = default; - fn propose(origin, proposal: Box) -> Result { + fn propose(origin, proposal: Box) { let who = ensure_signed(origin)?; let expiry = >::block_number() + Self::voting_period(); @@ -54,11 +54,9 @@ decl_module! { >::insert(proposal_hash, *proposal); >::insert(proposal_hash, vec![who.clone()]); >::insert((proposal_hash, who.clone()), true); - - Ok(()) } - fn vote(origin, proposal: T::Hash, approve: bool) -> Result { + fn vote(origin, proposal: T::Hash, approve: bool) { let who = ensure_signed(origin)?; ensure!(Self::is_councillor(&who), "only councillors may vote on council proposals"); @@ -67,10 +65,9 @@ decl_module! { >::mutate(proposal, |voters| voters.push(who.clone())); } >::insert((proposal, who), approve); - Ok(()) } - fn veto(origin, proposal_hash: T::Hash) -> Result { + fn veto(origin, proposal_hash: T::Hash) { let who = ensure_signed(origin)?; ensure!(Self::is_councillor(&who), "only councillors may veto council proposals"); @@ -96,17 +93,14 @@ decl_module! { for (c, _) in >::active_council() { >::remove((proposal_hash, c)); } - Ok(()) } - fn set_cooloff_period(blocks: ::Type) -> Result { + fn set_cooloff_period(blocks: ::Type) { >::put(blocks.into()); - Ok(()) } - fn set_voting_period(blocks: ::Type) -> Result { + fn set_voting_period(blocks: ::Type) { >::put(blocks.into()); - Ok(()) } fn on_finalise(n: T::BlockNumber) { diff --git a/substrate/srml/democracy/src/lib.rs b/substrate/srml/democracy/src/lib.rs index c0c25bd1ca..23b942c597 100644 --- a/substrate/srml/democracy/src/lib.rs +++ b/substrate/srml/democracy/src/lib.rs @@ -65,7 +65,7 @@ decl_module! { origin, proposal: Box, value: ::Type - ) -> Result { + ) { let who = ensure_signed(origin)?; let value = value.into(); @@ -80,11 +80,10 @@ decl_module! { let mut props = Self::public_props(); props.push((index, (*proposal).clone(), who)); >::put(props); - Ok(()) } /// Propose a sensitive action to be taken. - fn second(origin, proposal: Compact) -> Result { + fn second(origin, proposal: Compact) { let who = ensure_signed(origin)?; let proposal: PropIndex = proposal.into(); let mut deposit = Self::deposit_of(proposal) @@ -93,12 +92,11 @@ decl_module! { .map_err(|_| "seconder's balance too low")?; deposit.1.push(who); >::insert(proposal, deposit); - Ok(()) } /// Vote in a referendum. If `approve_proposal` is true, the vote is to enact the proposal; /// false would be a vote to keep the status quo. - fn vote(origin, ref_index: Compact, approve_proposal: bool) -> Result { + fn vote(origin, ref_index: Compact, approve_proposal: bool) { let who = ensure_signed(origin)?; let ref_index = ref_index.into(); ensure!(Self::is_active_referendum(ref_index), "vote given for invalid referendum."); @@ -108,7 +106,6 @@ decl_module! { >::mutate(ref_index, |voters| voters.push(who.clone())); } >::insert(&(ref_index, who), approve_proposal); - Ok(()) } /// Start a referendum. @@ -121,9 +118,8 @@ decl_module! { } /// Remove a referendum. - fn cancel_referendum(ref_index: Compact) -> Result { + fn cancel_referendum(ref_index: Compact) { Self::clear_referendum(ref_index.into()); - Ok(()) } fn on_finalise(n: T::BlockNumber) { diff --git a/substrate/srml/example/src/lib.rs b/substrate/srml/example/src/lib.rs index 8dcbb7094b..31baac20f7 100644 --- a/substrate/srml/example/src/lib.rs +++ b/substrate/srml/example/src/lib.rs @@ -173,12 +173,11 @@ decl_module! { // calls to be executed - we don't need to care why. Because it's privileged, we can // assume it's a one-off operation and substantial processing/storage/memory can be used // without worrying about gameability or attack scenarios. - fn set_dummy(new_value: T::Balance) -> Result { + // If you not specify `Result` explicitly as return value, it will be added automatically + // for you and `Ok(())` will be returned. + fn set_dummy(new_value: T::Balance) { // Put the new value into storage. >::put(new_value); - - // All good. - Ok(()) } // The signature could also look like: `fn on_finalise()` diff --git a/substrate/srml/grandpa/src/lib.rs b/substrate/srml/grandpa/src/lib.rs index 8173b9a725..2a9df1b852 100644 --- a/substrate/srml/grandpa/src/lib.rs +++ b/substrate/srml/grandpa/src/lib.rs @@ -189,10 +189,9 @@ decl_module! { fn deposit_event() = default; /// Report some misbehaviour. - fn report_misbehavior(origin, _report: Vec) -> Result { + fn report_misbehavior(origin, _report: Vec) { ensure_signed(origin)?; // TODO: https://github.com/paritytech/substrate/issues/1112 - Ok(()) } fn on_finalise(block_number: T::BlockNumber) { diff --git a/substrate/srml/session/src/lib.rs b/substrate/srml/session/src/lib.rs index 34137c6de4..56398823c1 100644 --- a/substrate/srml/session/src/lib.rs +++ b/substrate/srml/session/src/lib.rs @@ -93,17 +93,15 @@ decl_module! { /// Sets the session key of `_validator` to `_key`. This doesn't take effect until the next /// session. - fn set_key(origin, key: T::SessionKey) -> Result { + fn set_key(origin, key: T::SessionKey) { let who = ensure_signed(origin)?; // set new value for next session >::insert(who, key); - Ok(()) } /// Set a new session length. Won't kick in until the next session change (at current length). - fn set_length(new: ::Type) -> Result { + fn set_length(new: ::Type) { >::put(new.into()); - Ok(()) } /// Forces a new session. diff --git a/substrate/srml/staking/src/lib.rs b/substrate/srml/staking/src/lib.rs index 55c453e7cb..2d78ae5af7 100644 --- a/substrate/srml/staking/src/lib.rs +++ b/substrate/srml/staking/src/lib.rs @@ -105,7 +105,7 @@ decl_module! { /// Declare the desire to stake for the transactor. /// /// Effects will be felt at the beginning of the next era. - fn stake(origin) -> Result { + fn stake(origin) { let who = ensure_signed(origin)?; ensure!(Self::nominating(&who).is_none(), "Cannot stake if already nominating."); let mut intentions = >::get(); @@ -115,7 +115,6 @@ decl_module! { >::insert(&who, T::BlockNumber::max_value()); intentions.push(who); >::put(intentions); - Ok(()) } /// Retract the desire to stake for the transactor. @@ -131,7 +130,7 @@ decl_module! { Self::apply_unstake(&who, intentions_index as usize) } - fn nominate(origin, target: Address) -> Result { + fn nominate(origin, target: Address) { let who = ensure_signed(origin)?; let target = >::lookup(target)?; @@ -148,13 +147,11 @@ decl_module! { // Update bondage >::insert(&who, T::BlockNumber::max_value()); - - Ok(()) } /// Will panic if called when source isn't currently nominating target. /// Updates Nominating, NominatorsFor and NominationBalance. - fn unnominate(origin, target_index: Compact) -> Result { + fn unnominate(origin, target_index: Compact) { let source = ensure_signed(origin)?; let target_index: u32 = target_index.into(); let target_index = target_index as usize; @@ -180,7 +177,6 @@ decl_module! { source, >::block_number() + Self::bonding_duration() ); - Ok(()) } /// Set the given account's preference for slashing behaviour should they be a validator. @@ -190,7 +186,7 @@ decl_module! { origin, intentions_index: Compact, prefs: ValidatorPrefs - ) -> Result { + ) { let who = ensure_signed(origin)?; let intentions_index: u32 = intentions_index.into(); @@ -199,27 +195,22 @@ decl_module! { } >::insert(who, prefs); - - Ok(()) } /// Set the number of sessions in an era. - fn set_sessions_per_era(new: ::Type) -> Result { + fn set_sessions_per_era(new: ::Type) { >::put(new.into()); - Ok(()) } /// The length of the bonding duration in eras. - fn set_bonding_duration(new: ::Type) -> Result { + fn set_bonding_duration(new: ::Type) { >::put(new.into()); - Ok(()) } /// The ideal number of validators. - fn set_validator_count(new: Compact) -> Result { + fn set_validator_count(new: Compact) { let new: u32 = new.into(); >::put(new); - Ok(()) } /// Force there to be a new era. This also forces a new session immediately after. @@ -229,10 +220,9 @@ decl_module! { } /// Set the offline slash grace period. - fn set_offline_slash_grace(new: Compact) -> Result { + fn set_offline_slash_grace(new: Compact) { let new: u32 = new.into(); >::put(new); - Ok(()) } } } diff --git a/substrate/srml/support/src/dispatch.rs b/substrate/srml/support/src/dispatch.rs index 436ed87b9a..4d0815c41f 100644 --- a/substrate/srml/support/src/dispatch.rs +++ b/substrate/srml/support/src/dispatch.rs @@ -167,7 +167,9 @@ macro_rules! decl_module { { $( $on_finalise:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - $fn_vis:vis fn $fn_name:ident($origin:ident $(, $param_name:ident : $param:ty)* ) -> $result:ty { $( $impl:tt )* } + $fn_vis:vis fn $fn_name:ident( + $origin:ident $(, $param_name:ident : $param:ty)* + ) $( -> $result:ty )* { $( $impl:tt )* } $($rest:tt)* ) => { decl_module!(@normalize @@ -179,7 +181,9 @@ macro_rules! decl_module { [ $($t)* $(#[doc = $doc_attr])* - $fn_vis fn $fn_name($origin $( , $param_name : $param )* ) -> $result { $( $impl )* } + $fn_vis fn $fn_name( + $origin $( , $param_name : $param )* + ) $( -> $result )* { $( $impl )* } ] $($rest)* ); @@ -192,12 +196,16 @@ macro_rules! decl_module { { $( $on_finalise:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - $fn_vis:vis fn $fn_name:ident($origin:ident : T::Origin $(, $param_name:ident : $param:ty)* ) -> $result:ty { $( $impl:tt )* } + $fn_vis:vis fn $fn_name:ident( + $origin:ident : T::Origin $(, $param_name:ident : $param:ty)* + ) $( -> $result:ty )* { $( $impl:tt )* } $($rest:tt)* ) => { - compile_error!("\ -first parameter of dispatch should be marked `origin` only, with no type specified (a bit like `self`)\n\ -(For root-matching dispatches, ensure the first parameter does not use the `T::Origin` type.)") + compile_error!( + "First parameter of dispatch should be marked `origin` only, with no type specified \ + (a bit like `self`). (For root-matching dispatches, ensure the first parameter does \ + not use the `T::Origin` type.)" + ) }; (@normalize $(#[$attr:meta])* @@ -207,12 +215,16 @@ first parameter of dispatch should be marked `origin` only, with no type specifi { $( $on_finalise:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - $fn_vis:vis fn $fn_name:ident(origin : $origin:ty $(, $param_name:ident : $param:ty)* ) -> $result:ty { $( $impl:tt )* } + $fn_vis:vis fn $fn_name:ident( + origin : $origin:ty $(, $param_name:ident : $param:ty)* + ) $( -> $result:ty )* { $( $impl:tt )* } $($rest:tt)* ) => { - compile_error!("\ -first parameter of dispatch should be marked `origin` only, with no type specified (a bit like `self`)\n\ -(For root-matching dispatches, ensure the first parameter is not named`origin`.)") + compile_error!( + "First parameter of dispatch should be marked `origin` only, with no type specified \ + (a bit like `self`). (For root-matching dispatches, ensure the first parameter does \ + not use the `T::Origin` type.)" + ) }; (@normalize $(#[$attr:meta])* @@ -222,7 +234,9 @@ first parameter of dispatch should be marked `origin` only, with no type specifi { $( $on_finalise:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - $fn_vis:vis fn $fn_name:ident($( $param_name:ident : $param:ty),* ) -> $result:ty { $( $impl:tt )* } + $fn_vis:vis fn $fn_name:ident( + $( $param_name:ident : $param:ty),* + ) $( -> $result:ty )* { $( $impl:tt )* } $($rest:tt)* ) => { decl_module!(@normalize @@ -234,7 +248,9 @@ first parameter of dispatch should be marked `origin` only, with no type specifi [ $($t)* $(#[doc = $doc_attr])* - $fn_vis fn $fn_name(root $( , $param_name : $param )* ) -> $result { $( $impl )* } + $fn_vis fn $fn_name( + root $( , $param_name : $param )* + ) $( -> $result )* { $( $impl )* } ] $($rest)* ); @@ -340,7 +356,23 @@ first parameter of dispatch should be marked `origin` only, with no type specifi $module:ident<$trait_instance:ident: $trait_name:ident>; $origin_ty:ty; root; - $vis:vis fn $name:ident ( root $(, $param:ident : $param_ty:ty )* ) -> $result:ty { $( $impl:tt )* } + $vis:vis fn $name:ident ( root $(, $param:ident : $param_ty:ty )* ) { $( $impl:tt )* } + ) => { + impl<$trait_instance: $trait_name> $module<$trait_instance> { + $vis fn $name($( $param: $param_ty ),* ) -> $crate::dispatch::Result { + { $( $impl )* } + Ok(()) + } + } + }; + + (@impl_function + $module:ident<$trait_instance:ident: $trait_name:ident>; + $origin_ty:ty; + root; + $vis:vis fn $name:ident ( + root $(, $param:ident : $param_ty:ty )* + ) -> $result:ty { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { $vis fn $name($( $param: $param_ty ),* ) -> $result { @@ -348,11 +380,32 @@ first parameter of dispatch should be marked `origin` only, with no type specifi } } }; + (@impl_function $module:ident<$trait_instance:ident: $trait_name:ident>; $origin_ty:ty; $ignore:ident; - $vis:vis fn $name:ident ( $origin:ident $(, $param:ident : $param_ty:ty )* ) -> $result:ty { $( $impl:tt )* } + $vis:vis fn $name:ident ( + $origin:ident $(, $param:ident : $param_ty:ty )* + ) { $( $impl:tt )* } + ) => { + impl<$trait_instance: $trait_name> $module<$trait_instance> { + $vis fn $name( + $origin: $origin_ty $(, $param: $param_ty )* + ) -> $crate::dispatch::Result { + { $( $impl )* } + Ok(()) + } + } + }; + + (@impl_function + $module:ident<$trait_instance:ident: $trait_name:ident>; + $origin_ty:ty; + $ignore:ident; + $vis:vis fn $name:ident ( + $origin:ident $(, $param:ident : $param_ty:ty )* + ) -> $result:ty { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { $vis fn $name($origin: $origin_ty $(, $param: $param_ty )* ) -> $result { @@ -369,7 +422,7 @@ first parameter of dispatch should be marked `origin` only, with no type specifi $(#[doc = $doc_attr:tt])* $fn_vis:vis fn $fn_name:ident( $from:ident $( , $param_name:ident : $param:ty)* - ) -> $result:ty { $( $impl:tt )* } + ) $( -> $result:ty )* { $( $impl:tt )* } )* } { $( $deposit_event:tt )* } @@ -409,7 +462,9 @@ first parameter of dispatch should be marked `origin` only, with no type specifi $mod_type<$trait_instance: $trait_name>; $origin_type; $from; - $fn_vis fn $fn_name ($from $(, $param_name : $param )* ) -> $result { $( $impl )* } + $fn_vis fn $fn_name ( + $from $(, $param_name : $param )* + ) $( -> $result )* { $( $impl )* } } )* @@ -542,7 +597,7 @@ first parameter of dispatch should be marked `origin` only, with no type specifi } __dispatch_impl_metadata! { $mod_type $trait_instance $trait_name $call_type $origin_type - {$( $(#[doc = $doc_attr])* fn $fn_name($from $(, $param_name : $param )*) -> $result; )*} + {$( $(#[doc = $doc_attr])* fn $fn_name($from $(, $param_name : $param )*); )*} } } } @@ -764,13 +819,13 @@ macro_rules! __call_to_metadata { $( , $param_name:ident : $param:ty )* - ) -> $result:ty; + ); )*} ) => { $crate::dispatch::CallMetadata { name: $crate::dispatch::DecodeDifferent::Encode(stringify!($call_type)), functions: __functions_to_metadata!(0; $origin_type;; $( - fn $fn_name( $( $param_name: $param ),* ) -> $result; + fn $fn_name( $( $param_name: $param ),* ); $( $doc_attr ),*; )*), } @@ -789,14 +844,14 @@ macro_rules! __functions_to_metadata{ $( $param_name:ident : $param:ty ),* - ) -> $result:ty; + ); $( $fn_doc:expr ),*; $( $rest:tt )* ) => { __functions_to_metadata!( $fn_id + 1; $origin_type; $( $function_metadata, )* __function_to_metadata!( - fn $fn_name($( $param_name : $param ),*) -> $result; $( $fn_doc ),*; $fn_id; + fn $fn_name($( $param_name : $param ),*); $( $fn_doc ),*; $fn_id; ); $($rest)* ) @@ -817,7 +872,7 @@ macro_rules! __function_to_metadata { ( fn $fn_name:ident( $($param_name:ident : $param:ty),* - ) -> $result:ty; + ); $( $fn_doc:expr ),*; $fn_id:expr; ) => { diff --git a/substrate/srml/timestamp/src/lib.rs b/substrate/srml/timestamp/src/lib.rs index 2c4675fb1d..4b63a34b01 100644 --- a/substrate/srml/timestamp/src/lib.rs +++ b/substrate/srml/timestamp/src/lib.rs @@ -49,7 +49,6 @@ extern crate parity_codec as codec; use codec::HasCompact; use runtime_support::{StorageValue, Parameter}; -use runtime_support::dispatch::Result; use runtime_primitives::CheckInherentError; use runtime_primitives::traits::{ As, SimpleArithmetic, Zero, ProvideInherent, Block as BlockT, Extrinsic @@ -75,7 +74,7 @@ decl_module! { /// if this call hasn't been invoked by that time. /// /// The timestamp should be greater than the previous one by the amount specified by `block_period`. - fn set(origin, now: ::Type) -> Result { + fn set(origin, now: ::Type) { ensure_inherent(origin)?; let now = now.into(); @@ -91,7 +90,6 @@ decl_module! { ); ::Now::put(now); ::DidUpdate::put(true); - Ok(()) } fn on_finalise() { diff --git a/substrate/srml/treasury/src/lib.rs b/substrate/srml/treasury/src/lib.rs index 340ab48a8c..abbe0e7899 100644 --- a/substrate/srml/treasury/src/lib.rs +++ b/substrate/srml/treasury/src/lib.rs @@ -40,7 +40,6 @@ extern crate srml_balances as balances; use rstd::prelude::*; use runtime_support::{StorageValue, StorageMap}; -use runtime_support::dispatch::Result; use runtime_primitives::{Permill, traits::{Zero, EnsureOrigin}}; use codec::{HasCompact, Compact}; use balances::{OnDilution, address::Address}; @@ -77,7 +76,7 @@ decl_module! { origin, value: ::Type, beneficiary: Address - ) -> Result { + ) { let proposer = ensure_signed(origin)?; let beneficiary = >::lookup(beneficiary)?; let value = value.into(); @@ -91,17 +90,12 @@ decl_module! { >::insert(c, Proposal { proposer, value, beneficiary, bond }); Self::deposit_event(RawEvent::Proposed(c)); - - Ok(()) } /// Set the balance of funds available to spend. - fn set_pot(new_pot: ::Type) -> Result { + fn set_pot(new_pot: ::Type) { // Put the new value into storage. >::put(new_pot.into()); - - // All good. - Ok(()) } /// (Re-)configure this module. @@ -110,16 +104,15 @@ decl_module! { proposal_bond_minimum: ::Type, spend_period: ::Type, burn: Permill - ) -> Result { + ) { >::put(proposal_bond); >::put(proposal_bond_minimum.into()); >::put(spend_period.into()); >::put(burn); - Ok(()) } /// Reject a proposed spend. The original deposit will be slashed. - fn reject_proposal(origin, proposal_id: Compact) -> Result { + fn reject_proposal(origin, proposal_id: Compact) { T::RejectOrigin::ensure_origin(origin)?; let proposal_id: ProposalIndex = proposal_id.into(); @@ -127,21 +120,17 @@ decl_module! { let value = proposal.bond; let _ = >::slash_reserved(&proposal.proposer, value); - - Ok(()) } /// Approve a proposal. At a later time, the proposal will be allocated to the beneficiary /// and the original deposit will be returned. - fn approve_proposal(origin, proposal_id: Compact) -> Result { + fn approve_proposal(origin, proposal_id: Compact) { T::ApproveOrigin::ensure_origin(origin)?; let proposal_id = proposal_id.into(); ensure!(>::exists(proposal_id), "No proposal at that index"); >::mutate(|v| v.push(proposal_id)); - - Ok(()) } fn on_finalise(n: T::BlockNumber) { diff --git a/substrate/srml/upgrade-key/src/lib.rs b/substrate/srml/upgrade-key/src/lib.rs index 028ac26ab1..3957b080d3 100644 --- a/substrate/srml/upgrade-key/src/lib.rs +++ b/substrate/srml/upgrade-key/src/lib.rs @@ -35,7 +35,7 @@ extern crate srml_system as system; extern crate srml_consensus as consensus; use sr_std::prelude::*; -use support::{StorageValue, dispatch::Result}; +use support::StorageValue; use system::ensure_signed; pub trait Trait: consensus::Trait + system::Trait { @@ -47,26 +47,22 @@ decl_module! { // Simple declaration of the `Module` type. Lets the macro know what its working on. pub struct Module for enum Call where origin: T::Origin { fn deposit_event() = default; - fn upgrade(origin, new: Vec) -> Result { + fn upgrade(origin, new: Vec) { // This is a public call, so we ensure that the origin is some signed account. let _sender = ensure_signed(origin)?; ensure!(_sender == Self::key(), "only the current upgrade key can use the upgrade_key module"); >::set_code(new)?; Self::deposit_event(RawEvent::Upgraded); - - Ok(()) } - fn set_key(origin, new: T::AccountId) -> Result { + fn set_key(origin, new: T::AccountId) { // This is a public call, so we ensure that the origin is some signed account. let _sender = ensure_signed(origin)?; ensure!(_sender == Self::key(), "only the current upgrade key can use the upgrade_key module"); Self::deposit_event(RawEvent::KeyChanged(Self::key())); >::put(new); - - Ok(()) } } }