about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDaniel Eades <danieleades@hotmail.com>2023-01-10 18:20:12 +0000
committerDaniel Eades <danieleades@hotmail.com>2023-01-10 18:20:12 +0000
commit95d14c393c7efd7ccb56076eb2bc799e5a367c68 (patch)
tree7eec7371967fc999271f6ea9c6c6780b3c54852b
parent3987c835f204a064fd28d21b59aecd2c72f5d0d0 (diff)
downloadrust-95d14c393c7efd7ccb56076eb2bc799e5a367c68.tar.gz
rust-95d14c393c7efd7ccb56076eb2bc799e5a367c68.zip
avoid 'cloning' types that implement 'Copy'
-rw-r--r--crates/hir-ty/src/lower.rs2
-rw-r--r--crates/hir/src/lib.rs2
-rw-r--r--crates/mbe/src/benchmark.rs2
-rw-r--r--crates/mbe/src/expander/transcriber.rs2
-rw-r--r--crates/mbe/src/parser.rs2
-rw-r--r--crates/mbe/src/tt_iter.rs4
6 files changed, 7 insertions, 7 deletions
diff --git a/crates/hir-ty/src/lower.rs b/crates/hir-ty/src/lower.rs
index 4b1f40f91d6..6a58546982d 100644
--- a/crates/hir-ty/src/lower.rs
+++ b/crates/hir-ty/src/lower.rs
@@ -1931,7 +1931,7 @@ pub(crate) fn const_or_path_to_chalk(
     debruijn: DebruijnIndex,
 ) -> Const {
     match value {
-        ConstScalarOrPath::Scalar(s) => intern_const_scalar(s.clone(), expected_ty),
+        ConstScalarOrPath::Scalar(s) => intern_const_scalar(*s, expected_ty),
         ConstScalarOrPath::Path(n) => {
             let path = ModPath::from_segments(PathKind::Plain, Some(n.clone()));
             path_to_const(db, resolver, &path, mode, args, debruijn)
diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs
index ec66660f34a..6baf53e35c6 100644
--- a/crates/hir/src/lib.rs
+++ b/crates/hir/src/lib.rs
@@ -923,7 +923,7 @@ impl Struct {
     }
 
     pub fn repr(self, db: &dyn HirDatabase) -> Option<ReprOptions> {
-        db.struct_data(self.id).repr.clone()
+        db.struct_data(self.id).repr
     }
 
     pub fn kind(self, db: &dyn HirDatabase) -> StructKind {
diff --git a/crates/mbe/src/benchmark.rs b/crates/mbe/src/benchmark.rs
index 4b750025018..0fee6dfe433 100644
--- a/crates/mbe/src/benchmark.rs
+++ b/crates/mbe/src/benchmark.rs
@@ -145,7 +145,7 @@ fn invocation_fixtures(rules: &FxHashMap<String, DeclarativeMacro>) -> Vec<(Stri
             Op::Ident(it) => parent.token_trees.push(tt::Leaf::from(it.clone()).into()),
             Op::Punct(puncts) => {
                 for punct in puncts {
-                    parent.token_trees.push(tt::Leaf::from(punct.clone()).into());
+                    parent.token_trees.push(tt::Leaf::from(*punct).into());
                 }
             }
             Op::Repeat { tokens, kind, separator } => {
diff --git a/crates/mbe/src/expander/transcriber.rs b/crates/mbe/src/expander/transcriber.rs
index db0d327bf40..fb316320ae7 100644
--- a/crates/mbe/src/expander/transcriber.rs
+++ b/crates/mbe/src/expander/transcriber.rs
@@ -138,7 +138,7 @@ fn expand_subtree(
             Op::Ident(it) => arena.push(tt::Leaf::from(it.clone()).into()),
             Op::Punct(puncts) => {
                 for punct in puncts {
-                    arena.push(tt::Leaf::from(punct.clone()).into());
+                    arena.push(tt::Leaf::from(*punct).into());
                 }
             }
             Op::Subtree { tokens, delimiter } => {
diff --git a/crates/mbe/src/parser.rs b/crates/mbe/src/parser.rs
index fad905e97f4..875dc1ad87b 100644
--- a/crates/mbe/src/parser.rs
+++ b/crates/mbe/src/parser.rs
@@ -126,7 +126,7 @@ fn next_op(
             src.next().expect("first token already peeked");
             // Note that the '$' itself is a valid token inside macro_rules.
             let second = match src.next() {
-                None => return Ok(Op::Punct(smallvec![p.clone()])),
+                None => return Ok(Op::Punct(smallvec![*p])),
                 Some(it) => it,
             };
             match second {
diff --git a/crates/mbe/src/tt_iter.rs b/crates/mbe/src/tt_iter.rs
index bee7b5de6ac..7787c74da88 100644
--- a/crates/mbe/src/tt_iter.rs
+++ b/crates/mbe/src/tt_iter.rs
@@ -114,7 +114,7 @@ impl<'a> TtIter<'a> {
             ('.', '.', Some('.' | '=')) | ('<', '<', Some('=')) | ('>', '>', Some('=')) => {
                 let _ = self.next().unwrap();
                 let _ = self.next().unwrap();
-                Ok(smallvec![first, second.clone(), third.unwrap().clone()])
+                Ok(smallvec![first, *second, *third.unwrap()])
             }
             ('-' | '!' | '*' | '/' | '&' | '%' | '^' | '+' | '<' | '=' | '>' | '|', '=', _)
             | ('-' | '=' | '>', '>', _)
@@ -125,7 +125,7 @@ impl<'a> TtIter<'a> {
             | ('<', '<', _)
             | ('|', '|', _) => {
                 let _ = self.next().unwrap();
-                Ok(smallvec![first, second.clone()])
+                Ok(smallvec![first, *second])
             }
             _ => Ok(smallvec![first]),
         }