Skip to main content

Default

Trait Default 

1.0.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 · 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", so this trait is not object safe.

Implementors§

1.0.0 (const: unstable) · Source§

impl Default for &str

1.10.0 · Source§

impl Default for &CStr

1.9.0 · Source§

impl Default for &OsStr

Source§

impl Default for &Bytes

1.28.0 (const: unstable) · Source§

impl Default for &mut str

1.0.0 (const: unstable) · Source§

impl Default for AsciiChar

Source§

impl Default for Abi

Source§

impl Default for Endian

Source§

impl Default for BigEndian

Source§

impl Default for LittleEndian

Source§

impl Default for Network

Source§

impl Default for CanisterInstallMode

Source§

impl Default for EcdsaCurve

Source§

impl Default for HttpMethod

Source§

impl Default for LogVisibility

Source§

impl Default for SchnorrAlgorithm

Source§

impl Default for WasmMemoryPersistence

Source§

impl Default for Cardinality

Source§

impl Default for RenameRule

Source§

impl Default for PathArguments

Source§

impl Default for MonthRepr

Creates a modifier that indicates the value uses the Numerical representation.

Source§

impl Default for Padding

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for SubsecondDigits

Creates a modifier that indicates the stringified value contains one or more digits.

Source§

impl Default for UnixTimestampPrecision

Creates a modifier that indicates the value represents the number of seconds since the Unix epoch.

Source§

impl Default for WeekNumberRepr

Creates a modifier that indicates that the value uses the Iso representation.

Source§

impl Default for WeekdayRepr

Creates a modifier that indicates the value uses the Long representation.

Source§

impl Default for YearRange

Creates a modifier that indicates the value uses the Extended range.

Source§

impl Default for YearRepr

Creates a modifier that indicates the value uses the Full representation.

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 ()

1.0.0 (const: unstable) · Source§

impl Default for usize

Source§

impl Default for IndexStoreRegistry

Source§

impl Default for DeleteSpec

Source§

impl Default for LoadSpec

Source§

impl Default for CoercionSpec

Source§

impl Default for EntityCounters

Source§

impl Default for EntitySummary

Source§

impl Default for EventOps

Source§

impl Default for EventPerf

Source§

impl Default for EventReport

Source§

impl Default for EventSelect

Source§

impl Default for EventState

Source§

impl Default for DataStoreSnapshot

Source§

impl Default for EntitySnapshot

Source§

impl Default for IndexStoreSnapshot

Source§

impl Default for StorageReport

Source§

impl Default for Generator

Source§

impl Default for Account

Source§

impl Default for icydb_core::types::Blob

Source§

impl Default for Date

Source§

impl Default for icydb_core::types::Decimal

Source§

impl Default for icydb_core::types::Duration

Source§

impl Default for E8s

Source§

impl Default for E18s

Source§

impl Default for Float32

Source§

impl Default for Float64

Source§

impl Default for Int128

Source§

impl Default for icydb_core::types::Int

Source§

impl Default for Nat128

Source§

impl Default for icydb_core::types::Nat

Source§

impl Default for Principal

Source§

impl Default for Subaccount

Source§

impl Default for Timestamp

Source§

impl Default for icydb_core::types::Ulid

Source§

impl Default for Unit

Source§

impl Default for Issue

Source§

impl Default for SanitizeVisitor

Source§

impl Default for VisitorIssues

Source§

impl Default for icydb_core::visitor::validate::ValidateVisitor

Source§

impl Default for Global

1.17.0 · Source§

impl Default for alloc::boxed::Box<str>

Available on non-no_global_oom_handling only.
1.17.0 · Source§

impl Default for alloc::boxed::Box<CStr>

1.17.0 · Source§

impl Default for alloc::boxed::Box<OsStr>

Source§

impl Default for alloc::boxed::Box<Bytes>

Available on crate features std or alloc only.
Source§

impl Default for ByteString

1.10.0 · Source§

impl Default for CString

1.80.0 · Source§

impl Default for Rc<str>

Available on non-no_global_oom_handling only.
1.80.0 · Source§

impl Default for Rc<CStr>

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

impl Default for String

1.80.0 · Source§

impl Default for Arc<str>

Available on non-no_global_oom_handling only.
1.80.0 · Source§

impl Default for Arc<CStr>

Available on non-no_global_oom_handling only.
1.0.0 · Source§

impl Default for Error

Source§

impl Default for FormattingOptions

1.0.0 · Source§

impl Default for SipHasher

1.33.0 · Source§

impl Default for PhantomPinned

1.0.0 (const: unstable) · Source§

impl Default for RangeFull

Source§

impl Default for Alignment

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

1.0.0 · Source§

impl Default for AtomicBool

Available on target_has_atomic_load_store=8 only.
1.34.0 · Source§

impl Default for AtomicI8

1.34.0 · Source§

impl Default for AtomicI16

1.34.0 · Source§

impl Default for AtomicI32

1.34.0 · Source§

impl Default for AtomicI64

1.0.0 · Source§

impl Default for AtomicIsize

1.34.0 · Source§

impl Default for AtomicU8

1.34.0 · Source§

impl Default for AtomicU16

1.34.0 · Source§

impl Default for AtomicU32

1.34.0 · Source§

impl Default for AtomicU64

1.0.0 · Source§

impl Default for AtomicUsize

1.3.0 · Source§

impl Default for core::time::Duration

1.45.0 · Source§

impl Default for proc_macro::TokenStream

1.28.0 · Source§

impl Default for System

1.9.0 · Source§

impl Default for OsString

1.75.0 · Source§

impl Default for FileTimes

1.13.0 (const: unstable) · Source§

impl Default for DefaultHasher

1.7.0 · Source§

impl Default for RandomState

1.0.0 · Source§

impl Default for std::io::util::Empty

1.0.0 · Source§

impl Default for Sink

1.17.0 · Source§

impl Default for PathBuf

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.

Source§

impl Default for DefaultRandomSource

Source§

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

1.10.0 · Source§

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

Source§

impl Default for anyhow::Chain<'_>

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

impl Default for ReadOptions

Source§

impl Default for NullString

Source§

impl Default for NullWideString

Source§

impl Default for Eager

Source§

impl Default for Lazy

Source§

impl Default for DecoderConfig

Source§

impl Default for DocComments

Source§

impl Default for IDLBuilder

Source§

impl Default for TypeSerialize

Source§

impl Default for ValueSerializer

Source§

impl Default for TypeContainer

Source§

impl Default for candid::types::number::Int

Source§

impl Default for candid::types::number::Nat

Source§

impl Default for Reserved

Source§

impl Default for TypeEnv

Source§

impl Default for canic_cdk::spec::standards::icrc::icrc21::FieldsDisplay

Source§

impl Default for Cycles

Source§

impl Default for DateTime<FixedOffset>

Source§

impl Default for DateTime<Utc>

Source§

impl Default for Parsed

Source§

impl Default for NaiveDate

The default value for a NaiveDate is 1st of January 1970.

§Example

use chrono::NaiveDate;

let default_date = NaiveDate::default();
assert_eq!(default_date, NaiveDate::from_ymd_opt(1970, 1, 1).unwrap());
Source§

impl Default for NaiveDateTime

The default value for a NaiveDateTime is 1st of January 1970 at 00:00:00.

Note that while this may look like the UNIX epoch, it is missing the time zone. The actual UNIX epoch cannot be expressed by this type, however it is available as DateTime::UNIX_EPOCH.

Source§

impl Default for NaiveTime

The default value for a NaiveTime is midnight, 00:00:00 exactly.

§Example

use chrono::NaiveTime;

let default_time = NaiveTime::default();
assert_eq!(default_time, NaiveTime::from_hms_opt(0, 0, 0).unwrap());
Source§

impl Default for TimeDelta

Source§

impl Default for WeekdaySet

Source§

impl Default for Converter

Source§

impl Default for Hasher

Source§

impl Default for Accumulator

Source§

impl Default for Flag

Source§

impl Default for Ignored

Source§

impl Default for PathList

Source§

impl Default for ShapeSet

Source§

impl Default for Specification

Available on crate feature alloc only.
Source§

impl Default for InvalidBufferSize

Source§

impl Default for InvalidOutputSize

Source§

impl Default for bf16

Source§

impl Default for f16

Source§

impl Default for SignatureMap

Source§

impl Default for TaskId

Source§

impl Default for GetBalanceRequest

Source§

impl Default for GetBlockHeadersRequest

Source§

impl Default for GetBlockHeadersResponse

Source§

impl Default for GetCurrentFeePercentilesRequest

Source§

impl Default for GetUtxosRequest

Source§

impl Default for GetUtxosResponse

Source§

impl Default for Outpoint

Source§

impl Default for SendTransactionRequest

Source§

impl Default for Utxo

Source§

impl Default for ic_cdk::management_canister::CreateCanisterArgs

Source§

impl Default for ic_cdk::management_canister::ProvisionalCreateCanisterWithCyclesArgs

Source§

impl Default for CanisterStableMemory

Source§

impl Default for StableIO

Source§

impl Default for StableReader

Source§

impl Default for StableWriter

Source§

impl Default for Bip341

Source§

impl Default for CanisterSettings

Source§

impl Default for ic_management_canister_types::CreateCanisterArgs

Source§

impl Default for DefiniteCanisterSettings

Source§

impl Default for EcdsaKeyId

Source§

impl Default for EcdsaPublicKeyArgs

Source§

impl Default for EcdsaPublicKeyResult

Source§

impl Default for EnvironmentVariable

Source§

impl Default for HttpHeader

Source§

impl Default for HttpRequestArgs

Source§

impl Default for HttpRequestResult

Source§

impl Default for ic_management_canister_types::ProvisionalCreateCanisterWithCyclesArgs

Source§

impl Default for SchnorrKeyId

Source§

impl Default for SchnorrPublicKeyArgs

Source§

impl Default for SchnorrPublicKeyResult

Source§

impl Default for SignWithEcdsaArgs

Source§

impl Default for SignWithEcdsaResult

Source§

impl Default for SignWithSchnorrArgs

Source§

impl Default for SignWithSchnorrResult

Source§

impl Default for Snapshot

Source§

impl Default for UpgradeFlags

Source§

impl Default for VetKDDeriveKeyResult

Source§

impl Default for VetKDPublicKeyResult

Source§

impl Default for G1Affine

Source§

impl Default for G1Projective

Source§

impl Default for G2Affine

Source§

impl Default for G2Projective

Source§

impl Default for ic_bls12_381::pairings::Gt

Source§

impl Default for MillerLoopResult

Source§

impl Default for Scalar

Source§

impl Default for Memo

Source§

impl Default for icrc_ledger_types::icrc21::responses::FieldsDisplay

Source§

impl Default for ErrorTree

Source§

impl Default for Schema

Source§

impl Default for icydb_schema::visit::ValidateVisitor

Source§

impl Default for Buffer

Source§

impl Default for BigInt

Source§

impl Default for BigUint

Source§

impl Default for FormatterOptions

Source§

impl Default for proc_macro2::TokenStream

TokenStream::default() returns an empty stream, i.e. this is equivalent with TokenStream::new().

Source§

impl Default for rust_decimal::decimal::Decimal

Source§

impl Default for ByteBuf

Source§

impl Default for IgnoredAny

Source§

impl Default for DefaultKey

Source§

impl Default for KeyData

Source§

impl Default for BoundLifetimes

Source§

impl Default for Generics

Source§

impl Default for Abstract

Source§

impl Default for And

Source§

impl Default for AndAnd

Source§

impl Default for AndEq

Source§

impl Default for As

Source§

impl Default for Async

Source§

impl Default for At

Source§

impl Default for Auto

Source§

impl Default for Await

Source§

impl Default for Become

Source§

impl Default for syn::token::Box

Source§

impl Default for Brace

Source§

impl Default for Bracket

Source§

impl Default for Break

Source§

impl Default for Caret

Source§

impl Default for CaretEq

Source§

impl Default for Colon

Source§

impl Default for Comma

Source§

impl Default for Const

Source§

impl Default for Continue

Source§

impl Default for Crate

Source§

impl Default for Default

Source§

impl Default for Do

Source§

impl Default for Dollar

Source§

impl Default for Dot

Source§

impl Default for DotDot

Source§

impl Default for DotDotDot

Source§

impl Default for DotDotEq

Source§

impl Default for Dyn

Source§

impl Default for Else

Source§

impl Default for Enum

Source§

impl Default for Eq

Source§

impl Default for EqEq

Source§

impl Default for Extern

Source§

impl Default for FatArrow

Source§

impl Default for Final

Source§

impl Default for Fn

Source§

impl Default for For

Source§

impl Default for Ge

Source§

impl Default for Group

Source§

impl Default for syn::token::Gt

Source§

impl Default for If

Source§

impl Default for Impl

Source§

impl Default for In

Source§

impl Default for LArrow

Source§

impl Default for Le

Source§

impl Default for Let

Source§

impl Default for Loop

Source§

impl Default for Lt

Source§

impl Default for Macro

Source§

impl Default for Match

Source§

impl Default for Minus

Source§

impl Default for MinusEq

Source§

impl Default for Mod

Source§

impl Default for Move

Source§

impl Default for Mut

Source§

impl Default for Ne

Source§

impl Default for Not

Source§

impl Default for Or

Source§

impl Default for OrEq

Source§

impl Default for OrOr

Source§

impl Default for syn::token::Override

Source§

impl Default for Paren

Source§

impl Default for PathSep

Source§

impl Default for Percent

Source§

impl Default for PercentEq

Source§

impl Default for Plus

Source§

impl Default for PlusEq

Source§

impl Default for Pound

Source§

impl Default for Priv

Source§

impl Default for Pub

Source§

impl Default for Question

Source§

impl Default for RArrow

Source§

impl Default for Raw

Source§

impl Default for Ref

Source§

impl Default for Return

Source§

impl Default for SelfType

Source§

impl Default for SelfValue

Source§

impl Default for Semi

Source§

impl Default for Shl

Source§

impl Default for ShlEq

Source§

impl Default for Shr

Source§

impl Default for ShrEq

Source§

impl Default for Slash

Source§

impl Default for SlashEq

Source§

impl Default for Star

Source§

impl Default for StarEq

Source§

impl Default for Static

Source§

impl Default for Struct

Source§

impl Default for Super

Source§

impl Default for Tilde

Source§

impl Default for Trait

Source§

impl Default for Try

Source§

impl Default for Type

Source§

impl Default for Typeof

Source§

impl Default for Underscore

Source§

impl Default for Union

Source§

impl Default for Unsafe

Source§

impl Default for Unsized

Source§

impl Default for Use

Source§

impl Default for Virtual

Source§

impl Default for Where

Source§

impl Default for While

Source§

impl Default for Yield

Source§

impl Default for time::duration::Duration

Source§

impl Default for Day

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for End

Creates a modifier used to represent the end of input.

Source§

impl Default for Hour

Creates a modifier that indicates the value is padded with zeroes and has the 24-hour representation.

Source§

impl Default for Minute

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for Month

Creates an instance of this type that indicates the value uses the Numerical representation, is padded with zeroes, and is case-sensitive when parsing.

Source§

impl Default for OffsetHour

Creates a modifier that indicates the value only uses a sign for negative values and is padded with zeroes.

Source§

impl Default for OffsetMinute

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for OffsetSecond

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for Ordinal

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for Period

Creates a modifier that indicates the value uses the upper-case representation and is case-sensitive when parsing.

Source§

impl Default for Second

Creates a modifier that indicates the value is padded with zeroes.

Source§

impl Default for Subsecond

Creates a modifier that indicates the stringified value contains one or more digits.

Source§

impl Default for UnixTimestamp

Creates a modifier that indicates the value represents the number of seconds since the Unix epoch. The sign is not mandatory.

Source§

impl Default for WeekNumber

Creates a modifier that indicates that the value is padded with zeroes and uses the Iso representation.

Source§

impl Default for Weekday

Creates a modifier that indicates the value uses the Long representation and is case-sensitive when parsing. If the representation is changed to a numerical one, the instance defaults to one-based indexing.

Source§

impl Default for Year

Creates a modifier that indicates the value uses the Full representation, is padded with zeroes, uses the Gregorian calendar as its base, and only includes the year’s sign if necessary.

Source§

impl Default for B0

Source§

impl Default for B1

Source§

impl Default for Z0

Source§

impl Default for Equal

Source§

impl Default for Greater

Source§

impl Default for Less

Source§

impl Default for UTerm

Source§

impl Default for ulid::Ulid

Source§

impl Default for Xxh3

Source§

impl Default for Xxh3Builder

Source§

impl Default for Xxh3Default

Source§

impl Default for Xxh3DefaultBuilder

Source§

impl Default for vec128_storage

Source§

impl Default for vec256_storage

Source§

impl Default for vec512_storage

Source§

impl<'a> Default for &'a ByteStr

Source§

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

Source§

impl<'a> Default for HashTree<'a>

Source§

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

Source§

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

Source§

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

Source§

impl<'a, D, A> Default for BuildDoc<'a, D, A>
where D: DocPtr<'a, A>,

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, T, A> Default for Doc<'a, T, A>
where T: DocPtr<'a, A>,

Source§

impl<A> Default for arrayvec::array_string::ArrayString<A>
where A: Array<Item = u8> + Copy,

Source§

impl<A> Default for arrayvec::ArrayVec<A>
where A: Array,

Source§

impl<A> Default for pretty::Arena<'_, A>

Source§

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

1.70.0 · Source§

impl<A, B> Default for core::iter::adapters::chain::Chain<A, B>
where A: Default, B: Default,

1.11.0 · Source§

impl<B> Default for Cow<'_, B>
where B: ToOwned + ?Sized, <B as ToOwned>::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,

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 core::ops::range::Range<Idx>
where Idx: Default,

Source§

impl<Idx> Default for core::range::Range<Idx>
where Idx: Default,

1.83.0 · Source§

impl<K> Default for std::collections::hash::set::IntoIter<K>

1.83.0 · Source§

impl<K> Default for std::collections::hash::set::Iter<'_, K>

Source§

impl<K, V> Default for ic_certification::nested_rb_tree::NestedTree<K, V>

Source§

impl<K, V> Default for ic_certification::nested_rb_tree::NestedTree<K, V>

1.0.0 · Source§

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

1.70.0 · Source§

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

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>

1.70.0 · Source§

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

1.82.0 · Source§

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

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::IntoIter<K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::IntoKeys<K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::IntoValues<K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::Iter<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::IterMut<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::Keys<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::Values<'_, K, V>

1.83.0 · Source§

impl<K, V> Default for std::collections::hash::map::ValuesMut<'_, K, V>

Source§

impl<K, V> Default for ic_certification::rb_tree::RbTree<K, V>
where K: Default, V: Default,

Source§

impl<K, V> Default for ic_certification::rb_tree::RbTree<K, V>
where K: Default, V: Default,

Source§

impl<K, V> Default for ic_certified_map::rbtree::RbTree<K, V>
where K: Default, V: Default,

Source§

impl<K, V> Default for SlotMap<K, V>
where K: Key,

Source§

impl<K, V> Default for DenseSlotMap<K, V>
where K: Key,

Source§

impl<K, V> Default for HopSlotMap<K, V>
where K: Key,

Source§

impl<K, V> Default for SecondaryMap<K, V>
where K: Key,

1.70.0 · Source§

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

1.70.0 · Source§

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

1.70.0 · Source§

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

1.0.0 (const: unstable) · Source§

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

Source§

impl<K, V, S> Default for SparseSecondaryMap<K, V, S>
where K: Key, S: BuildHasher + Default,

Source§

impl<O> Default for F32<O>

Source§

impl<O> Default for F64<O>

Source§

impl<O> Default for I16<O>

Source§

impl<O> Default for I32<O>

Source§

impl<O> Default for I64<O>

Source§

impl<O> Default for I128<O>

Source§

impl<O> Default for Isize<O>

Source§

impl<O> Default for U16<O>

Source§

impl<O> Default for U32<O>

Source§

impl<O> Default for U64<O>

Source§

impl<O> Default for U128<O>

Source§

impl<O> Default for Usize<O>

Source§

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

Source§

impl<R> Default for UnwrapErr<R>
where R: Default + TryRngCore,

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 Option<T>

Source§

impl<T> Default for darling_core::util::over_ride::Override<T>

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,

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 (T₁, T₂, …, Tₙ)
where T: Default,

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

1.0.0 · Source§

impl<T> Default for alloc::boxed::Box<[T]>

Available on non-no_global_oom_handling only.
1.0.0 · Source§

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

Available on non-no_global_oom_handling only.
1.0.0 · Source§

impl<T> Default for BinaryHeap<T>

1.70.0 · Source§

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

1.82.0 · Source§

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

1.0.0 · Source§

impl<T> Default for BTreeSet<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::btree::set::Range<'_, T>

1.70.0 · Source§

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

1.70.0 · Source§

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

1.70.0 · Source§

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

1.0.0 · Source§

impl<T> Default for LinkedList<T>

1.82.0 · Source§

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

1.82.0 · Source§

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

1.0.0 · Source§

impl<T> Default for VecDeque<T>

1.80.0 · Source§

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

Available on non-no_global_oom_handling only.
1.0.0 · Source§

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

Available on non-no_global_oom_handling only.
1.10.0 · Source§

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

1.80.0 · Source§

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

Available on non-no_global_oom_handling only.
1.0.0 · Source§

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

Available on non-no_global_oom_handling only.
1.10.0 · Source§

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

1.0.0 (const: unstable) · Source§

impl<T> Default for Vec<T>

1.80.0 · Source§

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

1.70.0 (const: unstable) · Source§

impl<T> Default for OnceCell<T>

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

Source§

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

1.10.0 (const: unstable) · Source§

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

1.19.0 (const: unstable) · Source§

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

1.2.0 (const: unstable) · Source§

impl<T> Default for core::iter::sources::empty::Empty<T>

1.0.0 (const: unstable) · Source§

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

Source§

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

Source§

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

Source§

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

1.20.0 · Source§

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

1.74.0 · Source§

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

1.0.0 · Source§

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

1.62.0 · Source§

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

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.91.0 · Source§

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

Available on non-no_global_oom_handling only.
Source§

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

1.70.0 · Source§

impl<T> Default for core::slice::iter::Iter<'_, T>

1.70.0 · Source§

impl<T> Default for core::slice::iter::IterMut<'_, T>

1.0.0 · Source§

impl<T> Default for AtomicPtr<T>

Available on target_has_atomic_load_store=ptr only.
Source§

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

1.0.0 · Source§

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

1.80.0 · Source§

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

Source§

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

Source§

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

1.70.0 (const: unstable) · Source§

impl<T> Default for OnceLock<T>

1.10.0 · Source§

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

1.10.0 · Source§

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

Source§

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

Source§

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

Source§

impl<T> Default for CoreWrapper<T>

Source§

impl<T> Default for XofReaderCoreWrapper<T>

Source§

impl<T> Default for typed_arena::Arena<T>

Source§

impl<T> Default for Unalign<T>
where T: 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 alloc::vec::into_iter::IntoIter<T, A>
where A: Allocator + Default,

Source§

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

Source§

impl<T, OutSize, O> Default for CtVariableCoreWrapper<T, OutSize, O>

Source§

impl<T, P> Default for Punctuated<T, P>

1.0.0 (const: unstable) · Source§

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

Source§

impl<T, const CAP: usize> Default for arrayvec::arrayvec::ArrayVec<T, CAP>

1.89.0 · Source§

impl<T, const N: usize> Default for core::array::iter::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: Default + 'static> Default for StoreRegistry<T>

Source§

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

Source§

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

Source§

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

Source§

impl<const CAP: usize> Default for arrayvec::array_string::ArrayString<CAP>

Source§

impl<const MIN: i8, const MAX: i8> Default for OptionRangedI8<MIN, MAX>

Source§

impl<const MIN: i16, const MAX: i16> Default for OptionRangedI16<MIN, MAX>

Source§

impl<const MIN: i32, const MAX: i32> Default for OptionRangedI32<MIN, MAX>

Source§

impl<const MIN: i64, const MAX: i64> Default for OptionRangedI64<MIN, MAX>

Source§

impl<const MIN: i128, const MAX: i128> Default for OptionRangedI128<MIN, MAX>

Source§

impl<const MIN: isize, const MAX: isize> Default for OptionRangedIsize<MIN, MAX>

Source§

impl<const MIN: u8, const MAX: u8> Default for OptionRangedU8<MIN, MAX>

Source§

impl<const MIN: u16, const MAX: u16> Default for OptionRangedU16<MIN, MAX>

Source§

impl<const MIN: u32, const MAX: u32> Default for OptionRangedU32<MIN, MAX>

Source§

impl<const MIN: u64, const MAX: u64> Default for OptionRangedU64<MIN, MAX>

Source§

impl<const MIN: u128, const MAX: u128> Default for OptionRangedU128<MIN, MAX>

Source§

impl<const MIN: usize, const MAX: usize> Default for OptionRangedUsize<MIN, MAX>

Source§

impl<const N: usize> Default for ic_stable_structures::storable::Blob<N>

Source§

impl<const N: usize> Default for ic_stable_structures::storable::Blob<N>

Source§

impl<const N: usize> Default for ic_stable_structures::storable::BoundedVecN<N>

Source§

impl<const N: usize> Default for ic_stable_structures::storable::BoundedVecN<N>

Source§

impl<const N: usize> Default for ic_stable_structures::storable::UnboundedVecN<N>

Source§

impl<const N: usize> Default for ic_stable_structures::storable::UnboundedVecN<N>

Source§

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

Source§

impl<const SIZE: usize> Default for WriteBuffer<SIZE>