# 1.0.0[−][src]Trait std::marker::Copy

    #[lang = "copy"]pub trait Copy: Clone { }

Types whose values can be duplicated simply by copying bits.

By default, variable bindings have 'move semantics.' In other words:

    #[derive(Debug)]
    struct Foo;

    let x = Foo;

    let y = x;

    // `x` has moved into `y`, and so cannot be used

    // println!("{:?}", x); // error: use of moved value

Run

However, if a type implements `Copy`, it instead has 'copy semantics':

    // We can derive a `Copy` implementation. `Clone` is also required, as it's
    // a supertrait of `Copy`.
    #[derive(Debug, Copy, Clone)]
    struct Foo;

    let x = Foo;

    let y = x;

    // `y` is a copy of `x`

    println!("{:?}", x); // A-OK!

Run

It's important to note that in these two examples, the only difference is whether you are allowed to access `x` after the assignment. Under the hood, both a copy and a move can result in bits being copied in memory, although this is sometimes optimized away.

## How can I implement `Copy`?

There are two ways to implement `Copy` on your type. The simplest is to use `derive`:

    #[derive(Copy, Clone)]
    struct MyStruct;

Run

You can also implement `Copy` and `Clone` manually:

    struct MyStruct;

    impl Copy for MyStruct { }

    impl Clone for MyStruct {
        fn clone(&self) -> MyStruct {
            *self
        }
    }

Run

There is a small difference between the two: the `derive` strategy will also place a `Copy` bound on type parameters, which isn't always desired.

## What's the difference between `Copy` and `Clone`?

Copies happen implicitly, for example as part of an assignment `y = x`. The behavior of `Copy` is not overloadable; it is always a simple bit-wise copy.

Cloning is an explicit action, `x.clone()`. The implementation of `Clone` can provide any type-specific behavior necessary to duplicate values safely. For example, the implementation of `Clone` for `String` needs to copy the pointed-to string buffer in the heap. A simple bitwise copy of `String` values would merely copy the pointer, leading to a double free down the line. For this reason, `String` is `Clone` but not `Copy`.

`Clone` is a supertrait of `Copy`, so everything which is `Copy` must also implement `Clone`. If a type is `Copy` then its `Clone` implementation only needs to return `*self` (see the example above).

## When can my type be `Copy`?

A type can implement `Copy` if all of its components implement `Copy`. For example, this struct can be `Copy`:

    struct Point {
       x: i32,
       y: i32,
    }

Run

A struct can be `Copy`, and `i32` is `Copy`, therefore `Point` is eligible to be `Copy`. By contrast, consider

    struct PointList {
        points: Vec<Point>,
    }

Run

The struct `PointList` cannot implement `Copy`, because `Vec<T>` is not `Copy`. If we attempt to derive a `Copy` implementation, we'll get an error:

    the trait `Copy` may not be implemented for this type; field `points` does not implement `Copy`

## When can't my type be `Copy`?

Some types can't be copied safely. For example, copying `&mut T` would create an aliased mutable reference. Copying `String` would duplicate responsibility for managing the `String`'s buffer, leading to a double free.

Generalizing the latter case, any type implementing `Drop` can't be `Copy`, because it's managing some resource besides its own `size_of::<T>` bytes.

If you try to implement `Copy` on a struct or enum containing non-`Copy` data, you will get the error E0204.

## When should my type be `Copy`?

Generally speaking, if your type can implement `Copy`, it should. Keep in mind, though, that implementing `Copy` is part of the public API of your type. If the type might become non-`Copy` in the future, it could be prudent to omit the `Copy` implementation now, to avoid a breaking API change.

## Additional implementors

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

- 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 `Copy` (e.g., `[i32; 123456]`)
- Tuple types, if each component also implements `Copy` (e.g., `()`, `(i32, bool)`)
- Closure types, if they capture no value from the environment or if all such captured values implement `Copy` themselves. Note that variables captured by shared reference always implement `Copy` (even if the referent doesn't), while variables captured by mutable reference never implement `Copy`.

## Implementations on Foreign Types

### `impl Copy for __m256d`[src]

### `impl Copy for CpuidResult`[src]

### `impl Copy for __m128d`[src]

### `impl Copy for __m128`[src]

### `impl Copy for __m64`[src]

### `impl Copy for __m256i`[src]

### `impl Copy for __m512d`[src]

### `impl Copy for __m512`[src]

### `impl Copy for __m512i`[src]

### `impl Copy for __m256`[src]

### `impl Copy for __m128i`[src]

### `impl<R> Copy for EhFrameHdr<R> where
R: Reader + Copy,`

### `impl<R> Copy for DebugLineStr<R> where
R: Copy,`

### `impl<R> Copy for Attribute<R> where
R: Reader + Copy,`

### `impl Copy for DwEhPe`

### `impl<R, Offset> Copy for Operation<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl Copy for DwCc`

### `impl Copy for X86`

### `impl<T> Copy for DebugStrOffset<T> where
T: Copy,`

### `impl Copy for RunTimeEndian`

### `impl<R> Copy for DebugStrOffsets<R> where
R: Copy,`

### `impl Copy for DwOp`

### `impl Copy for DwIdx`

### `impl<T> Copy for UnitOffset<T> where
T: Copy,`

### `impl Copy for LineRow`

### `impl<'input, Endian> Copy for EndianSlice<'input, Endian> where
Endian: Copy + Endianity,`

### `impl<T> Copy for DebugMacroOffset<T> where
T: Copy,`

### `impl Copy for DwVirtuality`

### `impl Copy for ColumnType`

### `impl<T> Copy for DebugTypesOffset<T> where
T: Copy,`

### `impl Copy for DwAccess`

### `impl Copy for ValueType`

### `impl Copy for AttributeSpecification`

### `impl Copy for Pointer`

### `impl<R> Copy for RangeLists<R> where
R: Copy,`

### `impl Copy for DwInl`

### `impl<R> Copy for LocationLists<R> where
R: Copy,`

### `impl Copy for BigEndian`

### `impl Copy for LineEncoding`

### `impl<R> Copy for Expression<R> where
R: Reader + Copy,`

### `impl<R> Copy for DebugInfo<R> where
R: Copy,`

### `impl<R, Offset> Copy for Location<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl<R, Offset> Copy for FileEntry<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl Copy for DwForm`

### `impl<T> Copy for DieReference<T> where
T: Copy,`

### `impl<R, Offset> Copy for CompilationUnitHeader<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl<T> Copy for LocationListsOffset<T> where
T: Copy,`

### `impl Copy for SectionId`

### `impl Copy for DwId`

### `impl Copy for DwChildren`

### `impl<'abbrev, 'entry, 'unit, R> Copy for AttrsIter<'abbrev, 'entry, 'unit, R> where
R: Reader + Copy,`

### `impl<R> Copy for DebugAbbrev<R> where
R: Copy,`

### `impl<R> Copy for DebugLine<R> where
R: Copy,`

### `impl<T> Copy for DebugInfoOffset<T> where
T: Copy,`

### `impl<R, Offset> Copy for AttributeValue<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl<R, Offset> Copy for UnitHeader<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl Copy for DebugTypeSignature`

### `impl<T> Copy for DebugRngListsIndex<T> where
T: Copy,`

### `impl<R, Offset> Copy for TypeUnitHeader<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl<R> Copy for DebugLocLists<R> where
R: Copy,`

### `impl<T> Copy for DebugLocListsBase<T> where
T: Copy,`

### `impl<R, Offset> Copy for Piece<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl Copy for DwAte`

### `impl Copy for DwRle`

### `impl<R> Copy for DebugAddr<R> where
R: Copy,`

### `impl<R> Copy for DebugFrame<R> where
R: Reader + Copy,`

### `impl<T> Copy for RangeListsOffset<T> where
T: Copy,`

### `impl<T> Copy for DebugLineOffset<T> where
T: Copy,`

### `impl Copy for Register`

### `impl<T> Copy for DebugLineStrOffset<T> where
T: Copy,`

### `impl Copy for DwTag`

### `impl Copy for DwUt`

### `impl Copy for DwDefaulted`

### `impl Copy for Error`

### `impl Copy for DwAddr`

### `impl<T> Copy for DebugAddrBase<T> where
T: Copy,`

### `impl Copy for DwMacro`

### `impl<T> Copy for DebugFrameOffset<T> where
T: Copy,`

### `impl Copy for Value`

### `impl<T> Copy for DebugAddrIndex<T> where
T: Copy,`

### `impl Copy for Range`

### `impl<R, Offset> Copy for LineInstruction<R, Offset> where
Offset: Copy + ReaderOffset,
R: Copy + Reader<Offset = Offset>,`

### `impl Copy for DwLang`

### `impl<R> Copy for LocationListEntry<R> where
R: Reader + Copy,`

### `impl<T> Copy for DebugAbbrevOffset<T> where
T: Copy,`

### `impl<R> Copy for DebugLoc<R> where
R: Copy,`

### `impl Copy for DwLle`

### `impl Copy for Format`

### `impl Copy for Augmentation`

### `impl Copy for Encoding`

### `impl<R> Copy for OperationIter<R> where
R: Reader + Copy,`

### `impl Copy for DwAt`

### `impl<T> Copy for DebugStrOffsetsIndex<T> where
T: Copy,`

### `impl Copy for DwLnct`

### `impl Copy for DwVis`

### `impl Copy for DwOrd`

### `impl<T> Copy for EhFrameOffset<T> where
T: Copy,`

### `impl Copy for DwLns`

### `impl Copy for ReaderOffsetId`

### `impl Copy for DwLne`

### `impl<R> Copy for DebugRngLists<R> where
R: Copy,`

### `impl<T> Copy for DebugRngListsBase<T> where
T: Copy,`

### `impl<R> Copy for DebugStr<R> where
R: Copy,`

### `impl<T> Copy for DebugLocListsIndex<T> where
T: Copy,`

### `impl Copy for Arm`

### `impl Copy for FileEntryFormat`

### `impl Copy for DwCfa`

### `impl<R> Copy for EhFrame<R> where
R: Reader + Copy,`

### `impl<T> Copy for UnitSectionOffset<T> where
T: Copy,`

### `impl Copy for DwEnd`

### `impl Copy for DwDs`

### `impl<R> Copy for DebugTypes<R> where
R: Copy,`

### `impl Copy for LittleEndian`

### `impl<R> Copy for DebugRanges<R> where
R: Copy,`

### `impl<T> Copy for DebugStrOffsetsBase<T> where
T: Copy,`

### `impl Copy for DwDsc`

### `impl<T> Copy for DebugMacinfoOffset<T> where
T: Copy,`

### `impl Copy for X86_64`

### `impl Copy for ImageDebugMisc`

### `impl Copy for RelocationEncoding`

### `impl Copy for ImageDynamicRelocationTable`

### `impl Copy for RelocationInfo`

### `impl Copy for NonPagedDebugInfo`

### `impl<E> Copy for SegmentCommand32<E> where
E: Endian + Copy,`

### `impl<E> Copy for Rela32<E> where
E: Endian + Copy,`

### `impl Copy for AddressSize`

### `impl Copy for ImageResourceDataEntry`

### `impl<E> Copy for U32Bytes<E> where
E: Endian + Copy,`

### `impl Copy for ImageRomOptionalHeader`

### `impl Copy for ImageFunctionEntry`

### `impl Copy for ImageTlsDirectory64`

### `impl<E> Copy for DyldInfoCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for I32<E> where
E: Endian + Copy,`

### `impl Copy for FatArch32`

### `impl<E> Copy for NoteCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageSectionHeader`

### `impl<'data, Mach> Copy for SymbolTable<'data, Mach> where
Mach: MachHeader + Copy,
<Mach as MachHeader>::Nlist: Copy,`

### `impl<E> Copy for LcStr<E> where
E: Endian + Copy,`

### `impl Copy for ImageAlphaRuntimeFunctionEntry`

### `impl Copy for RelocationTarget`

### `impl Copy for ImageFileHeader`

### `impl Copy for ImageLoadConfigDirectory32`

### `impl Copy for ImageDebugDirectory`

### `impl Copy for ImageRuntimeFunctionEntry`

### `impl Copy for Endianness`

### `impl<E> Copy for FvmlibCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for FvmfileCommand<E> where
E: Endian + Copy,`

### `impl<'data> Copy for StringTable<'data>`

### `impl Copy for ImageResourceDirectoryEntry`

### `impl Copy for ImageBoundImportDescriptor`

### `impl Copy for ImageCoffSymbolsHeader`

### `impl Copy for ImageResourceDirStringU`

### `impl<E> Copy for Syminfo32<E> where
E: Endian + Copy,`

### `impl Copy for ImageCor20Header`

### `impl<'data, Elf> Copy for SectionTable<'data, Elf> where
Elf: FileHeader + Copy,
<Elf as FileHeader>::SectionHeader: Copy,`

### `impl Copy for ImageBaseRelocation`

### `impl Copy for AnonObjectHeaderV2`

### `impl Copy for SectionFlags`

### `impl<E> Copy for ThreadCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for EntryPointCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for FileHeader32<E> where
E: Endian + Copy,`

### `impl Copy for ImageSeparateDebugHeader`

### `impl<'data> Copy for SectionTable<'data>`

### `impl Copy for ImageAuxSymbolSection`

### `impl<E> Copy for I64<E> where
E: Endian + Copy,`

### `impl Copy for ImageNtHeaders64`

### `impl Copy for ImageSymbolEx`

### `impl Copy for RelocationKind`

### `impl<E> Copy for SymtabCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageEnclaveImport`

### `impl<E> Copy for Syminfo64<E> where
E: Endian + Copy,`

### `impl<E> Copy for I16<E> where
E: Endian + Copy,`

### `impl<E> Copy for SubClientCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for SymSegCommand<E> where
E: Endian + Copy,`

### `impl Copy for ScatteredRelocationInfo`

### `impl<E> Copy for SegmentCommand64<E> where
E: Endian + Copy,`

### `impl<E> Copy for NoteHeader64<E> where
E: Endian + Copy,`

### `impl<E> Copy for SubFrameworkCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageFunctionEntry64`

### `impl<E> Copy for I32Bytes<E> where
E: Endian + Copy,`

### `impl Copy for BinaryFormat`

### `impl<E> Copy for DylibModule64<E> where
E: Endian + Copy,`

### `impl Copy for ImageHotPatchInfo`

### `impl<E> Copy for DylinkerCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for Sym32<E> where
E: Endian + Copy,`

### `impl<E> Copy for Dylib<E> where
E: Endian + Copy,`

### `impl Copy for ImageExportDirectory`

### `impl<E> Copy for Relocation<E> where
E: Endian + Copy,`

### `impl<E> Copy for U16<E> where
E: Endian + Copy,`

### `impl Copy for FileFlags`

### `impl<E> Copy for SubLibraryCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageDynamicRelocation64`

### `impl<E> Copy for Dyn32<E> where
E: Endian + Copy,`

### `impl Copy for ImageArm64RuntimeFunctionEntry`

### `impl Copy for ImageOptionalHeader64`

### `impl Copy for ImageSymbolBytes`

### `impl Copy for ImageDynamicRelocation32`

### `impl<E> Copy for DylibModule32<E> where
E: Endian + Copy,`

### `impl Copy for SectionKind`

### `impl Copy for BigEndian`

### `impl Copy for Architecture`

### `impl<E> Copy for Nlist32<E> where
E: Endian + Copy,`

### `impl Copy for ImageDosHeader`

### `impl<E> Copy for Nlist64<E> where
E: Endian + Copy,`

### `impl Copy for ImageAuxSymbolFunctionBeginEnd`

### `impl<E> Copy for FileHeader64<E> where
E: Endian + Copy,`

### `impl Copy for ImageResourceDirectory`

### `impl<E> Copy for UuidCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for Section64<E> where
E: Endian + Copy,`

### `impl<E> Copy for CompressionHeader32<E> where
E: Endian + Copy,`

### `impl Copy for FatArch64`

### `impl<'data> Copy for Bytes<'data>`

### `impl Copy for ImageEnclaveConfig32`

### `impl Copy for ImageAuxSymbolFunction`

### `impl Copy for ImageOptionalHeader32`

### `impl<Section> Copy for SymbolFlags<Section> where
Section: Copy,`

### `impl Copy for Error`

### `impl<E> Copy for ProgramHeader64<E> where
E: Endian + Copy,`

### `impl Copy for ImageDelayloadDescriptor`

### `impl Copy for ImageEpilogueDynamicRelocationHeader`

### `impl<E> Copy for LoadCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for SubUmbrellaCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageTlsDirectory32`

### `impl<E> Copy for BuildToolVersion<E> where
E: Endian + Copy,`

### `impl<E> Copy for EncryptionInfoCommand64<E> where
E: Endian + Copy,`

### `impl<E> Copy for SourceVersionCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageNtHeaders32`

### `impl Copy for CompressionFormat`

### `impl<E> Copy for Rel32<E> where
E: Endian + Copy,`

### `impl Copy for ImageBoundForwarderRef`

### `impl<E> Copy for LinkerOptionCommand<E> where
E: Endian + Copy,`

### `impl Copy for AnonObjectHeaderBigobj`

### `impl Copy for ImageAlpha64RuntimeFunctionEntry`

### `impl<E> Copy for Sym64<E> where
E: Endian + Copy,`

### `impl Copy for ImageArchitectureEntry`

### `impl<E> Copy for DylibReference<E> where
E: Endian + Copy,`

### `impl<E> Copy for SectionHeader32<E> where
E: Endian + Copy,`

### `impl<E> Copy for ProgramHeader32<E> where
E: Endian + Copy,`

### `impl<E> Copy for I64Bytes<E> where
E: Endian + Copy,`

### `impl Copy for ImageOs2Header`

### `impl<E> Copy for TwolevelHintsCommand<E> where
E: Endian + Copy,`

### `impl Copy for SectionIndex`

### `impl Copy for ImageVxdHeader`

### `impl Copy for SymbolIndex`

### `impl<E> Copy for U64<E> where
E: Endian + Copy,`

### `impl<E> Copy for TwolevelHint<E> where
E: Endian + Copy,`

### `impl Copy for ImageAuxSymbolTokenDef`

### `impl<E> Copy for RoutinesCommand_64<E> where
E: Endian + Copy,`

### `impl Copy for ImageArmRuntimeFunctionEntry`

### `impl<E> Copy for RoutinesCommand<E> where
E: Endian + Copy,`

### `impl<'data, Elf> Copy for SymbolTable<'data, Elf> where
Elf: FileHeader + Copy,
<Elf as FileHeader>::Sym: Copy,`

### `impl Copy for ImageDynamicRelocation32V2`

### `impl Copy for ImageLoadConfigDirectory64`

### `impl<E> Copy for NoteHeader32<E> where
E: Endian + Copy,`

### `impl Copy for ImageAuxSymbolCrc`

### `impl<E> Copy for RpathCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageHotPatchBase`

### `impl Copy for ImageLoadConfigCodeIntegrity`

### `impl Copy for ImageImportDescriptor`

### `impl<E> Copy for BuildVersionCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for U64Bytes<E> where
E: Endian + Copy,`

### `impl Copy for Ident`

### `impl<E> Copy for Rela64<E> where
E: Endian + Copy,`

### `impl<E> Copy for VersionMinCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for DataInCodeEntry<E> where
E: Endian + Copy,`

### `impl<E> Copy for U32<E> where
E: Endian + Copy,`

### `impl Copy for FatHeader`

### `impl Copy for ImageDynamicRelocation64V2`

### `impl<E> Copy for DylibTableOfContents<E> where
E: Endian + Copy,`

### `impl Copy for Guid`

### `impl<E> Copy for PreboundDylibCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageResourceDirectoryString`

### `impl<E> Copy for SectionHeader64<E> where
E: Endian + Copy,`

### `impl<E> Copy for U16Bytes<E> where
E: Endian + Copy,`

### `impl Copy for ImageLinenumber`

### `impl Copy for ImageArchiveMemberHeader`

### `impl<E> Copy for PrebindCksumCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for MachHeader32<E> where
E: Endian + Copy,`

### `impl<E> Copy for EncryptionInfoCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageDataDirectory`

### `impl Copy for SymbolKind`

### `impl<E> Copy for DylibCommand<E> where
E: Endian + Copy,`

### `impl<E> Copy for CompressionHeader64<E> where
E: Endian + Copy,`

### `impl<E> Copy for Rel64<E> where
E: Endian + Copy,`

### `impl Copy for ImageRomHeaders`

### `impl<E> Copy for DysymtabCommand<E> where
E: Endian + Copy,`

### `impl Copy for LittleEndian`

### `impl<E> Copy for Fvmlib<E> where
E: Endian + Copy,`

### `impl<E> Copy for Dyn64<E> where
E: Endian + Copy,`

### `impl<E> Copy for IdentCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageEnclaveConfig64`

### `impl<E> Copy for I16Bytes<E> where
E: Endian + Copy,`

### `impl Copy for ImageSymbolExBytes`

### `impl Copy for ImageSymbol`

### `impl Copy for ImagePrologueDynamicRelocationHeader`

### `impl Copy for SymbolSection`

### `impl Copy for ImageAuxSymbolWeak`

### `impl Copy for SymbolScope`

### `impl Copy for ImportObjectHeader`

### `impl<E> Copy for LinkeditDataCommand<E> where
E: Endian + Copy,`

### `impl Copy for ImageImportByName`

### `impl<'data> Copy for CompressedData<'data>`

### `impl Copy for ImageRelocation`

### `impl<E> Copy for MachHeader64<E> where
E: Endian + Copy,`

### `impl Copy for ImageHotPatchHashes`

### `impl Copy for AnonObjectHeader`

### `impl<E> Copy for Section32<E> where
E: Endian + Copy,`

### `impl Copy for CompressionStrategy`

### `impl Copy for TDEFLStatus`

### `impl Copy for TINFLStatus`

### `impl Copy for MZFlush`

### `impl Copy for StreamResult`

### `impl Copy for MZError`

### `impl Copy for DataFormat`

### `impl Copy for CompressionLevel`

### `impl Copy for TDEFLFlush`

### `impl Copy for MZStatus`

### `impl Copy for Adler32`[src]

Loading content...

## Implementors

### `impl Copy for std::cmp::Ordering`[src]

### `impl Copy for Infallible`[src]

### `impl Copy for ErrorKind`[src]

### `impl Copy for SeekFrom`[src]

### `impl Copy for IpAddr`[src]

### `impl Copy for Ipv6MulticastScope`[src]

### `impl Copy for Shutdown`[src]

### `impl Copy for SocketAddr`[src]

### `impl Copy for FpCategory`[src]

### `impl Copy for SearchStep`[src]

### `impl Copy for std::sync::atomic::Ordering`[src]

### `impl Copy for RecvTimeoutError`[src]

### `impl Copy for TryRecvError`[src]

### `impl Copy for bool`[src]

### `impl Copy for char`[src]

### `impl Copy for f32`[src]

### `impl Copy for f64`[src]

### `impl Copy for i8`[src]

### `impl Copy for i16`[src]

### `impl Copy for i32`[src]

### `impl Copy for i64`[src]

### `impl Copy for i128`[src]

### `impl Copy for isize`[src]

### `impl Copy for !`[src]

### `impl Copy for u8`[src]

### `impl Copy for u16`[src]

### `impl Copy for u32`[src]

### `impl Copy for u64`[src]

### `impl Copy for u128`[src]

### `impl Copy for usize`[src]

### `impl Copy for AllocErr`[src]

### `impl Copy for Global`[src]

### `impl Copy for Layout`[src]

### `impl Copy for System`[src]

### `impl Copy for TypeId`[src]

### `impl Copy for TryFromSliceError`[src]

### `impl Copy for CharTryFromError`[src]

### `impl Copy for std::fmt::Error`[src]

### `impl Copy for FileType`[src]

### `impl Copy for PhantomPinned`[src]

### `impl Copy for Ipv4Addr`[src]

### `impl Copy for Ipv6Addr`[src]

### `impl Copy for SocketAddrV4`[src]

### `impl Copy for SocketAddrV6`[src]

### `impl Copy for NonZeroI8`[src]

### `impl Copy for NonZeroI16`[src]

### `impl Copy for NonZeroI32`[src]

### `impl Copy for NonZeroI64`[src]

### `impl Copy for NonZeroI128`[src]

### `impl Copy for NonZeroIsize`[src]

### `impl Copy for NonZeroU8`[src]

### `impl Copy for NonZeroU16`[src]

### `impl Copy for NonZeroU32`[src]

### `impl Copy for NonZeroU64`[src]

### `impl Copy for NonZeroU128`[src]

### `impl Copy for NonZeroUsize`[src]

### `impl Copy for TryFromIntError`[src]

### `impl Copy for RangeFull`[src]

### `impl Copy for NoneError`[src]

### `impl Copy for ExitCode`[src]

### `impl Copy for ExitStatus`[src]

### `impl Copy for TraitObject`[src]

### `impl Copy for Utf8Error`[src]

### `impl Copy for RecvError`[src]

### `impl Copy for WaitTimeoutResult`[src]

### `impl Copy for RawWakerVTable`[src]

### `impl Copy for AccessError`[src]

### `impl Copy for ThreadId`[src]

### `impl Copy for Duration`[src]

### `impl Copy for Instant`[src]

### `impl Copy for SystemTime`[src]

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

Shared references can be copied, but mutable references cannot!

### `impl<'a> Copy for Component<'a>`[src]

### `impl<'a> Copy for Prefix<'a>`[src]

### `impl<'a> Copy for Arguments<'a>`[src]

### `impl<'a> Copy for IoSlice<'a>`[src]

### `impl<'a> Copy for std::panic::Location<'a>`[src]

### `impl<'a> Copy for Ancestors<'a>`[src]

### `impl<'a> Copy for PrefixComponent<'a>`[src]

### `impl<F> Copy for RepeatWith<F> where
F: Copy,` [src]

### `impl<Idx> Copy for RangeTo<Idx> where
Idx: Copy,` [src]

### `impl<Idx> Copy for RangeToInclusive<Idx> where
Idx: Copy,` [src]

### `impl<P> Copy for Pin<P> where
P: Copy,` [src]

### `impl<T> Copy for Bound<T> where
T: Copy,` [src]

### `impl<T> Copy for Option<T> where
T: Copy,` [src]

### `impl<T> Copy for Poll<T> where
T: Copy,` [src]

### `impl<T> Copy for *const T where
T: ?Sized,` [src]

### `impl<T> Copy for *mut T where
T: ?Sized,` [src]

### `impl<T> Copy for Reverse<T> where
T: Copy,` [src]

### `impl<T> Copy for PhantomData<T> where
T: ?Sized,` [src]

### `impl<T> Copy for Discriminant<T>`[src]

### `impl<T> Copy for ManuallyDrop<T> where
T: Copy + ?Sized,` [src]

### `impl<T> Copy for Wrapping<T> where
T: Copy,` [src]

### `impl<T> Copy for NonNull<T> where
T: ?Sized,` [src]

### `impl<T> Copy for MaybeUninit<T> where
T: Copy,` [src]

### `impl<T, E> Copy for Result<T, E> where
E: Copy,
T: Copy,` [src]

### `impl<T: Copy> Copy for TrySendError<T>`[src]

### `impl<T: Copy> Copy for SendError<T>`[src]

### `impl<Y, R> Copy for GeneratorState<Y, R> where
R: Copy,
Y: Copy,` [src]

Loading content...