git.delta.rocks / unique-network / refs/commits / 2ad114bcd575

difftreelog

cargo fmt

Daniel Shiposha2022-06-30parent: #4f0ef29.patch.diff
in: master

1 file changed

modifiedpallets/nonfungible/src/property_guard.rsdiffbeforeafterboth
before · pallets/nonfungible/src/property_guard.rs
1use super::*;23pub struct PropertyGuard<'a, T: Config> {4	pub sender: &'a T::CrossAccountId,5	pub collection: &'a NonfungibleHandle<T>,6	pub token: TokenId,7	pub is_token_create: bool,8	budget: &'a dyn Budget,910	collection_admin_result: Option<DispatchResult>,11	token_owner_result: Option<DispatchResult>,12}1314impl<'a, T: Config> PropertyGuard<'a, T> {15	pub fn new(16		sender: &'a T::CrossAccountId,17		collection: &'a NonfungibleHandle<T>,18		token: TokenId,19		is_token_create: bool,20		budget: &'a dyn Budget,21	) -> Self {22		Self {23			sender,24			collection,25			token,26			is_token_create,27			budget,2829			collection_admin_result: None,30			token_owner_result: None,31		}32	}3334	pub fn check_collection_admin(&mut self) -> DispatchResult {35		*self.collection_admin_result.get_or_insert_with(|| {36			self.collection.check_is_owner_or_admin(self.sender)37		})38	}3940	pub fn check_token_owner(&mut self) -> DispatchResult {41		*self.token_owner_result.get_or_insert_with(|| {42			let is_owned = <PalletStructure<T>>::check_indirectly_owned(43				self.sender.clone(),44				self.collection.id,45				self.token,46				None,47				self.budget,48			)?;4950			if is_owned {51				Ok(())52			} else {53				Err(<CommonError<T>>::NoPermission.into())54			}55		})56	}57}
after · pallets/nonfungible/src/property_guard.rs
1use super::*;23pub struct PropertyGuard<'a, T: Config> {4	pub sender: &'a T::CrossAccountId,5	pub collection: &'a NonfungibleHandle<T>,6	pub token: TokenId,7	pub is_token_create: bool,8	budget: &'a dyn Budget,910	collection_admin_result: Option<DispatchResult>,11	token_owner_result: Option<DispatchResult>,12}1314impl<'a, T: Config> PropertyGuard<'a, T> {15	pub fn new(16		sender: &'a T::CrossAccountId,17		collection: &'a NonfungibleHandle<T>,18		token: TokenId,19		is_token_create: bool,20		budget: &'a dyn Budget,21	) -> Self {22		Self {23			sender,24			collection,25			token,26			is_token_create,27			budget,2829			collection_admin_result: None,30			token_owner_result: None,31		}32	}3334	pub fn check_collection_admin(&mut self) -> DispatchResult {35		*self36			.collection_admin_result37			.get_or_insert_with(|| self.collection.check_is_owner_or_admin(self.sender))38	}3940	pub fn check_token_owner(&mut self) -> DispatchResult {41		*self.token_owner_result.get_or_insert_with(|| {42			let is_owned = <PalletStructure<T>>::check_indirectly_owned(43				self.sender.clone(),44				self.collection.id,45				self.token,46				None,47				self.budget,48			)?;4950			if is_owned {51				Ok(())52			} else {53				Err(<CommonError<T>>::NoPermission.into())54			}55		})56	}57}