1.0.0[][src]Trait nom::lib::std::prelude::v1::v1::Clone

#[lang = "clone"]
pub trait Clone {
#[must_use = "cloning is often expensive and is not expected to have side effects"]
fn clone(&self) -> Self; fn clone_from(&mut self, source: &Self) { ... } }

A common trait for the ability to explicitly duplicate an object.

Differs from Copy in that Copy is implicit and extremely inexpensive, while Clone is always explicit and may or may not be expensive. In order to enforce these characteristics, Rust does not allow you to reimplement Copy, but you may reimplement Clone and run arbitrary code.

Since Clone is more general than Copy, you can automatically make anything Copy be Clone as well.

Derivable

This trait can be used with #[derive] if all fields are Clone. The derived implementation of clone calls clone on each field.

For a generic struct, #[derive] implements Clone conditionally by adding bound Clone on generic parameters.

// `derive` implements Clone for Reading<T> when T is Clone.
#[derive(Clone)]
struct Reading<T> {
    frequency: T,
}

How can I implement Clone?

Types that are Copy should have a trivial implementation of Clone. More formally: if T: Copy, x: T, and y: &T, then let x = y.clone(); is equivalent to let x = *y;. Manual implementations should be careful to uphold this invariant; however, unsafe code must not rely on it to ensure memory safety.

An example is a generic struct holding a function pointer. In this case, the implementation of Clone cannot be derived, but can be implemented as:

struct Generate<T>(fn() -> T);

impl<T> Copy for Generate<T> {}

impl<T> Clone for Generate<T> {
    fn clone(&self) -> Self {
        *self
    }
}

Additional implementors

In addition to the implementors listed below, the following types also implement Clone:

  • Function item types (i.e., the distinct types defined for each function)
  • Function pointer types (e.g., fn() -> i32)
  • Array types, for all sizes, if the item type also implements Clone (e.g., [i32; 123456])
  • Tuple types, if each component also implements Clone (e.g., (), (i32, bool))
  • Closure types, if they capture no value from the environment or if all such captured values implement Clone themselves. Note that variables captured by shared reference always implement Clone (even if the referent doesn't), while variables captured by mutable reference never implement Clone.

Required methods

#[must_use = "cloning is often expensive and is not expected to have side effects"]
fn clone(&self) -> Self

Returns a copy of the value.

Examples

let hello = "Hello"; // &str implements Clone

assert_eq!("Hello", hello.clone());
Loading content...

Provided methods

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source.

a.clone_from(&b) is equivalent to a = b.clone() in functionality, but can be overridden to reuse the resources of a to avoid unnecessary allocations.

Loading content...

Implementations on Foreign Types

impl Clone for Permissions[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for Sender<T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for CString[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ExitCode[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for Prefix<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Output[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for AddrParseError[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for StripPrefixError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Shutdown[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for IntoStringError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Thread[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ErrorKind[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for Ancestors<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for TryRecvError[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for PathBuf[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for EncodeWide<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Ipv6MulticastScope[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Cursor<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Metadata[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for SocketAddrV6[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for WaitTimeoutResult[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for FromBytesWithNulError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for PrefixComponent<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for VarError[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for Component<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for Iter<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for TrySendError<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for Components<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Ipv6Addr[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for SystemTimeError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for FileType[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SocketAddr[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for OpenOptions[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for RecvError[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Ipv4Addr[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for RecvTimeoutError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NulError[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for SendError<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for ErrorIter<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for SyncSender<T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Instant[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for OsString[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for SeekFrom[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ExitStatus[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ThreadId[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SystemTime[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SocketAddrV4[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for IpAddr[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroI32[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for u8[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for NonZeroI64[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for *mut T where
    T: ?Sized
[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ParseCharError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m512[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<P> Clone for Pin<P> where
    P: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for isize[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for f32[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for i8[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for TypeId[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for CharTryFromError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Cell<T> where
    T: Copy
[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for PhantomPinned[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for FpCategory[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for NonZeroU128[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for EscapeDefault<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m256i[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m128[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for usize[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for __m512d[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for i128[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for EscapeDebug[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for EscapeUnicode<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for i16[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for PhantomData<T> where
    T: ?Sized
[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ![src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for f64[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for NonZeroU16[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ToLowercase[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for i32[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ParseFloatError[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I> Clone for DecodeUtf16<I> where
    I: Clone + Iterator<Item = u16>, 
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for u128[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ParseIntError[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for DecodeUtf16Error[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Poll<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m64[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroI16[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for RefCell<T> where
    T: Clone
[src]

fn clone(&self) -> RefCell<T>[src]

Panics

Panics if the value is currently mutably borrowed.

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for EscapeDebug<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m128d[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for i64[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for u64[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for Ordering[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for __m256[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for EscapeUnicode[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for Wrapping<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for bool[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for TryFromIntError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for EscapeDefault[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for u32[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for &'_ T where
    T: ?Sized
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for NonNull<T> where
    T: ?Sized
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ToUppercase[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for TraitObject[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for TryFromSliceError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Waker[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for *const T where
    T: ?Sized
[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for RawWakerVTable[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Duration[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroUsize[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroU64[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for char[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for NonZeroU32[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroIsize[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m512i[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroI8[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m128i[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroI128[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for NonZeroU8[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for __m256d[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for u16[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for IntErrorKind[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for UnicodeVersion[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for CpuidResult[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Arc<T> where
    T: ?Sized
[src]

fn clone(&self) -> Arc<T>[src]

Makes a clone of the Arc pointer.

This creates another pointer to the same inner value, increasing the strong reference count.

Examples

use std::sync::Arc;

let five = Arc::new(5);

let _ = Arc::clone(&five);

fn clone_from(&mut self, source: &Self)[src]

impl<'_, B> Clone for Cow<'_, B> where
    B: ToOwned + ?Sized
[src]

impl<T> Clone for Weak<T> where
    T: ?Sized
[src]

fn clone(&self) -> Weak<T>[src]

Makes a clone of the Weak pointer that points to the same value.

Examples

use std::sync::{Arc, Weak};

let weak_five = Arc::downgrade(&Arc::new(5));

let _ = Weak::clone(&weak_five);

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Weak<T> where
    T: ?Sized
[src]

fn clone(&self) -> Weak<T>[src]

Makes a clone of the Weak pointer that points to the same value.

Examples

use std::rc::{Rc, Weak};

let weak_five = Rc::downgrade(&Rc::new(5));

let _ = Weak::clone(&weak_five);

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Rc<T> where
    T: ?Sized
[src]

fn clone(&self) -> Rc<T>[src]

Makes a clone of the Rc pointer.

This creates another pointer to the same inner value, increasing the strong reference count.

Examples

use std::rc::Rc;

let five = Rc::new(5);

let _ = Rc::clone(&five);

fn clone_from(&mut self, source: &Self)[src]

impl Clone for timespec

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for sockaddr

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for utimbuf

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for tm

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for stat

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for fpos_t

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for FILE

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for timeval

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for timezone

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for TryDemangleError

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SetMatches[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'t> Clone for Match<'t>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for CaptureLocations[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Error[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Regex[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'t> Clone for Match<'t>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Regex[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RegexSet[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for SetMatchesIter<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for CaptureLocations[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for SetMatchesIter<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SetMatches[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RegexSet[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ErrorKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Match

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for MatchKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for AhoCorasickBuilder

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<S> Clone for AhoCorasick<S> where
    S: StateID + Clone

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Error

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RepetitionRange

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for GroupKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassBytesRange

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for GroupKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassSetItem

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassUnicodeRange

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for WordBoundary

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Comment

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RepetitionOp

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Alternation

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Concat

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SetFlags

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Error

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassPerlKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassAscii

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Error

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for FlagsItemKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Hir

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassUnicodeKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassPerl

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Translator

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassAsciiKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Ast

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Repetition

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Group

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Assertion

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for FlagsItem

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Parser

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Position

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Literal

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SpecialLiteralKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for AssertionKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for LiteralKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Span

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RepetitionKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Flag

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for HexLiteralKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Literal

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassSet

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Repetition

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ParserBuilder

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Parser

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassSetBinaryOpKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RepetitionKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for HirKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for CaptureName

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for WithComments

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassSetRange

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassUnicode

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassSetUnion

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Literal

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Class

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Anchor

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Class

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassUnicode

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RepetitionRange

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassBytes

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ErrorKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ParserBuilder

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Flags

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Literals

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Error

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassSetBinaryOp

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassUnicodeOpKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for TranslatorBuilder

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ErrorKind

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ClassBracketed

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Group

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Utf8Sequence

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Utf8Range

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Result<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RoundingKind[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Error[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for ErrorCode[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<A> Clone for StackVec<A> where
    A: Array,
    <A as Array>::Item: Clone

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Void

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Buffer[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Loading content...

Implementors

impl Clone for RandomState[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for System[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for DefaultHasher[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Infallible[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for RangeFull[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for ParseBoolError[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for nom::lib::std::fmt::Error[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for SearchStep[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Layout[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for AllocErr[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for SipHasher[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for NoneError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for nom::lib::std::cmp::Ordering[src]

fn clone_from(&mut self, source: &Self)[src]

impl Clone for LayoutErr[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for CannotReallocInPlace[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Global[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for CollectionAllocErr[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for VerboseErrorKind[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for nom::error::ErrorKind[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Needed[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Endianness[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Box<Path>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Box<OsStr>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Box<CStr>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for Box<str>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl Clone for String[src]

impl Clone for Utf8Error[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, A> Clone for nom::lib::std::option::Iter<'_, A>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K> Clone for nom::lib::std::collections::hash_set::Iter<'_, K>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K, V> Clone for nom::lib::std::collections::hash_map::Iter<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K, V> Clone for nom::lib::std::collections::hash_map::Keys<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K, V> Clone for nom::lib::std::collections::hash_map::Values<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K, V> Clone for nom::lib::std::collections::btree_map::Values<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K, V> Clone for nom::lib::std::collections::btree_map::Iter<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, K, V> Clone for nom::lib::std::collections::btree_map::Range<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'_, K, V> Clone for nom::lib::std::collections::btree_map::Keys<'_, K, V>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for Chunks<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for ChunksExact<'_, T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'_, T> Clone for nom::lib::std::result::Iter<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for Windows<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for RChunks<'_, T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'_, T> Clone for nom::lib::std::slice::Iter<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::btree_set::Difference<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::btree_set::Range<'_, T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'_, T> Clone for nom::lib::std::collections::btree_set::Intersection<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::btree_set::Union<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::vec_deque::Iter<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::btree_set::Iter<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::linked_list::Iter<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::btree_set::SymmetricDifference<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T> Clone for nom::lib::std::collections::binary_heap::Iter<'_, T>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T, P> Clone for nom::lib::std::slice::Split<'_, T, P> where
    P: Clone + FnMut(&T) -> bool
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T, S> Clone for nom::lib::std::collections::hash_set::Union<'_, T, S>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T, S> Clone for nom::lib::std::collections::hash_set::Intersection<'_, T, S>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T, S> Clone for nom::lib::std::collections::hash_set::Difference<'_, T, S>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'_, T, S> Clone for nom::lib::std::collections::hash_set::SymmetricDifference<'_, T, S>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for SplitAsciiWhitespace<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for CharSearcher<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for Bytes<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for SplitWhitespace<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a> Clone for Lines<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for Chars<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for LinesAny<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for Arguments<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for CharIndices<'a>[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a> Clone for EncodeUtf16<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, 'b> Clone for StrSearcher<'a, 'b>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, 'b> Clone for CharSliceSearcher<'a, 'b>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, F> Clone for CharPredicateSearcher<'a, F> where
    F: Clone + FnMut(char) -> bool
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, P> Clone for MatchIndices<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, P> Clone for Matches<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, P> Clone for RMatchIndices<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, P> Clone for RMatches<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, P> Clone for nom::lib::std::str::RSplit<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a, P> Clone for RSplitN<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a, P> Clone for RSplitTerminator<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a, P> Clone for nom::lib::std::str::Split<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a, P> Clone for SplitN<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a, P> Clone for SplitTerminator<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<'a, T> Clone for RChunksExact<'a, T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<'a, T, P> Clone for nom::lib::std::slice::RSplit<'a, T, P> where
    P: Clone + FnMut(&T) -> bool,
    T: 'a + Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<A> Clone for Repeat<A> where
    A: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<A> Clone for nom::lib::std::option::IntoIter<A> where
    A: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<A, B> Clone for Chain<A, B> where
    A: Clone,
    B: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<A, B> Clone for Zip<A, B> where
    A: Clone,
    B: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<E: Clone> Clone for Err<E>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<F> Clone for FromFn<F> where
    F: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<F> Clone for OnceWith<F> where
    F: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<F> Clone for RepeatWith<F> where
    F: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<H> Clone for BuildHasherDefault<H>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<I> Clone for Cloned<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<I> Clone for Copied<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<I> Clone for Cycle<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I> Clone for Enumerate<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I> Clone for Fuse<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I> Clone for Peekable<I> where
    I: Clone + Iterator,
    <I as Iterator>::Item: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I> Clone for Skip<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I> Clone for StepBy<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<I> Clone for Take<I> where
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, F> Clone for FilterMap<I, F> where
    F: Clone,
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, F> Clone for Inspect<I, F> where
    F: Clone,
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, F> Clone for Map<I, F> where
    F: Clone,
    I: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, P> Clone for Filter<I, P> where
    I: Clone,
    P: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, P> Clone for SkipWhile<I, P> where
    I: Clone,
    P: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, P> Clone for TakeWhile<I, P> where
    I: Clone,
    P: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, St, F> Clone for Scan<I, St, F> where
    F: Clone,
    I: Clone,
    St: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I, U> Clone for Flatten<I> where
    I: Iterator + Clone,
    U: Iterator + Clone,
    <I as Iterator>::Item: IntoIterator,
    <<I as Iterator>::Item as IntoIterator>::IntoIter == U,
    <<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<I, U, F> Clone for FlatMap<I, U, F> where
    F: Clone,
    I: Clone,
    U: Clone + IntoIterator,
    <U as IntoIterator>::IntoIter: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<I: Clone> Clone for VerboseError<I>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<Idx> Clone for nom::lib::std::ops::Range<Idx> where
    Idx: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<Idx> Clone for RangeFrom<Idx> where
    Idx: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<Idx> Clone for RangeInclusive<Idx> where
    Idx: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<Idx> Clone for RangeTo<Idx> where
    Idx: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<Idx> Clone for RangeToInclusive<Idx> where
    Idx: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<K, V> Clone for BTreeMap<K, V> where
    K: Clone,
    V: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<K, V, S> Clone for HashMap<K, V, S> where
    K: Clone,
    S: Clone,
    V: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for Discriminant<T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Empty<T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Bound<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Option<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for Reverse<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for nom::lib::std::collections::binary_heap::IntoIter<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for nom::lib::std::collections::linked_list::IntoIter<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for LinkedList<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for BTreeSet<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for BinaryHeap<T> where
    T: Clone
[src]

impl<T> Clone for nom::lib::std::collections::vec_deque::IntoIter<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for VecDeque<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for Once<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Rev<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for ManuallyDrop<T> where
    T: Clone + ?Sized
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Box<[T]> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for Box<T> where
    T: Clone
[src]

Important traits for Box<R>
fn clone(&self) -> Box<T>[src]

Returns a new box with a clone() of this box's contents.

Examples

let x = Box::new(5);
let y = x.clone();

fn clone_from(&mut self, source: &Box<T>)[src]

Copies source's contents into self without creating a new allocation.

Examples

let x = Box::new(5);
let mut y = Box::new(10);

y.clone_from(&x);

assert_eq!(*y, 5);

impl<T> Clone for Vec<T> where
    T: Clone
[src]

impl<T> Clone for nom::lib::std::result::IntoIter<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T> Clone for nom::lib::std::vec::IntoIter<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T> Clone for MaybeUninit<T> where
    T: Copy
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T, E> Clone for nom::lib::std::prelude::v1::v1::Result<T, E> where
    E: Clone,
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<T, F> Clone for Successors<T, F> where
    F: Clone,
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

impl<T, S> Clone for HashSet<T, S> where
    S: Clone,
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[src]

impl<Y, R> Clone for GeneratorState<Y, R> where
    R: Clone,
    Y: Clone
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Loading content...