diff --git a/ethers-contract/ethers-contract-abigen/src/contract/events.rs b/ethers-contract/ethers-contract-abigen/src/contract/events.rs index 44215ec8..6b5817b6 100644 --- a/ethers-contract/ethers-contract-abigen/src/contract/events.rs +++ b/ethers-contract/ethers-contract-abigen/src/contract/events.rs @@ -204,7 +204,7 @@ impl Context { .map(|(i, input)| { // NOTE: Events can contain nameless values. let name = util::expand_input_name(i, &input.name); - let ty = self.expand_input_type(&input)?; + let ty = self.expand_input_type(input)?; Ok((name, ty, input.indexed)) }) @@ -271,7 +271,7 @@ impl Context { } else { util::safe_ident(¶m.name.to_snake_case()) }; - let ty = self.expand_input_type(¶m)?; + let ty = self.expand_input_type(param)?; Ok(quote! { #doc diff --git a/ethers-contract/ethers-contract-derive/src/lib.rs b/ethers-contract/ethers-contract-derive/src/lib.rs index 4cabd145..50ccd5c3 100644 --- a/ethers-contract/ethers-contract-derive/src/lib.rs +++ b/ethers-contract/ethers-contract-derive/src/lib.rs @@ -305,7 +305,7 @@ fn param_type_quote(kind: &ParamType) -> proc_macro2::TokenStream { let elements = tuple.iter().map(param_type_quote); quote! { ethers_core::abi::ParamType::Tuple( - vec![ + ::std::vec![ #( #elements ),* ] ) @@ -398,14 +398,14 @@ fn derive_decode_from_log_impl( .filter(|f| f.is_indexed()) .map(|f| topic_param_type_quote(&f.param.kind)); - let topic_types_init = quote! {let topic_types = vec![#( #topic_types ),*];}; + let topic_types_init = quote! {let topic_types = ::std::vec![#( #topic_types ),*];}; let data_types = event_fields .iter() .filter(|f| !f.is_indexed()) .map(|f| param_type_quote(&f.param.kind)); - let data_types_init = quote! {let data_types = vec![#( #data_types ),*];}; + let data_types_init = quote! {let data_types = ::std::vec![#( #data_types ),*];}; // decode let (signature_check, flat_topics_init, topic_tokens_len_check) = if event.anonymous { @@ -449,7 +449,7 @@ fn derive_decode_from_log_impl( quote! { let topic_tokens = ethers_core::abi::decode(&topic_types, &flat_topics)?; #topic_tokens_len_check - let data_tokens = ethers_core::abi::decode(&data_types, &data)?; + let data_tokens = ethers_core::abi::decode(&data_types, data)?; let tokens:Vec<_> = topic_tokens.into_iter().chain(data_tokens.into_iter()).collect(); } } else { @@ -794,7 +794,7 @@ fn derive_tokenizeable_impl(input: &DeriveInput) -> proc_macro2::TokenStream { // can't encode an empty struct // TODO: panic instead? quote! { - ethers_core::abi::Token::Tuple(vec![]) + ethers_core::abi::Token::Tuple(Vec::new()) }, ), 1 => { @@ -821,7 +821,7 @@ fn derive_tokenizeable_impl(input: &DeriveInput) -> proc_macro2::TokenStream { let from_token = quote! { if let ethers_core::abi::Token::Tuple(tokens) = token { if tokens.len() != #params_len { - return Err(ethers_core::abi::InvalidOutputType(format!( + return Err(ethers_core::abi::InvalidOutputType(::std::format!( "Expected {} tokens, got {}: {:?}", #params_len, tokens.len(), @@ -833,7 +833,7 @@ fn derive_tokenizeable_impl(input: &DeriveInput) -> proc_macro2::TokenStream { Ok(#init_struct_impl) } else { - Err(ethers_core::abi::InvalidOutputType(format!( + Err(ethers_core::abi::InvalidOutputType(::std::format!( "Expected Tuple, got {:?}", token ))) @@ -842,7 +842,7 @@ fn derive_tokenizeable_impl(input: &DeriveInput) -> proc_macro2::TokenStream { let into_token = quote! { ethers_core::abi::Token::Tuple( - vec![ + ::std::vec![ #into_token_impl ] ) diff --git a/ethers-contract/src/multicall/mod.rs b/ethers-contract/src/multicall/mod.rs index e5f83c9f..1b644327 100644 --- a/ethers-contract/src/multicall/mod.rs +++ b/ethers-contract/src/multicall/mod.rs @@ -312,7 +312,7 @@ impl Multicall { .iter() .zip(&return_data) .map(|(call, bytes)| { - let mut tokens: Vec = call.function.decode_output(&bytes)?; + let mut tokens: Vec = call.function.decode_output(bytes)?; Ok(match tokens.len() { 0 => Token::Tuple(vec![]), diff --git a/ethers-core/src/abi/human_readable.rs b/ethers-core/src/abi/human_readable.rs index 13727ee0..a88afb97 100644 --- a/ethers-core/src/abi/human_readable.rs +++ b/ethers-core/src/abi/human_readable.rs @@ -77,7 +77,7 @@ impl AbiParser { for mut line in types { line = line.trim_start(); if line.starts_with("function") { - let function = self.parse_function(&line)?; + let function = self.parse_function(line)?; abi.functions .entry(function.name.clone()) .or_default() diff --git a/ethers-core/src/abi/struct_def.rs b/ethers-core/src/abi/struct_def.rs index 0440130c..74b836f4 100644 --- a/ethers-core/src/abi/struct_def.rs +++ b/ethers-core/src/abi/struct_def.rs @@ -281,7 +281,7 @@ fn parse_mapping(s: &str) -> Result { if !input.starts_with("mapping") { bail!("Not a mapping `{}`", input) } - input = &input[7..].trim_start(); + input = input[7..].trim_start(); let mut iter = input .trim_start_matches('(') .trim_end_matches(')') diff --git a/ethers-core/src/types/block.rs b/ethers-core/src/types/block.rs index 7e734fe6..33f558a3 100644 --- a/ethers-core/src/types/block.rs +++ b/ethers-core/src/types/block.rs @@ -198,13 +198,13 @@ mod tests { #[test] fn deserialize_blk_no_txs() { let block = r#"{"number":"0x3","hash":"0xda53da08ef6a3cbde84c33e51c04f68c3853b6a3731f10baa2324968eee63972","parentHash":"0x689c70c080ca22bc0e681694fa803c1aba16a69c8b6368fed5311d279eb9de90","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","transactionsRoot":"0x7270c1c4440180f2bd5215809ee3d545df042b67329499e1ab97eb759d31610d","stateRoot":"0x29f32984517a7d25607da485b23cefabfd443751422ca7e603395e1de9bc8a4b","receiptsRoot":"0x056b23fbba480696b65fe5a59b8f2148a1299103c4f57df839233af2cf4ca2d2","miner":"0x0000000000000000000000000000000000000000","difficulty":"0x0","totalDifficulty":"0x0","extraData":"0x","size":"0x3e8","gasLimit":"0x6691b7","gasUsed":"0x5208","timestamp":"0x5ecedbb9","transactions":["0xc3c5f700243de37ae986082fd2af88d2a7c2752a0c0f7b9d6ac47c729d45e067"],"uncles":[]}"#; - let _block: Block = serde_json::from_str(&block).unwrap(); + let _block: Block = serde_json::from_str(block).unwrap(); } #[test] fn deserialize_blk_with_txs() { let block = r#"{"number":"0x3","hash":"0xda53da08ef6a3cbde84c33e51c04f68c3853b6a3731f10baa2324968eee63972","parentHash":"0x689c70c080ca22bc0e681694fa803c1aba16a69c8b6368fed5311d279eb9de90","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","transactionsRoot":"0x7270c1c4440180f2bd5215809ee3d545df042b67329499e1ab97eb759d31610d","stateRoot":"0x29f32984517a7d25607da485b23cefabfd443751422ca7e603395e1de9bc8a4b","receiptsRoot":"0x056b23fbba480696b65fe5a59b8f2148a1299103c4f57df839233af2cf4ca2d2","miner":"0x0000000000000000000000000000000000000000","difficulty":"0x0","totalDifficulty":"0x0","extraData":"0x","size":"0x3e8","gasLimit":"0x6691b7","gasUsed":"0x5208","timestamp":"0x5ecedbb9","transactions":[{"hash":"0xc3c5f700243de37ae986082fd2af88d2a7c2752a0c0f7b9d6ac47c729d45e067","nonce":"0x2","blockHash":"0xda53da08ef6a3cbde84c33e51c04f68c3853b6a3731f10baa2324968eee63972","blockNumber":"0x3","transactionIndex":"0x0","from":"0xfdcedc3bfca10ecb0890337fbdd1977aba84807a","to":"0xdca8ce283150ab773bcbeb8d38289bdb5661de1e","value":"0x0","gas":"0x15f90","gasPrice":"0x4a817c800","input":"0x","v":"0x25","r":"0x19f2694eb9113656dbea0b925e2e7ceb43df83e601c4116aee9c0dd99130be88","s":"0x73e5764b324a4f7679d890a198ba658ba1c8cd36983ff9797e10b1b89dbb448e"}],"uncles":[]}"#; - let _block: Block = serde_json::from_str(&block).unwrap(); + let _block: Block = serde_json::from_str(block).unwrap(); } } diff --git a/ethers-core/src/types/bytes.rs b/ethers-core/src/types/bytes.rs index 42b0a059..e636834e 100644 --- a/ethers-core/src/types/bytes.rs +++ b/ethers-core/src/types/bytes.rs @@ -19,7 +19,7 @@ impl Bytes { impl AsRef<[u8]> for Bytes { fn as_ref(&self) -> &[u8] { - &self.0.as_ref() + self.0.as_ref() } } diff --git a/ethers-middleware/src/signer.rs b/ethers-middleware/src/signer.rs index f9c771e6..ae649a4c 100644 --- a/ethers-middleware/src/signer.rs +++ b/ethers-middleware/src/signer.rs @@ -185,7 +185,7 @@ where // will poll and await the futures concurrently let (gas_price, gas, nonce) = join!( maybe(tx.gas_price, self.inner.get_gas_price()), - maybe(tx.gas, self.inner.estimate_gas(&tx)), + maybe(tx.gas, self.inner.estimate_gas(tx)), maybe( tx.nonce, self.inner.get_transaction_count(self.address(), block) diff --git a/ethers-providers/src/provider.rs b/ethers-providers/src/provider.rs index e9efcc0a..37ddbc58 100644 --- a/ethers-providers/src/provider.rs +++ b/ethers-providers/src/provider.rs @@ -310,7 +310,7 @@ impl Middleware for Provider

{ if let Some(NameOrAddress::Name(ref ens_name)) = tx.to { // resolve to an address - let addr = self.resolve_name(&ens_name).await?; + let addr = self.resolve_name(ens_name).await?; // set the value tx.to = Some(addr.into()) @@ -782,7 +782,7 @@ impl Provider { /// /// If the provided bytes were not an interpretation of an address fn decode_bytes(param: ParamType, bytes: Bytes) -> T { - let tokens = abi::decode(&[param], &bytes.as_ref()) + let tokens = abi::decode(&[param], bytes.as_ref()) .expect("could not abi-decode bytes to address tokens"); T::from_tokens(tokens).expect("could not parse tokens as address") } diff --git a/ethers-providers/src/transports/ipc.rs b/ethers-providers/src/transports/ipc.rs index 6d41842c..d2bb5df0 100644 --- a/ethers-providers/src/transports/ipc.rs +++ b/ethers-providers/src/transports/ipc.rs @@ -206,7 +206,7 @@ where warn!("Replacing a pending request with id {:?}", id); } - if let Err(err) = self.socket_writer.write(&request.as_bytes()).await { + if let Err(err) = self.socket_writer.write(request.as_bytes()).await { error!("WS connection error: {:?}", err); self.pending.remove(&id); } @@ -240,7 +240,7 @@ where let read_len = { // Deserialize as many full elements from the stream as exists let mut de: serde_json::StreamDeserializer<_, serde_json::Value> = - serde_json::Deserializer::from_slice(&read_buffer).into_iter(); + serde_json::Deserializer::from_slice(read_buffer).into_iter(); // Iterate through these elements, and handle responses/notifications while let Some(Ok(value)) = de.next() { diff --git a/ethers-signers/src/wallet/mod.rs b/ethers-signers/src/wallet/mod.rs index 1806f619..58211485 100644 --- a/ethers-signers/src/wallet/mod.rs +++ b/ethers-signers/src/wallet/mod.rs @@ -97,8 +97,8 @@ impl> Wallet { let r_bytes: FieldBytes = recoverable_sig.r().into(); let s_bytes: FieldBytes = recoverable_sig.s().into(); - let r = H256::from_slice(&r_bytes.as_slice()); - let s = H256::from_slice(&s_bytes.as_slice()); + let r = H256::from_slice(r_bytes.as_slice()); + let s = H256::from_slice(s_bytes.as_slice()); Signature { r, s, v } }