Skip to main content

Default

Trait Default 

1.55.0 (const: unstable) · Source
pub trait Default: Sized {
    // Required method
    fn default() -> Self;
}
Expand description

A trait for giving a type a useful default value.

Sometimes, you want to fall back to some kind of default value, and don’t particularly care what it is. This comes up often with structs that define a set of options:

struct SomeOptions {
    foo: i32,
    bar: f32,
}

How can we define some default values? You can use Default:

#[derive(Default)]
struct SomeOptions {
    foo: i32,
    bar: f32,
}

fn main() {
    let options: SomeOptions = Default::default();
}

Now, you get all of the default values. Rust implements Default for various primitive types.

If you want to override a particular option, but still retain the other defaults:

fn main() {
    let options = SomeOptions { foo: 42, ..Default::default() };
}

§Derivable

This trait can be used with #[derive] if all of the type’s fields implement Default. When derived, it will use the default value for each field’s type.

§enums

When using #[derive(Default)] on an enum, you need to choose which unit variant will be default. You do this by placing the #[default] attribute on the variant.

#[derive(Default)]
enum Kind {
    #[default]
    A,
    B,
    C,
}

You cannot use the #[default] attribute on non-unit or non-exhaustive variants.

The #[default] attribute was stabilized in Rust 1.62.0.

§How can I implement Default?

Provide an implementation for the default() method that returns the value of your type that should be the default:

enum Kind {
    A,
    B,
    C,
}

impl Default for Kind {
    fn default() -> Self { Kind::A }
}

§Examples

#[derive(Default)]
struct SomeOptions {
    foo: i32,
    bar: f32,
}

Required Methods§

1.0.0 (const: unstable) · Source

fn default() -> Self

Returns the “default value” for a type.

Default values are often some kind of initial value, identity value, or anything else that may make sense as a default.

§Examples

Using built-in default values:

let i: i8 = Default::default();
let (x, y): (Option<String>, f64) = Default::default();
let (a, b, (c, d)): (i32, u32, (bool, bool)) = Default::default();

Making your own:

enum Kind {
    A,
    B,
    C,
}

impl Default for Kind {
    fn default() -> Self { Kind::A }
}

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

1.10.0 (const: unstable) · Source§

impl Default for &CStr

1.9.0 · Source§

impl Default for &OsStr

1.28.0 (const: unstable) · Source§

impl Default for &mut str

1.0.0 (const: unstable) · Source§

impl Default for &str

1.0.0 (const: unstable) · Source§

impl Default for ()

§

impl Default for Abbreviations

§

impl Default for AbbreviationsCache

Source§

impl Default for Abi

Source§

impl Default for AddressMapSection

Source§

impl Default for Alignment

Returns Alignment::MIN, which is valid for any type.

§

impl Default for AllocVec

1.80.0 · Source§

impl Default for Arc<CStr>

Available on non-no_global_oom_handling only.
1.80.0 · Source§

impl Default for Arc<str>

Available on non-no_global_oom_handling only.
1.0.0 (const: unstable) · Source§

impl Default for AsciiChar

Source§

impl Default for Atom

1.0.0 · Source§

impl Default for Atomic<bool>

Available on target_has_atomic_load_store=8 only.
1.34.0 · Source§

impl Default for Atomic<i8>

1.34.0 · Source§

impl Default for Atomic<i16>

1.34.0 · Source§

impl Default for Atomic<i32>

1.34.0 · Source§

impl Default for Atomic<i64>

1.0.0 · Source§

impl Default for Atomic<isize>

1.34.0 · Source§

impl Default for Atomic<u8>

1.34.0 · Source§

impl Default for Atomic<u16>

1.34.0 · Source§

impl Default for Atomic<u32>

1.34.0 · Source§

impl Default for Atomic<u64>

1.0.0 · Source§

impl Default for Atomic<usize>

§

impl Default for Augmentation

§

impl Default for AuxSymbolSection

§

impl Default for AuxSymbolWeak

Source§

impl Default for B0

Source§

impl Default for B1

§

impl Default for BaseAddresses

§

impl Default for BigEndian

§

impl Default for BigEndian

1.17.0 · Source§

impl Default for Box<CStr>

1.17.0 · Source§

impl Default for Box<OsStr>

1.17.0 · Source§

impl Default for Box<str>

Available on non-no_global_oom_handling only.
§

impl Default for BranchHints

Source§

impl Default for BuildMetadata

Source§

impl Default for ByteString

1.10.0 · Source§

impl Default for CString

Source§

impl Default for CanonicalAbiInfo

§

impl Default for CanonicalFunctionSection

Source§

impl Default for anyhow::Chain<'_>

Available on crate feature std or non-anyhow_no_core_error only.
§

impl Default for Class

§

impl Default for CodeSection

§

impl Default for ColorChoice

The default is Auto.

§

impl Default for ColorSpec

§

impl Default for Component

Source§

impl Default for wasmtime_environ::component::Component

§

impl Default for ComponentAliasSection

§

impl Default for ComponentBuilder

Source§

impl Default for ComponentDfg

§

impl Default for ComponentExportSection

§

impl Default for ComponentImportSection

§

impl Default for ComponentInstanceSection

§

impl Default for ComponentNameSection

§

impl Default for ComponentType

§

impl Default for ComponentTypeSection

Source§

impl Default for ComponentTypes

Source§

impl Default for std::sync::nonpoison::condvar::Condvar

1.10.0 · Source§

impl Default for std::sync::poison::condvar::Condvar

§

impl Default for Config

Source§

impl Default for ConfigTunables

§

impl Default for ControlStack

Source§

impl Default for CopyingTypeLayouts

§

impl Default for CoreDumpSection

§

impl Default for CoreDumpStackSection

§

impl Default for CoreTypeSection

§

impl Default for Crel

§

impl Default for CvQualifiers

§

impl Default for DataSection

§

impl Default for DefaultHashBuilder

§

impl Default for DefaultHashBuilder

1.13.0 (const: unstable) · Source§

impl Default for DefaultHasher

Source§

impl Default for DefaultRandomSource

§

impl Default for DefaultToHost

§

impl Default for DefaultToUnknown

§

impl Default for DemangleOptions

Source§

impl Default for DrcTypeLayouts

1.3.0 · Source§

impl Default for Duration

§

impl Default for Dwarf

§

impl Default for DwarfFileType

Source§

impl Default for Eager

§

impl Default for ElementSection

1.0.0 · Source§

impl Default for wasmtime_environ::__core::io::Empty

§

impl Default for EncoderState

§

impl Default for Endianness

Source§

impl Default for Equal

1.0.0 · Source§

impl Default for Error

1.75.0 · Source§

impl Default for ExitCode

The default value is ExitCode::SUCCESS

1.73.0 · Source§

impl Default for ExitStatus

The default value is one which indicates successful completion.

§

impl Default for ExportSection

§

impl Default for Expression

§

impl Default for FileHeader

§

impl Default for FileInfo

Source§

impl Default for FilePos

1.75.0 · Source§

impl Default for FileTimes

§

impl Default for FinderBuilder

§

impl Default for FixedState

§

impl Default for FixedState

§

impl Default for FnvHasher

Source§

impl Default for FormattingOptions

§

impl Default for FrameTable

Source§

impl Default for FrameTableBuilder

§

impl Default for FuncValidatorAllocations

§

impl Default for FunctionSection

Source§

impl Default for Global

§

impl Default for GlobalSection

Source§

impl Default for Greater

§

impl Default for Hasher

Source§

impl Default for IgnoredAny

§

impl Default for ImageSectionHeader

§

impl Default for ImportSection

§

impl Default for IndirectNameMap

§

impl Default for InstanceSection

§

impl Default for InstanceType

§

impl Default for InvalidBufferSize

§

impl Default for InvalidOutputSize

Source§

impl Default for Lazy

Source§

impl Default for Less

§

impl Default for LineEncoding

§

impl Default for LineStringTable

§

impl Default for LinkingSection

§

impl Default for LittleEndian

§

impl Default for LittleEndian

§

impl Default for LocationListTable

§

impl Default for MachOBuildVersion

Source§

impl Default for MemoryInitialization

§

impl Default for MemorySection

Source§

impl Default for MetadataBuilder<'_>

§

impl Default for Module

§

impl Default for ModuleType

Source§

impl Default for ModuleTypes

§

impl Default for Name

§

impl Default for NameAbbreviations

§

impl Default for NameMap

§

impl Default for NameSection

§

impl Default for NonMaxU8

§

impl Default for NonMaxU16

§

impl Default for NonMaxU32

§

impl Default for NonMaxU64

§

impl Default for NonMaxUsize

Source§

impl Default for NullTypeLayouts

Source§

impl Default for OperatorCost

Source§

impl Default for OperatorCostStrategy

§

impl Default for OperatorsReaderAllocations

1.9.0 · Source§

impl Default for OsString

§

impl Default for ParseOptions

§

impl Default for Parser

1.17.0 · Source§

impl Default for PathBuf

§

impl Default for Permissions

1.33.0 · Source§

impl Default for PhantomPinned

§

impl Default for Pointer

§

impl Default for PrefilterConfig

Source§

impl Default for Prerelease

§

impl Default for ProducersField

§

impl Default for ProducersSection

1.7.0 · Source§

impl Default for wasmtime_environ::collections::oom_abort::hash_map::RandomState

§

impl Default for RandomState

§

impl Default for RandomState

1.0.0 (const: unstable) · Source§

impl Default for RangeFull

§

impl Default for RangeListTable

1.80.0 · Source§

impl Default for Rc<CStr>

Available on non-no_global_oom_handling only.
1.80.0 · Source§

impl Default for Rc<str>

Available on non-no_global_oom_handling only.
Source§

impl Default for RecordBuilder<'_>

§

impl Default for Relocation

§

impl Default for Relocation

§

impl Default for RelocationMap

§

impl Default for RelocationSections

§

impl Default for Remapping

Source§

impl Default for ResourcesBuilder

§

impl Default for RunTimeEndian

§

impl Default for SectionBaseAddresses

§

impl Default for SectionHeader

§

impl Default for SectionIndex

§

impl Default for SectionRange

§

impl Default for SeedableRandomState

§

impl Default for SeedableRandomState

§

impl Default for SegmentFlags

1.0.0 · Source§

impl Default for Sink

1.0.0 · Source§

impl Default for SipHasher

§

impl Default for Size

Source§

impl Default for StackMapSection

1.0.0 (const: unstable) · Source§

impl Default for String

Source§

impl Default for StringPool

§

impl Default for StringTable

§

impl Default for Symbol

§

impl Default for SymbolFlags

§

impl Default for SymbolIndex

§

impl Default for SymbolMapBuilder

§

impl Default for SymbolTable

1.28.0 · Source§

impl Default for System

Source§

impl Default for TableInitialization

§

impl Default for TableSection

§

impl Default for TagSection

Source§

impl Default for TrapEncodingBuilder

§

impl Default for TryString

Source§

impl Default for TypeComponent

Source§

impl Default for TypeComponentInstance

Source§

impl Default for TypeModule

§

impl Default for TypeSection

Source§

impl Default for UTerm

§

impl Default for UnitTable

Source§

impl Default for VMSharedTypeIndex

§

impl Default for Validator

§

impl Default for ValidatorId

§

impl Default for VersionIndex

Source§

impl Default for VersionReq

The default VersionReq is the same as VersionReq::STAR.

Source§

impl Default for WasmChecksum

§

impl Default for WasmFeatures

Available on crate feature features only.
Source§

impl Default for WasmFileInfo

Source§

impl Default for WasmRecGroup

Source§

impl Default for Z0

1.0.0 (const: unstable) · Source§

impl Default for bool

1.0.0 (const: unstable) · Source§

impl Default for char

1.0.0 (const: unstable) · Source§

impl Default for f16

1.0.0 (const: unstable) · Source§

impl Default for f32

1.0.0 (const: unstable) · Source§

impl Default for f64

1.0.0 (const: unstable) · Source§

impl Default for f128

1.0.0 (const: unstable) · Source§

impl Default for i8

1.0.0 (const: unstable) · Source§

impl Default for i16

1.0.0 (const: unstable) · Source§

impl Default for i32

1.0.0 (const: unstable) · Source§

impl Default for i64

1.0.0 (const: unstable) · Source§

impl Default for i128

1.0.0 (const: unstable) · Source§

impl Default for isize

1.0.0 (const: unstable) · Source§

impl Default for u8

1.0.0 (const: unstable) · Source§

impl Default for u16

1.0.0 (const: unstable) · Source§

impl Default for u32

1.0.0 (const: unstable) · Source§

impl Default for u64

1.0.0 (const: unstable) · Source§

impl Default for u128

1.0.0 (const: unstable) · Source§

impl Default for usize

1.70.0 · Source§

impl<'a, K, V> Default for alloc::collections::btree::map::Iter<'a, K, V>
where K: 'a, V: 'a,

1.70.0 · Source§

impl<'a, K, V> Default for alloc::collections::btree::map::IterMut<'a, K, V>
where K: 'a, V: 'a,

Source§

impl<'a> Default for &'a ByteStr

Source§

impl<'a> Default for &'a mut ByteStr

Source§

impl<'a> Default for AbstractInstantiations<'a>

Source§

impl<'a> Default for DebugInfoData<'a>

Source§

impl<'a> Default for wasmtime_environ::NameSection<'a>

Source§

impl<'a> Default for PhantomContravariantLifetime<'a>

Source§

impl<'a> Default for PhantomCovariantLifetime<'a>

Source§

impl<'a> Default for PhantomInvariantLifetime<'a>

§

impl<'data, E> Default for LoadCommandIterator<'data, E>
where E: Default + Endian,

§

impl<'data, Elf, R> Default for DynamicTable<'data, Elf, R>
where Elf: FileHeader, R: ReadRef<'data>,

§

impl<'data, Elf, R> Default for SectionTable<'data, Elf, R>
where Elf: FileHeader, R: ReadRef<'data>,

§

impl<'data, Elf, R> Default for SymbolTable<'data, Elf, R>
where Elf: FileHeader, R: ReadRef<'data>,

§

impl<'data, Elf> Default for VersionTable<'data, Elf>
where Elf: FileHeader,

§

impl<'data, Mach, R> Default for SymbolTable<'data, Mach, R>
where Mach: MachHeader, R: ReadRef<'data>,

§

impl<'data, R, Coff> Default for SymbolTable<'data, R, Coff>
where R: ReadRef<'data>, Coff: CoffHeader,

§

impl<'data, R> Default for StringTable<'data, R>
where R: ReadRef<'data>,

§

impl<'data, Xcoff, R> Default for SymbolTable<'data, Xcoff, R>
where Xcoff: FileHeader, R: ReadRef<'data>,

§

impl<'data, Xcoff> Default for SectionTable<'data, Xcoff>
where Xcoff: FileHeader,

§

impl<'data> Default for Bytes<'data>

§

impl<'data> Default for FunctionStartsIterator<'data>

§

impl<'data> Default for ObjectMap<'data>

§

impl<'data> Default for ObjectMapEntry<'data>

§

impl<'data> Default for RelocationBlockIterator<'data>

§

impl<'data> Default for SectionTable<'data>

§

impl<'data> Default for Version<'data>

§

impl<'input, Endian> Default for EndianSlice<'input, Endian>
where Endian: Default + Endianity,

1.70.0 · Source§

impl<A, B> Default for wasmtime_environ::__core::iter::Chain<A, B>
where A: Default, B: Default,

1.97.0 · Source§

impl<A> Default for RepeatN<A>

Creates an empty iterator, like repeat_n(value, 0) but without needing any such value at hand.

§

impl<A> Default for SmallVec<A>
where A: Array,

1.11.0 · Source§

impl<B> Default for Cow<'_, B>
where B: ToOwned + ?Sized, <B as ToOwned>::Owned: Default,

§

impl<B> Default for TryCow<'_, B>
where B: TryToOwned + ?Sized, <B as TryToOwned>::Owned: Default,

Source§

impl<BlockSize, Kind> Default for BlockBuffer<BlockSize, Kind>
where BlockSize: ArrayLength<u8> + IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>, <BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero, Kind: BufferKind,

§

impl<E> Default for CompressionHeader32<E>
where E: Default + Endian,

§

impl<E> Default for CompressionHeader64<E>
where E: Default + Endian,

§

impl<E> Default for I16<E>
where E: Default + Endian,

§

impl<E> Default for I32<E>
where E: Default + Endian,

§

impl<E> Default for I64<E>
where E: Default + Endian,

§

impl<E> Default for Sym32<E>
where E: Default + Endian,

§

impl<E> Default for Sym64<E>
where E: Default + Endian,

§

impl<E> Default for U16<E>
where E: Default + Endian,

§

impl<E> Default for U32<E>
where E: Default + Endian,

§

impl<E> Default for U64<E>
where E: Default + Endian,

1.7.0 (const: unstable) · Source§

impl<H> Default for BuildHasherDefault<H>

1.70.0 · Source§

impl<I> Default for Cloned<I>
where I: Default,

1.70.0 · Source§

impl<I> Default for Copied<I>
where I: Default,

1.70.0 · Source§

impl<I> Default for Enumerate<I>
where I: Default,

1.70.0 · Source§

impl<I> Default for Flatten<I>
where I: Default + Iterator, <I as Iterator>::Item: IntoIterator,

1.70.0 · Source§

impl<I> Default for Fuse<I>
where I: Default,

1.70.0 · Source§

impl<I> Default for Rev<I>
where I: Default,

1.0.0 (const: unstable) · Source§

impl<Idx> Default for wasmtime_environ::__core::ops::Range<Idx>
where Idx: Default,

1.96.0 (const: unstable) · Source§

impl<Idx> Default for wasmtime_environ::__core::range::Range<Idx>
where Idx: Default,

§

impl<K, A> Default for IntoIter<K, A>
where A: Allocator,

§

impl<K, A> Default for IntoIter<K, A>
where A: Allocator,

1.70.0 · Source§

impl<K, V, A> Default for alloc::collections::btree::map::IntoIter<K, V, A>
where A: Allocator + Default + Clone,

§

impl<K, V, A> Default for IntoIter<K, V, A>
where A: Allocator,

§

impl<K, V, A> Default for IntoIter<K, V, A>
where A: Allocator,

1.70.0 · Source§

impl<K, V, A> Default for alloc::collections::btree::map::IntoKeys<K, V, A>
where A: Allocator + Default + Clone,

§

impl<K, V, A> Default for IntoKeys<K, V, A>
where A: Allocator,

§

impl<K, V, A> Default for IntoKeys<K, V, A>
where A: Allocator,

1.70.0 · Source§

impl<K, V, A> Default for alloc::collections::btree::map::IntoValues<K, V, A>
where A: Allocator + Default + Clone,

§

impl<K, V, A> Default for IntoValues<K, V, A>
where A: Allocator,

§

impl<K, V, A> Default for IntoValues<K, V, A>
where A: Allocator,

§

impl<K, V, S, A> Default for HashMap<K, V, S, A>
where S: Default, A: Default + Allocator,

§

impl<K, V, S, A> Default for HashMap<K, V, S, A>
where S: Default, A: Default + Allocator,

1.0.0 (const: unstable) · Source§

impl<K, V, S> Default for wasmtime_environ::collections::oom_abort::HashMap<K, V, S>
where S: Default,

§

impl<K, V, S> Default for IndexMap<K, V, S>
where S: Default,

Source§

impl<K, V, S> Default for TryHashMap<K, V, S>
where S: Default,

Source§

impl<K, V, S> Default for TryIndexMap<K, V, S>
where S: Default,

§

impl<K, V> Default for &Slice<K, V>

§

impl<K, V> Default for &mut Slice<K, V>

1.0.0 · Source§

impl<K, V> Default for BTreeMap<K, V>

§

impl<K, V> Default for Box<Slice<K, V>>

§

impl<K, V> Default for wasmtime_environ::prelude::IndexMap<K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::IntoIter<K, V>

§

impl<K, V> Default for IntoIter<K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::IntoKeys<K, V>

§

impl<K, V> Default for IntoKeys<K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::IntoValues<K, V>

§

impl<K, V> Default for IntoValues<K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::Iter<'_, K, V>

§

impl<K, V> Default for Iter<'_, K, V>

§

impl<K, V> Default for Iter<'_, K, V>

§

impl<K, V> Default for Iter<'_, K, V>

§

impl<K, V> Default for IterMut2<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::IterMut<'_, K, V>

§

impl<K, V> Default for IterMut<'_, K, V>

§

impl<K, V> Default for IterMut<'_, K, V>

§

impl<K, V> Default for IterMut<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::Keys<'_, K, V>

1.70.0 · Source§

impl<K, V> Default for alloc::collections::btree::map::Keys<'_, K, V>

§

impl<K, V> Default for Keys<'_, K, V>

§

impl<K, V> Default for Keys<'_, K, V>

§

impl<K, V> Default for Keys<'_, K, V>

§

impl<K, V> Default for Map<K, V>

§

impl<K, V> Default for Map<K, V>
where K: Copy, V: Copy,

Source§

impl<K, V> Default for wasmtime_environ::component::NameMap<K, V>
where K: TryClone + Hash + Eq + Ord,

§

impl<K, V> Default for PrimaryMap<K, V>
where K: EntityRef,

1.70.0 · Source§

impl<K, V> Default for alloc::collections::btree::map::Range<'_, K, V>

1.82.0 · Source§

impl<K, V> Default for RangeMut<'_, K, V>

§

impl<K, V> Default for SecondaryMap<K, V>
where K: EntityRef, V: Clone + Default,

§

impl<K, V> Default for SparseMap<K, V>
where K: EntityRef, V: SparseMapValue<K>,

Source§

impl<K, V> Default for TryBTreeMap<K, V>
where K: Copy,

Source§

impl<K, V> Default for TryPrimaryMap<K, V>
where K: EntityRef,

Source§

impl<K, V> Default for TrySecondaryMap<K, V>
where K: EntityRef, V: Clone + Default,

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::Values<'_, K, V>

1.70.0 · Source§

impl<K, V> Default for alloc::collections::btree::map::Values<'_, K, V>

§

impl<K, V> Default for Values<'_, K, V>

§

impl<K, V> Default for Values<'_, K, V>

§

impl<K, V> Default for Values<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for wasmtime_environ::collections::oom_abort::hash_map::ValuesMut<'_, K, V>

1.82.0 · Source§

impl<K, V> Default for alloc::collections::btree::map::ValuesMut<'_, K, V>

§

impl<K, V> Default for ValuesMut<'_, K, V>

§

impl<K, V> Default for ValuesMut<'_, K, V>

§

impl<K, V> Default for ValuesMut<'_, K, V>

Source§

impl<K: EntityRef, V> Default for Intern<K, V>

§

impl<K> Default for EntitySet<K>
where K: EntityRef,

1.83.0 · Source§

impl<K> Default for wasmtime_environ::collections::oom_abort::hash_set::IntoIter<K>

1.83.0 · Source§

impl<K> Default for wasmtime_environ::collections::oom_abort::hash_set::Iter<'_, K>

§

impl<K> Default for Iter<'_, K>

§

impl<K> Default for Iter<'_, K>

§

impl<K> Default for Set<K>
where K: Copy,

Source§

impl<K> Default for TryEntitySet<K>
where K: EntityRef + Default,

Source§

impl<Node> Default for Dfs<Node>

Source§

impl<P> Default for MaybeDangling<P>
where P: Default + ?Sized,

§

impl<R, Offset> Default for DebuggingInformationEntry<R, Offset>
where R: Reader<Offset = Offset>, Offset: ReaderOffset,

§

impl<R> Default for DebugAbbrev<R>
where R: Default,

§

impl<R> Default for DebugAddr<R>
where R: Default,

§

impl<R> Default for DebugAranges<R>
where R: Default,

§

impl<R> Default for DebugCuIndex<R>
where R: Default,

§

impl<R> Default for DebugInfo<R>
where R: Default,

§

impl<R> Default for DebugLine<R>
where R: Default,

§

impl<R> Default for DebugLineStr<R>
where R: Default,

§

impl<R> Default for DebugLoc<R>
where R: Default,

§

impl<R> Default for DebugLocLists<R>
where R: Default,

§

impl<R> Default for DebugMacinfo<R>
where R: Default,

§

impl<R> Default for DebugMacro<R>
where R: Default,

§

impl<R> Default for DebugNames<R>
where R: Default,

§

impl<R> Default for DebugRanges<R>
where R: Default,

§

impl<R> Default for DebugRngLists<R>
where R: Default,

§

impl<R> Default for DebugStr<R>
where R: Default,

§

impl<R> Default for DebugStrOffsets<R>
where R: Default,

§

impl<R> Default for DebugTuIndex<R>
where R: Default,

§

impl<R> Default for DebugTypes<R>
where R: Default,

§

impl<R> Default for Dwarf<R>
where R: Default,

§

impl<R> Default for LocationLists<R>
where R: Default,

§

impl<R> Default for RangeIter<R>
where R: Reader,

§

impl<R> Default for RangeLists<R>
where R: Default,

§

impl<T, A> Default for HashTable<T, A>
where A: Allocator + Default,

§

impl<T, A> Default for HashTable<T, A>
where A: Allocator + Default,

1.70.0 · Source§

impl<T, A> Default for alloc::collections::btree::set::IntoIter<T, A>
where A: Allocator + Default + Clone,

1.70.0 · Source§

impl<T, A> Default for wasmtime_environ::prelude::vec::IntoIter<T, A>
where A: Allocator + Default,

§

impl<T, A> Default for IntoIter<T, A>
where A: Allocator,

§

impl<T, A> Default for IntoIter<T, A>
where A: Allocator,

§

impl<T, N> Default for GenericArray<T, N>
where T: Default, N: ArrayLength<T>,

§

impl<T, OutSize, O> Default for CtVariableCoreWrapper<T, OutSize, O>
where T: VariableOutputCore, OutSize: ArrayLength<u8> + IsLessOrEqual<<T as OutputSizeUser>::OutputSize>, <OutSize as IsLessOrEqual<<T as OutputSizeUser>::OutputSize>>::Output: NonZero, <T as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>, <<T as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

§

impl<T, S, A> Default for HashSet<T, S, A>
where S: Default, A: Default + Allocator,

§

impl<T, S, A> Default for HashSet<T, S, A>
where S: Default, A: Default + Allocator,

1.0.0 (const: unstable) · Source§

impl<T, S> Default for wasmtime_environ::collections::oom_abort::HashSet<T, S>
where S: Default,

§

impl<T, S> Default for IndexSet<T, S>
where S: Default,

Source§

impl<T, S> Default for TryHashSet<T, S>
where S: Default,

§

impl<T, S> Default for UnwindContext<T, S>
where T: ReaderOffset, S: UnwindContextStorage<T>,

§

impl<T, S> Default for UnwindTableRow<T, S>
where T: ReaderOffset, S: UnwindContextStorage<T>,

1.89.0 · Source§

impl<T, const N: usize> Default for wasmtime_environ::__core::array::IntoIter<T, N>

Source§

impl<T, const N: usize> Default for Mask<T, N>
where T: MaskElement,

Source§

impl<T, const N: usize> Default for Simd<T, N>
where T: SimdElement + Default,

Source§

impl<T, const VARIANT: u32, const FIELD: u32> Default for FieldRepresentingType<T, VARIANT, FIELD>
where T: ?Sized,

§

impl<T> Default for &Slice<T>

1.0.0 (const: unstable) · Source§

impl<T> Default for &[T]

1.5.0 (const: unstable) · Source§

impl<T> Default for &mut [T]

1.0.0 (const: unstable) · Source§

impl<T> Default for (T₁, T₂, …, Tₙ)
where T: Default,

This trait is implemented for tuples up to twelve items long.

1.88.0 · Source§

impl<T> Default for *const T
where T: Thin + ?Sized,

1.88.0 · Source§

impl<T> Default for *mut T
where T: Thin + ?Sized,

1.0.0 · Source§

impl<T> Default for Arc<T>
where T: Default,

Available on non-no_global_oom_handling only.
1.80.0 · Source§

impl<T> Default for Arc<[T]>

Available on non-no_global_oom_handling only.
1.62.0 · Source§

impl<T> Default for AssertUnwindSafe<T>
where T: Default,

1.0.0 · Source§

impl<T> Default for Atomic<*mut T>

Available on target_has_atomic_load_store=ptr only.
1.0.0 · Source§

impl<T> Default for BTreeSet<T>

1.0.0 · Source§

impl<T> Default for BinaryHeap<T>

§

impl<T> Default for Box<Slice<T>>

1.0.0 · Source§

impl<T> Default for Box<T>
where T: Default,

Available on non-no_global_oom_handling only.
1.0.0 · Source§

impl<T> Default for Box<[T]>

Available on non-no_global_oom_handling only.
1.0.0 (const: unstable) · Source§

impl<T> Default for Cell<T>
where T: Default,

§

impl<T> Default for CfaRule<T>
where T: ReaderOffset,

§

impl<T> Default for CompoundBitSet<T>
where T: Default,

§

impl<T> Default for CoreWrapper<T>
where T: Default + BufferKindUser, <T as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>> + Default, <<T as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero, <T as BufferKindUser>::BufferKind: Default,

1.0.0 · Source§

impl<T> Default for Cursor<T>
where T: Default,

§

impl<T> Default for DwarfPackageSections<T>
where T: Default,

§

impl<T> Default for DwarfSections<T>
where T: Default,

1.2.0 (const: unstable) · Source§

impl<T> Default for wasmtime_environ::__core::iter::Empty<T>

§

impl<T> Default for EntityList<T>

Create an empty list.

§

impl<T> Default for wasmtime_environ::prelude::IndexSet<T>

1.70.0 · Source§

impl<T> Default for alloc::collections::binary_heap::IntoIter<T>

1.70.0 · Source§

impl<T> Default for alloc::collections::linked_list::IntoIter<T>

§

impl<T> Default for IntoIter<T>

1.70.0 · Source§

impl<T> Default for wasmtime_environ::__core::slice::Iter<'_, T>

1.82.0 · Source§

impl<T> Default for alloc::collections::binary_heap::Iter<'_, T>

1.70.0 · Source§

impl<T> Default for alloc::collections::btree::set::Iter<'_, T>

1.70.0 · Source§

impl<T> Default for alloc::collections::linked_list::Iter<'_, T>

1.82.0 · Source§

impl<T> Default for alloc::collections::vec_deque::iter::Iter<'_, T>

§

impl<T> Default for Iter<'_, T>

§

impl<T> Default for Iter<'_, T>

§

impl<T> Default for Iter<'_, T>

§

impl<T> Default for IterBuckets<'_, T>

§

impl<T> Default for IterBuckets<'_, T>

§

impl<T> Default for IterHash<'_, T>

§

impl<T> Default for IterHash<'_, T>

§

impl<T> Default for IterHashBuckets<'_, T>

§

impl<T> Default for IterHashBuckets<'_, T>

§

impl<T> Default for IterHashMut<'_, T>

§

impl<T> Default for IterHashMut<'_, T>

1.70.0 · Source§

impl<T> Default for wasmtime_environ::__core::slice::IterMut<'_, T>

1.70.0 · Source§

impl<T> Default for alloc::collections::linked_list::IterMut<'_, T>

1.82.0 · Source§

impl<T> Default for alloc::collections::vec_deque::iter_mut::IterMut<'_, T>

§

impl<T> Default for IterMut<'_, T>

§

impl<T> Default for IterMut<'_, T>

1.80.0 (const: unstable) · Source§

impl<T> Default for LazyCell<T>
where T: Default,

1.80.0 (const: unstable) · Source§

impl<T> Default for LazyLock<T>
where T: Default,

1.0.0 · Source§

impl<T> Default for LinkedList<T>

§

impl<T> Default for ListPool<T>

1.20.0 · Source§

impl<T> Default for ManuallyDrop<T>
where T: Default + ?Sized,

Source§

impl<T> Default for std::sync::nonpoison::mutex::Mutex<T>
where T: Default,

1.10.0 · Source§

impl<T> Default for std::sync::poison::mutex::Mutex<T>
where T: Default,

1.70.0 (const: unstable) · Source§

impl<T> Default for OnceCell<T>

1.70.0 (const: unstable) · Source§

impl<T> Default for OnceLock<T>

1.0.0 (const: unstable) · Source§

impl<T> Default for Option<T>

§

impl<T> Default for PackedOption<T>
where T: ReservedValue,

Source§

impl<T> Default for PhantomContravariant<T>
where T: ?Sized,

Source§

impl<T> Default for PhantomCovariant<T>
where T: ?Sized,

1.0.0 (const: unstable) · Source§

impl<T> Default for PhantomData<T>
where T: ?Sized,

Source§

impl<T> Default for PhantomInvariant<T>
where T: ?Sized,

1.91.0 · Source§

impl<T> Default for Pin<Arc<T>>
where Arc<T>: Default, T: ?Sized,

Available on non-no_global_oom_handling only.
1.91.0 · Source§

impl<T> Default for Pin<Box<T>>
where Box<T>: Default, T: ?Sized,

Available on non-no_global_oom_handling only.
1.91.0 · Source§

impl<T> Default for Pin<Rc<T>>
where Rc<T>: Default, T: ?Sized,

Available on non-no_global_oom_handling only.
1.70.0 · Source§

impl<T> Default for alloc::collections::btree::set::Range<'_, T>

1.0.0 · Source§

impl<T> Default for Rc<T>
where T: Default,

Available on non-no_global_oom_handling only.
1.80.0 · Source§

impl<T> Default for Rc<[T]>

Available on non-no_global_oom_handling only.
Source§

impl<T> Default for ReentrantLock<T>
where T: Default,

1.0.0 (const: unstable) · Source§

impl<T> Default for RefCell<T>
where T: Default,

1.19.0 (const: unstable) · Source§

impl<T> Default for Reverse<T>
where T: Default,

Source§

impl<T> Default for std::sync::nonpoison::rwlock::RwLock<T>
where T: Default,

1.10.0 · Source§

impl<T> Default for std::sync::poison::rwlock::RwLock<T>
where T: Default,

1.74.0 · Source§

impl<T> Default for Saturating<T>
where T: Default,

§

impl<T> Default for ScalarBitSet<T>
where T: ScalarBitSetStorage,

§

impl<T> Default for Set<T>

§

impl<T> Default for Slab<T>

§

impl<T> Default for SymbolMap<T>
where T: Default + SymbolMapEntry,

Source§

impl<T> Default for SyncUnsafeCell<T>
where T: Default,

Source§

impl<T> Default for SyncView<T>
where T: Default,

§

impl<T> Default for TryVec<T>

1.10.0 (const: unstable) · Source§

impl<T> Default for UnsafeCell<T>
where T: Default,

§

impl<T> Default for UnsafeIter<'_, T>

Source§

impl<T> Default for UnsafePinned<T>
where T: Default,

1.0.0 (const: unstable) · Source§

impl<T> Default for Vec<T>

1.0.0 · Source§

impl<T> Default for VecDeque<T>

1.10.0 · Source§

impl<T> Default for alloc::rc::Weak<T>

1.10.0 · Source§

impl<T> Default for alloc::sync::Weak<T>

1.0.0 · Source§

impl<T> Default for Wrapping<T>
where T: Default,

§

impl<T> Default for XofReaderCoreWrapper<T>
where T: Default + XofReaderCore, <T as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>> + Default, <<T as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

1.4.0 · Source§

impl<T> Default for [T; 0]

1.4.0 · Source§

impl<T> Default for [T; 1]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 2]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 3]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 4]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 5]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 6]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 7]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 8]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 9]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 10]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 11]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 12]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 13]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 14]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 15]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 16]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 17]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 18]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 19]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 20]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 21]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 22]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 23]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 24]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 25]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 26]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 27]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 28]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 29]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 30]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 31]
where T: Default,

1.4.0 · Source§

impl<T> Default for [T; 32]
where T: Default,

Source§

impl<U, B> Default for UInt<U, B>
where U: Default, B: Default,

Source§

impl<U> Default for NInt<U>
where U: Default + Unsigned + NonZero,

Source§

impl<U> Default for PInt<U>
where U: Default + Unsigned + NonZero,

§

impl<W> Default for DebugAbbrev<W>
where W: Default + Writer,

§

impl<W> Default for DebugFrame<W>
where W: Default + Writer,

§

impl<W> Default for DebugInfo<W>
where W: Default + Writer,

§

impl<W> Default for DebugLine<W>
where W: Default + Writer,

§

impl<W> Default for DebugLineStr<W>
where W: Default + Writer,

§

impl<W> Default for DebugLoc<W>
where W: Default + Writer,

§

impl<W> Default for DebugLocLists<W>
where W: Default + Writer,

§

impl<W> Default for DebugRanges<W>
where W: Default + Writer,

§

impl<W> Default for DebugRngLists<W>
where W: Default + Writer,

§

impl<W> Default for DebugStr<W>
where W: Default + Writer,

§

impl<W> Default for EhFrame<W>
where W: Default + Writer,

§

impl<W> Default for Sections<W>
where W: Default + Writer,

§

impl<const N: usize> Default for CobsAccumulator<N>