1.0.0[][src]Trait ndless::clone::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<T> Clone for Poll<T> where
    T: Clone
[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 TraitObject[src]

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

impl Clone for Ordering[src]

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

impl Clone for AllocErr[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 LayoutErr[src]

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

impl Clone for ParseFloatError[src]

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

impl Clone for CannotReallocInPlace[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 Clone for LocalWaker[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 usb_event__bindgen_ty_1[src]

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

impl Clone for pthread_barrier_t[src]

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

impl Clone for usbd_device[src]

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

impl Clone for __va_list_tag[src]

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

impl Clone for lua_State[src]

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

impl Clone for pthread_mutex_t[src]

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

impl Clone for pthread_cond_t[src]

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

impl Clone for pthread_rwlockattr_t[src]

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

impl Clone for div_t[src]

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

impl Clone for usb_interface_descriptor_t[src]

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

impl Clone for device[src]

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

impl Clone for __pthread_rwlock_arch_t[src]

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

impl Clone for usb_full_desc[src]

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

impl Clone for usb_alt_interface[src]

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

impl Clone for usb_device_descriptor_t[src]

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

impl Clone for usbd_xfer[src]

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

impl Clone for fd_set[src]

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

impl Clone for touchpad_report_t[src]

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

impl Clone for usb_endpoint_desc[src]

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

impl Clone for random_data[src]

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

impl Clone for lldiv_t[src]

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

impl Clone for usb_string_desc[src]

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

impl Clone for nuc_stat[src]

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

impl Clone for usb_config_desc[src]

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

impl Clone for usb_task[src]

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

impl Clone for timeval[src]

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

impl Clone for luaL_Reg[src]

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

impl Clone for usb_event__bindgen_ty_1__bindgen_ty_2[src]

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

impl Clone for _IO_codecvt[src]

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

impl Clone for _G_fpos_t[src]

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

impl Clone for pthread_condattr_t[src]

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

impl Clone for __pthread_internal_list[src]

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

impl Clone for usb_string_descriptor_t[src]

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

impl Clone for pthread_attr_t[src]

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

impl Clone for __pthread_cond_s__bindgen_ty_2[src]

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

impl Clone for usb_device_info[src]

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

impl Clone for usb_device_stats[src]

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

impl Clone for __pthread_cond_s[src]

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

impl Clone for usbd_bus[src]

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

impl Clone for usb_hub_descriptor_t[src]

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

impl Clone for usb_ctl_request[src]

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

impl Clone for _nn_oh[src]

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

impl Clone for clist[src]

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

impl Clone for usb_otg_descriptor_t[src]

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

impl Clone for __locale_data[src]

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

impl Clone for pthread_rwlock_t[src]

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

impl Clone for _IO_FILE[src]

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

impl Clone for usb_hub_status_t[src]

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

impl Clone for __pthread_cond_s__bindgen_ty_1__bindgen_ty_1[src]

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

impl Clone for stat[src]

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

impl Clone for s_ns_event[src]

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

impl Clone for usb_event__bindgen_ty_1__bindgen_ty_1[src]

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

impl Clone for usb_port_status_t[src]

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

impl Clone for usb_device_qualifier_t[src]

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

impl Clone for _G_fpos64_t[src]

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

impl Clone for gui_gc_Image_header[src]

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

impl Clone for timespec[src]

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

impl Clone for nuc_dirent[src]

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

impl Clone for _nn_nh[src]

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

impl Clone for usb_task__bindgen_ty_1[src]

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

impl Clone for usb_devno[src]

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

impl Clone for usb_config_descriptor_t[src]

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

impl Clone for max_align_t[src]

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

impl Clone for __pthread_cond_s__bindgen_ty_1[src]

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

impl Clone for t_key[src]

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

impl Clone for pthread_barrierattr_t[src]

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

impl Clone for usb_descriptor_t[src]

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

impl Clone for timezone[src]

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

impl Clone for itimerval[src]

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

impl Clone for dstat[src]

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

impl Clone for usb_interface_desc[src]

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

impl Clone for usb_ctl_report_desc[src]

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

impl Clone for usb_ctl_report[src]

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

impl Clone for usb_event_cookie_t[src]

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

impl Clone for usb_endpoint_descriptor_t[src]

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

impl Clone for __sigset_t[src]

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

impl Clone for drand48_data[src]

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

impl Clone for _IO_marker[src]

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

impl Clone for usb_attach_arg[src]

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

impl Clone for ldiv_t[src]

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

impl Clone for pthread_mutexattr_t[src]

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

impl Clone for _nn_ch[src]

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

impl Clone for _bindgen_ty_5[src]

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

impl Clone for __pthread_cond_s__bindgen_ty_2__bindgen_ty_1[src]

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

impl Clone for usbd_interface[src]

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

impl Clone for usbd_pipe[src]

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

impl Clone for touchpad_info_t[src]

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

impl Clone for luaL_Buffer[src]

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

impl Clone for _IO_wide_data[src]

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

impl Clone for __mbstate_t__bindgen_ty_1[src]

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

impl Clone for __pthread_mutex_s[src]

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

impl Clone for usb_device_request_t[src]

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

impl Clone for __mbstate_t[src]

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

impl Clone for __fsid_t[src]

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

impl Clone for usb_event[src]

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

impl Clone for gui_gc_Sprite[src]

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

impl Clone for usb_status_t[src]

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

impl Clone for __locale_struct[src]

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

impl Clone for lua_Debug[src]

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

Loading content...

Implementors

impl Clone for ![src]

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

impl Clone for ndless::cmp::Ordering[src]

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

impl Clone for CollectionAllocErr[src]

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

impl Clone for Key[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 IntErrorKind[src]

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

impl Clone for SearchStep[src]

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

impl Clone for ParseError[src]

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

impl Clone for TypeId[src]

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

impl Clone for CpuidResult[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 __m128d[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 __m256[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 __m256i[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 Clone for __m512d[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 __m64[src]

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

impl Clone for CharTryFromError[src]

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

impl Clone for DecodeUtf16Error[src]

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

impl Clone for EscapeDebug[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 EscapeUnicode[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 ToLowercase[src]

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

impl Clone for ToUppercase[src]

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

impl Clone for UnicodeVersion[src]

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

impl Clone for CString[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 Clone for IntoStringError[src]

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

impl Clone for NulError[src]

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

impl Clone for Error[src]

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

impl Clone for SipHasher[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 NonZeroI128[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 Clone for NonZeroI32[src]

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

impl Clone for NonZeroI64[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 NonZeroIsize[src]

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

impl Clone for NonZeroU128[src]

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

impl Clone for NonZeroU16[src]

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

impl Clone for NonZeroU32[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 NonZeroU8[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 ParseIntError[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 RangeFull[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 Box<str>[src]

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

impl Clone for String[src]

impl Clone for ParseBoolError[src]

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

impl Clone for Utf8Error[src]

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

impl Clone for Duration[src]

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

impl Clone for bool[src]

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

impl Clone for char[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 f64[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 i16[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 i64[src]

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

impl Clone for i128[src]

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

impl Clone for isize[src]

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

impl Clone for u8[src]

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

impl Clone for u16[src]

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

impl Clone for u32[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 u128[src]

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

impl Clone for usize[src]

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

impl<'_, A> Clone for ndless::option::Iter<'_, A>[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 ndless::result::Iter<'_, T>[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 ndless::slice::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, P> Clone for ndless::slice::Split<'_, T, P> where
    P: Clone + FnMut(&T) -> bool, 
[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 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 CharIndices<'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 EncodeUtf16<'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 LinesAny<'a>[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 SplitWhitespace<'a>[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, 'b> Clone for StrSearcher<'a, 'b>[src]

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

impl<'a, B> Clone for Cow<'a, B> where
    B: ToOwned + ?Sized
[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, K, V> Clone for ndless::collections::btree_map::Iter<'a, K, V>[src]

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

impl<'a, K, V> Clone for Keys<'a, K, V>[src]

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

impl<'a, K, V> Clone for ndless::collections::btree_map::Range<'a, K, V>[src]

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

impl<'a, K, V> Clone for Values<'a, K, V>[src]

fn clone_from(&mut self, source: &Self)[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 ndless::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 ndless::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 ndless::collections::binary_heap::Iter<'a, T>[src]

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

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

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

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

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

impl<'a, T> Clone for ndless::collections::btree_set::Iter<'a, T>[src]

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

impl<'a, T> Clone for ndless::collections::btree_set::Range<'a, T>[src]

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

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

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

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

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

impl<'a, T> Clone for ndless::collections::linked_list::Iter<'a, T>[src]

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

impl<'a, T> Clone for ndless::collections::vec_deque::Iter<'a, T>[src]

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

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

fn clone_from(&mut self, source: &Self)
1.0.0
[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 ndless::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 ndless::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<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 DecodeUtf16<I> where
    I: Clone + Iterator<Item = u16>, 
[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<Idx> Clone for ndless::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<St, F> Clone for Unfold<St, F> where
    F: Clone,
    St: Clone
[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<T> Clone for *mut T where
    T: ?Sized
[src]

fn clone_from(&mut self, source: &Self)[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 Cell<T> where
    T: Copy
[src]

fn clone_from(&mut self, source: &Self)[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<T> Clone for Reverse<T> where
    T: Clone
[src]

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

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

impl<T> Clone for ndless::collections::binary_heap::IntoIter<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 ndless::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 ndless::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 Empty<T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[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 PhantomData<T> where
    T: ?Sized
[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 ManuallyDrop<T> where
    T: Clone + ?Sized
[src]

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

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

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

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

Important traits for Box<I>
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 Box<[T]> where
    T: Clone
[src]

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

impl<T> Clone for ndless::prelude::vec::IntoIter<T> where
    T: Clone
[src]

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

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

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

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<T> Clone for ndless::rc::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 ndless::result::IntoIter<T> where
    T: Clone
[src]

fn clone_from(&mut self, source: &Self)[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<T> Clone for ndless::sync::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, E> Clone for 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<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...