Enum eth_bridge::pallet::Call
source · pub enum Call<T: Config> {
Show 17 variants
register_bridge {
bridge_contract_address: H160,
initial_peers: Vec<T::AccountId>,
signature_version: BridgeSignatureVersion,
},
add_asset {
asset_id: <T as Config>::AssetId,
network_id: <T as Config>::NetworkId,
},
add_sidechain_token {
token_address: H160,
symbol: String,
name: String,
decimals: u8,
network_id: <T as Config>::NetworkId,
},
transfer_to_sidechain {
asset_id: <T as Config>::AssetId,
to: H160,
amount: Balance,
network_id: <T as Config>::NetworkId,
},
request_from_sidechain {
eth_tx_hash: H256,
kind: IncomingRequestKind,
network_id: <T as Config>::NetworkId,
},
finalize_incoming_request {
hash: H256,
network_id: <T as Config>::NetworkId,
},
add_peer {
account_id: T::AccountId,
address: H160,
network_id: <T as Config>::NetworkId,
},
remove_peer {
account_id: T::AccountId,
peer_address: Option<H160>,
network_id: <T as Config>::NetworkId,
},
prepare_for_migration {
network_id: <T as Config>::NetworkId,
},
migrate {
new_contract_address: H160,
erc20_native_tokens: Vec<H160>,
network_id: <T as Config>::NetworkId,
new_signature_version: BridgeSignatureVersion,
},
register_incoming_request {
incoming_request: IncomingRequest<T>,
},
import_incoming_request {
load_incoming_request: LoadIncomingRequest<T>,
incoming_request_result: Result<IncomingRequest<T>, DispatchError>,
},
approve_request {
ocw_public: Public,
hash: H256,
signature_params: SignatureParams,
network_id: <T as Config>::NetworkId,
},
abort_request {
hash: H256,
error: DispatchError,
network_id: <T as Config>::NetworkId,
},
force_add_peer {
who: T::AccountId,
address: H160,
network_id: <T as Config>::NetworkId,
},
remove_sidechain_asset {
asset_id: <T as Config>::AssetId,
network_id: <T as Config>::NetworkId,
},
register_existing_sidechain_asset {
asset_id: <T as Config>::AssetId,
token_address: H160,
network_id: <T as Config>::NetworkId,
},
// some variants omitted
}
Expand description
Contains one variant per dispatchable that can be called by an extrinsic.
Variants§
register_bridge
Fields
signature_version: BridgeSignatureVersion
Register a new bridge.
Parameters:
bridge_contract_address
- address of smart-contract deployed on a corresponding network.initial_peers
- a set of initial network peers.
add_asset
Add a Thischain asset to the bridge whitelist.
Can only be called by root.
Parameters:
asset_id
- Thischain asset identifier.network_id
- network identifier to which the asset should be added.
add_sidechain_token
Fields
Add a Sidechain token to the bridge whitelist.
Parameters:
token_address
- token contract address.symbol
- token symbol (ticker).name
- token name.decimals
- token precision.network_id
- network identifier.
transfer_to_sidechain
Transfer some amount of the given asset to Sidechain address.
Note: if the asset kind is Sidechain
, the amount should fit in the asset’s precision
on sidechain (SidechainAssetPrecision
) without extra digits. For example, assume
some ERC-20 (T
) token has decimals=6
, and the corresponding asset on substrate has
7
. Alice’s balance on thischain is 0.1000009
. If Alice would want to transfer all
the amount, she will get an error NonZeroDust
, because of the 9
at the end, so, the
correct amount would be 0.100000
(only 6 digits after the decimal point).
Parameters:
asset_id
- thischain asset id.to
- sidechain account id.amount
- amount of the asset.network_id
- network identifier.
request_from_sidechain
Load incoming request from Sidechain by the given transaction hash.
Parameters:
eth_tx_hash
- transaction hash on Sidechain.kind
- incoming request type.network_id
- network identifier.
finalize_incoming_request
Finalize incoming request (see Pallet::finalize_incoming_request_inner
).
Can be only called from a bridge account.
Parameters:
request
- an incoming request.network_id
- network identifier.
add_peer
Add a new peer to the bridge peers set.
Parameters:
account_id
- account id on thischain.address
- account id on sidechain.network_id
- network identifier.
remove_peer
Remove peer from the the bridge peers set.
Parameters:
account_id
- account id on thischain.network_id
- network identifier.
prepare_for_migration
Prepare the given bridge for migration.
Can only be called by an authority.
Parameters:
network_id
- bridge network identifier.
migrate
Fields
new_signature_version: BridgeSignatureVersion
Migrate the given bridge to a new smart-contract.
Can only be called by an authority.
Parameters:
new_contract_address
- new sidechain ocntract address.erc20_native_tokens
- migrated assets ids.network_id
- bridge network identifier.
register_incoming_request
Fields
incoming_request: IncomingRequest<T>
Register the given incoming request and add it to the queue.
Calls validate
and prepare
on the request, adds it to the queue and maps it with the
corresponding load-incoming-request and removes the load-request from the queue.
Can only be called by a bridge account.
import_incoming_request
Fields
load_incoming_request: LoadIncomingRequest<T>
incoming_request_result: Result<IncomingRequest<T>, DispatchError>
Import the given incoming request.
Register’s the load request, then registers and finalizes the incoming request if it succeeded, otherwise aborts the load request.
Can only be called by a bridge account.
approve_request
Approve the given outgoing request. The function is used by bridge peers.
Verifies the peer signature of the given request and adds it to RequestApprovals
.
Once quorum is collected, the request gets finalized and removed from request queue.
abort_request
Cancels a registered request.
Loads request by the given hash
, cancels it, changes its status to Failed
and
removes it from the request queues.
Can only be called from a bridge account.
force_add_peer
Add the given peer to the peers set without additional checks.
Can only be called by a root account.
remove_sidechain_asset
Remove asset
Can only be called by root.
register_existing_sidechain_asset
Register existing asset
Can only be called by root.
Implementations§
source§impl<T: Config> Call<T>
impl<T: Config> Call<T>
sourcepub fn new_call_variant_register_bridge(
bridge_contract_address: H160,
initial_peers: Vec<T::AccountId>,
signature_version: BridgeSignatureVersion
) -> Self
pub fn new_call_variant_register_bridge( bridge_contract_address: H160, initial_peers: Vec<T::AccountId>, signature_version: BridgeSignatureVersion ) -> Self
Create a call with the variant register_bridge
.
sourcepub fn new_call_variant_add_asset(
asset_id: <T as Config>::AssetId,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_add_asset( asset_id: <T as Config>::AssetId, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant add_asset
.
sourcepub fn new_call_variant_add_sidechain_token(
token_address: H160,
symbol: String,
name: String,
decimals: u8,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_add_sidechain_token( token_address: H160, symbol: String, name: String, decimals: u8, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant add_sidechain_token
.
sourcepub fn new_call_variant_transfer_to_sidechain(
asset_id: <T as Config>::AssetId,
to: H160,
amount: Balance,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_transfer_to_sidechain( asset_id: <T as Config>::AssetId, to: H160, amount: Balance, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant transfer_to_sidechain
.
sourcepub fn new_call_variant_request_from_sidechain(
eth_tx_hash: H256,
kind: IncomingRequestKind,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_request_from_sidechain( eth_tx_hash: H256, kind: IncomingRequestKind, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant request_from_sidechain
.
sourcepub fn new_call_variant_finalize_incoming_request(
hash: H256,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_finalize_incoming_request( hash: H256, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant finalize_incoming_request
.
sourcepub fn new_call_variant_add_peer(
account_id: T::AccountId,
address: H160,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_add_peer( account_id: T::AccountId, address: H160, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant add_peer
.
sourcepub fn new_call_variant_remove_peer(
account_id: T::AccountId,
peer_address: Option<H160>,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_remove_peer( account_id: T::AccountId, peer_address: Option<H160>, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant remove_peer
.
sourcepub fn new_call_variant_prepare_for_migration(
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_prepare_for_migration( network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant prepare_for_migration
.
sourcepub fn new_call_variant_migrate(
new_contract_address: H160,
erc20_native_tokens: Vec<H160>,
network_id: <T as Config>::NetworkId,
new_signature_version: BridgeSignatureVersion
) -> Self
pub fn new_call_variant_migrate( new_contract_address: H160, erc20_native_tokens: Vec<H160>, network_id: <T as Config>::NetworkId, new_signature_version: BridgeSignatureVersion ) -> Self
Create a call with the variant migrate
.
sourcepub fn new_call_variant_register_incoming_request(
incoming_request: IncomingRequest<T>
) -> Self
pub fn new_call_variant_register_incoming_request( incoming_request: IncomingRequest<T> ) -> Self
Create a call with the variant register_incoming_request
.
sourcepub fn new_call_variant_import_incoming_request(
load_incoming_request: LoadIncomingRequest<T>,
incoming_request_result: Result<IncomingRequest<T>, DispatchError>
) -> Self
pub fn new_call_variant_import_incoming_request( load_incoming_request: LoadIncomingRequest<T>, incoming_request_result: Result<IncomingRequest<T>, DispatchError> ) -> Self
Create a call with the variant import_incoming_request
.
sourcepub fn new_call_variant_approve_request(
ocw_public: Public,
hash: H256,
signature_params: SignatureParams,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_approve_request( ocw_public: Public, hash: H256, signature_params: SignatureParams, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant approve_request
.
sourcepub fn new_call_variant_abort_request(
hash: H256,
error: DispatchError,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_abort_request( hash: H256, error: DispatchError, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant abort_request
.
sourcepub fn new_call_variant_force_add_peer(
who: T::AccountId,
address: H160,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_force_add_peer( who: T::AccountId, address: H160, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant force_add_peer
.
sourcepub fn new_call_variant_remove_sidechain_asset(
asset_id: <T as Config>::AssetId,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_remove_sidechain_asset( asset_id: <T as Config>::AssetId, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant remove_sidechain_asset
.
sourcepub fn new_call_variant_register_existing_sidechain_asset(
asset_id: <T as Config>::AssetId,
token_address: H160,
network_id: <T as Config>::NetworkId
) -> Self
pub fn new_call_variant_register_existing_sidechain_asset( asset_id: <T as Config>::AssetId, token_address: H160, network_id: <T as Config>::NetworkId ) -> Self
Create a call with the variant register_existing_sidechain_asset
.
Trait Implementations§
source§impl<T: Config> Decode for Call<T>
impl<T: Config> Decode for Call<T>
source§fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>
§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,
§fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where I: Input,
§fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
source§impl<T: Config> Encode for Call<T>
impl<T: Config> Encode for Call<T>
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )
§fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere F: FnOnce(&[u8]) -> R,
§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
source§impl<T: Config> GetCallName for Call<T>
impl<T: Config> GetCallName for Call<T>
source§fn get_call_name(&self) -> &'static str
fn get_call_name(&self) -> &'static str
source§fn get_call_names() -> &'static [&'static str]
fn get_call_names() -> &'static [&'static str]
source§impl<T: Config> GetDispatchInfo for Call<T>
impl<T: Config> GetDispatchInfo for Call<T>
§fn get_dispatch_info(&self) -> DispatchInfo
fn get_dispatch_info(&self) -> DispatchInfo
frame_support::dispatch
source§impl<T: Config> GetDispatchInfo for Call<T>
impl<T: Config> GetDispatchInfo for Call<T>
source§fn get_dispatch_info(&self) -> DispatchInfo
fn get_dispatch_info(&self) -> DispatchInfo
DispatchInfo
, containing relevant information of this dispatch. Read moresource§impl<T: Config> PartialEq<Call<T>> for Call<T>
impl<T: Config> PartialEq<Call<T>> for Call<T>
source§impl<T> TypeInfo for Call<T>where
PhantomData<(T,)>: TypeInfo + 'static,
Vec<T::AccountId>: TypeInfo + 'static,
<T as Config>::AssetId: TypeInfo + 'static,
<T as Config>::NetworkId: TypeInfo + 'static,
T::AccountId: TypeInfo + 'static,
IncomingRequest<T>: TypeInfo + 'static,
LoadIncomingRequest<T>: TypeInfo + 'static,
Result<IncomingRequest<T>, DispatchError>: TypeInfo + 'static,
T: Config + 'static,
impl<T> TypeInfo for Call<T>where PhantomData<(T,)>: TypeInfo + 'static, Vec<T::AccountId>: TypeInfo + 'static, <T as Config>::AssetId: TypeInfo + 'static, <T as Config>::NetworkId: TypeInfo + 'static, T::AccountId: TypeInfo + 'static, IncomingRequest<T>: TypeInfo + 'static, LoadIncomingRequest<T>: TypeInfo + 'static, Result<IncomingRequest<T>, DispatchError>: TypeInfo + 'static, T: Config + 'static,
source§impl<T: Config> UnfilteredDispatchable for Call<T>
impl<T: Config> UnfilteredDispatchable for Call<T>
§type RuntimeOrigin = <T as Config>::RuntimeOrigin
type RuntimeOrigin = <T as Config>::RuntimeOrigin
frame_system::Config::RuntimeOrigin
).source§fn dispatch_bypass_filter(
self,
origin: Self::RuntimeOrigin
) -> DispatchResultWithPostInfo
fn dispatch_bypass_filter( self, origin: Self::RuntimeOrigin ) -> DispatchResultWithPostInfo
impl<T: Config> EncodeLike<Call<T>> for Call<T>
impl<T: Config> Eq for Call<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for Call<T>where T: RefUnwindSafe, <T as Config>::AccountId: RefUnwindSafe, <T as Config>::AssetId: RefUnwindSafe, <T as Config>::BlockNumber: RefUnwindSafe, <T as Config>::Index: RefUnwindSafe, <T as Config>::NetworkId: RefUnwindSafe,
impl<T> Send for Call<T>where T: Send,
impl<T> Sync for Call<T>where T: Sync,
impl<T> Unpin for Call<T>where T: Unpin, <T as Config>::AccountId: Unpin, <T as Config>::AssetId: Unpin, <T as Config>::BlockNumber: Unpin, <T as Config>::Index: Unpin, <T as Config>::NetworkId: Unpin,
impl<T> UnwindSafe for Call<T>where T: UnwindSafe, <T as Config>::AccountId: UnwindSafe, <T as Config>::AssetId: UnwindSafe, <T as Config>::BlockNumber: UnwindSafe, <T as Config>::Index: UnwindSafe, <T as Config>::NetworkId: UnwindSafe,
Blanket Implementations§
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where Self: TryInto<T>,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere T: Decode,
§fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read more§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere T: Decode,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where &'a Self: for<'a> IntoIterator,
§impl<T> Hashable for Twhere
T: Codec,
impl<T> Hashable for Twhere T: Codec,
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere T: Codec,
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere Self: Borrow<B>, B: 'a + ?Sized, R: 'a,
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R ) -> Rwhere Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere Self: AsRef<U>, U: 'a + ?Sized, R: 'a,
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere Self: AsMut<U>, U: 'a + ?Sized, R: 'a,
self
, then passes self.as_mut()
into the pipe
function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<A> PureOrWrapped<A> for A
impl<A> PureOrWrapped<A> for A
§fn is_wrapped_regular(&self) -> bool
fn is_wrapped_regular(&self) -> bool
Regular
.§fn is_wrapped(&self) -> bool
fn is_wrapped(&self) -> bool
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
T
. Read more§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.