@@ -424,8 +424,8 @@ impl<T: Config> Pallet<T> {
424424 origin_netuid : NetUid ,
425425 destination_netuid : NetUid ,
426426 limit_price : TaoCurrency ,
427- ) -> Result < AlphaCurrency , Error < T > > {
428- let tao: U64F64 = U64F64 :: saturating_from_num ( 1_000_000_000 ) ;
427+ ) -> Result < AlphaCurrency , DispatchError > {
428+ let tao = U64F64 :: saturating_from_num ( 1_000_000_000 ) ;
429429
430430 // Corner case: both subnet IDs are root or stao
431431 // There's no slippage for root or stable subnets, so slippage is always 0.
@@ -434,7 +434,7 @@ impl<T: Config> Pallet<T> {
434434 && ( destination_netuid. is_root ( ) || SubnetMechanism :: < T > :: get ( destination_netuid) == 0 )
435435 {
436436 if limit_price > tao. saturating_to_num :: < u64 > ( ) . into ( ) {
437- return Err ( Error :: ZeroMaxStakeAmount ) ;
437+ return Err ( Error :: < T > :: ZeroMaxStakeAmount . into ( ) ) ;
438438 } else {
439439 return Ok ( AlphaCurrency :: MAX ) ;
440440 }
@@ -476,7 +476,7 @@ impl<T: Config> Pallet<T> {
476476 let subnet_tao_2 = SubnetTAO :: < T > :: get ( destination_netuid)
477477 . saturating_add ( SubnetTaoProvided :: < T > :: get ( destination_netuid) ) ;
478478 if subnet_tao_1. is_zero ( ) || subnet_tao_2. is_zero ( ) {
479- return Err ( Error :: ZeroMaxStakeAmount ) ;
479+ return Err ( Error :: < T > :: ZeroMaxStakeAmount . into ( ) ) ;
480480 }
481481 let subnet_tao_1_float: U64F64 = U64F64 :: saturating_from_num ( subnet_tao_1) ;
482482 let subnet_tao_2_float: U64F64 = U64F64 :: saturating_from_num ( subnet_tao_2) ;
@@ -487,7 +487,7 @@ impl<T: Config> Pallet<T> {
487487 let alpha_in_2 = SubnetAlphaIn :: < T > :: get ( destination_netuid)
488488 . saturating_add ( SubnetAlphaInProvided :: < T > :: get ( destination_netuid) ) ;
489489 if alpha_in_1. is_zero ( ) || alpha_in_2. is_zero ( ) {
490- return Err ( Error :: ZeroMaxStakeAmount ) ;
490+ return Err ( Error :: < T > :: ZeroMaxStakeAmount . into ( ) ) ;
491491 }
492492 let alpha_in_1_float: U64F64 = U64F64 :: saturating_from_num ( alpha_in_1) ;
493493 let alpha_in_2_float: U64F64 = U64F64 :: saturating_from_num ( alpha_in_2) ;
@@ -503,7 +503,7 @@ impl<T: Config> Pallet<T> {
503503 T :: SwapInterface :: current_alpha_price ( destination_netuid. into ( ) ) ,
504504 ) ;
505505 if limit_price_float > current_price {
506- return Err ( Error :: ZeroMaxStakeAmount ) ;
506+ return Err ( Error :: < T > :: ZeroMaxStakeAmount . into ( ) ) ;
507507 }
508508
509509 // Corner case: limit_price is zero
@@ -529,7 +529,7 @@ impl<T: Config> Pallet<T> {
529529 if final_result != 0 {
530530 Ok ( final_result. into ( ) )
531531 } else {
532- Err ( Error :: ZeroMaxStakeAmount )
532+ Err ( Error :: < T > :: ZeroMaxStakeAmount . into ( ) )
533533 }
534534 }
535535}
0 commit comments