Trait Default

1.6.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 primitives 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

1.28.0 (const: unstable) · Source§

impl Default for &mut str

Source§

impl Default for EulerRot

1.0.0 (const: unstable) · Source§

impl Default for AsciiChar

Source§

impl Default for BigEndian

Source§

impl Default for LittleEndian

Source§

impl Default for Sample

Source§

impl Default for Repeat

Source§

impl Default for CompressionType

Source§

impl Default for image::codecs::png::FilterType

Source§

impl Default for DynamicImage

Source§

impl Default for PrefilterConfig

Source§

impl Default for png::common::Compression

Source§

impl Default for AdaptiveFilterType

Source§

impl Default for png::filter::FilterType

Source§

impl Default for Channels

Source§

impl Default for ColorSpace

Source§

impl Default for ChromaSamplePosition

Source§

impl Default for ColorPrimaries

Source§

impl Default for MatrixCoefficients

Source§

impl Default for PixelRange

Source§

impl Default for TransferCharacteristics

Source§

impl Default for CpuFeatureLevel

Source§

impl Default for Tune

Source§

impl Default for FrameTypeOverride

Source§

impl Default for PredictionMode

Source§

impl Default for ravif::av1encoder::BitDepth

Source§

impl Default for DeflateLevel

Source§

impl Default for Compressor

Source§

impl Default for ChromaSampling

Source§

impl Default for zune_core::bit_depth::BitDepth

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 Affine2

Source§

impl Default for Affine3A

Source§

impl Default for BVec2

Source§

impl Default for BVec3

Source§

impl Default for BVec3A

Source§

impl Default for BVec4

Source§

impl Default for BVec4A

Source§

impl Default for DAffine2

Source§

impl Default for DAffine3

Source§

impl Default for DMat2

Source§

impl Default for DMat3

Source§

impl Default for DMat4

Source§

impl Default for DQuat

Source§

impl Default for DVec2

Source§

impl Default for DVec3

Source§

impl Default for DVec4

Source§

impl Default for FontConfig

Source§

impl Default for FontGlyphRanges

Source§

impl Default for I16Vec2

Source§

impl Default for I16Vec3

Source§

impl Default for I16Vec4

Source§

impl Default for I64Vec2

Source§

impl Default for I64Vec3

Source§

impl Default for I64Vec4

Source§

impl Default for IVec2

Source§

impl Default for IVec3

Source§

impl Default for IVec4

Source§

impl Default for Id

Source§

impl Default for ImColor32

Source§

impl Default for ImString

Source§

impl Default for Mat2

Source§

impl Default for Mat3

Source§

impl Default for Mat3A

Source§

impl Default for Mat4

Source§

impl Default for Model

Source§

impl Default for OwnedDrawData

Source§

impl Default for Quat

Source§

impl Default for RussimpNodeData

Source§

impl Default for SkeletalVertex

Source§

impl Default for U16Vec2

Source§

impl Default for U16Vec3

Source§

impl Default for U16Vec4

Source§

impl Default for U64Vec2

Source§

impl Default for U64Vec3

Source§

impl Default for U64Vec4

Source§

impl Default for UVec2

Source§

impl Default for UVec3

Source§

impl Default for UVec4

Source§

impl Default for chaos_framework::Vec2

Source§

impl Default for Vec3

Source§

impl Default for Vec3A

Source§

impl Default for Vec4

Source§

impl Default for ImColor

Source§

impl Default for ImDrawChannel

Source§

impl Default for ImDrawCmd

Source§

impl Default for ImDrawCmdHeader

Source§

impl Default for ImDrawData

Source§

impl Default for ImDrawList

Source§

impl Default for ImDrawListSplitter

Source§

impl Default for ImDrawVert

Source§

impl Default for ImFont

Source§

impl Default for ImFontAtlas

Source§

impl Default for ImFontAtlasCustomRect

Source§

impl Default for ImFontConfig

Source§

impl Default for ImFontGlyph

Source§

impl Default for ImFontGlyphRangesBuilder

Source§

impl Default for ImGuiIO

Source§

impl Default for ImGuiInputTextCallbackData

Source§

impl Default for ImGuiKeyData

Source§

impl Default for ImGuiListClipper

Source§

impl Default for ImGuiOnceUponAFrame

Source§

impl Default for ImGuiPayload

Source§

impl Default for ImGuiPlatformImeData

Source§

impl Default for ImGuiSizeCallbackData

Source§

impl Default for ImGuiStorage

Source§

impl Default for ImGuiStoragePair

Source§

impl Default for ImGuiStyle

Source§

impl Default for ImGuiTableColumnSortSpecs

Source§

impl Default for ImGuiTableSortSpecs

Source§

impl Default for ImGuiTextBuffer

Source§

impl Default for ImGuiTextFilter

Source§

impl Default for ImGuiTextRange

Source§

impl Default for ImGuiViewport

Source§

impl Default for ImVec2

Source§

impl Default for ImVec4

Source§

impl Default for ImVector_ImDrawChannel

Source§

impl Default for ImVector_ImDrawCmd

Source§

impl Default for ImVector_ImDrawIdx

Source§

impl Default for ImVector_ImDrawVert

Source§

impl Default for ImVector_ImFontAtlasCustomRect

Source§

impl Default for ImVector_ImFontConfig

Source§

impl Default for ImVector_ImFontGlyph

Source§

impl Default for ImVector_ImFontPtr

Source§

impl Default for ImVector_ImGuiStoragePair

Source§

impl Default for ImVector_ImGuiTextRange

Source§

impl Default for ImVector_ImTextureID

Source§

impl Default for ImVector_ImU32

Source§

impl Default for ImVector_ImVec2

Source§

impl Default for ImVector_ImVec4

Source§

impl Default for ImVector_ImWchar

Source§

impl Default for ImVector_char

Source§

impl Default for ImVector_float

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 · 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

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 Duration

Source§

impl Default for Global

1.17.0 · Source§

impl Default for Box<str>

1.17.0 · Source§

impl Default for Box<CStr>

1.17.0 · Source§

impl Default for Box<OsStr>

Source§

impl Default for ByteString

1.10.0 · Source§

impl Default for CString

1.80.0 · Source§

impl Default for Rc<str>

1.80.0 · Source§

impl Default for Rc<CStr>

1.0.0 (const: unstable) · Source§

impl Default for String

1.80.0 · Source§

impl Default for Arc<str>

1.80.0 · Source§

impl Default for Arc<CStr>

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

impl Default for DefaultHasher

1.7.0 · Source§

impl Default for std::hash::random::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

1.10.0 · Source§

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

Source§

impl Default for AHasher

Provides a default Hasher with fixed keys. This is typically used in conjunction with BuildHasherDefault to create AHashers in order to hash the keys of the map.

Generally it is preferable to use RandomState instead, so that different hashmaps will have different keys. However if fixed keys are desirable this may be used instead.

§Example

use std::hash::BuildHasherDefault;
use ahash::{AHasher, RandomState};
use std::collections::HashMap;

let mut map: HashMap<i32, i32, BuildHasherDefault<AHasher>> = HashMap::default();
map.insert(12, 34);
Source§

impl Default for ahash::random_state::RandomState

Creates an instance of RandomState using keys obtained from the random number generator. Each instance created in this way will have a unique set of keys. (But the resulting instance can be used to create many hashers each or which will have the same keys.)

This is the same as RandomState::new()

NOTE: For safety this trait impl is only available available if either of the flags runtime-rng (on by default) or compile-time-rng are enabled. This is to prevent weakly keyed maps from being accidentally created. Instead one of constructors for RandomState must be used.

Source§

impl Default for anyhow::Chain<'_>

Source§

impl Default for Hasher

Source§

impl Default for Collector

Source§

impl Default for Backoff

Source§

impl Default for Parker

Source§

impl Default for WaitGroup

Source§

impl Default for NoneMore

Source§

impl Default for Encoding

Source§

impl Default for ValidationOptions

Source§

impl Default for IntegerBounds

Source§

impl Default for Text

Source§

impl Default for TimeCode

Source§

impl Default for LayerAttributes

Source§

impl Default for Decompressor

Source§

impl Default for Crc

Source§

impl Default for GzBuilder

Source§

impl Default for GzHeader

Source§

impl Default for flate2::Compression

Source§

impl Default for gif::common::Frame<'_>

Source§

impl Default for gif::reader::DecodeOptions

Source§

impl Default for bf16

Source§

impl Default for f16

Source§

impl Default for EncoderParams

Source§

impl Default for image_webp::vp8::Frame

Source§

impl Default for PixelDensity

Source§

impl Default for LimitSupport

Source§

impl Default for image::image_reader::Limits

Source§

impl Default for MetadataBuilder<'_>

Source§

impl Default for RecordBuilder<'_>

Source§

impl Default for FinderBuilder

Source§

impl Default for CompressorOxide

Source§

impl Default for DecompressorOxide

Source§

impl Default for InflateState

Source§

impl Default for BigInt

Source§

impl Default for BigUint

Source§

impl Default for OnceBool

Source§

impl Default for OnceNonZeroUsize

Source§

impl Default for parking_lot::condvar::Condvar

Source§

impl Default for Once

Source§

impl Default for UnparkResult

Source§

impl Default for SpinWait

Source§

impl Default for FrameControl

Source§

impl Default for Info<'_>

Source§

impl Default for Transformations

Instantiate the default transformations, the identity transform.

Source§

impl Default for png::decoder::stream::DecodeOptions

Source§

impl Default for StreamingDecoder

Source§

impl Default for png::decoder::Limits

Source§

impl Default for Header

Source§

impl Default for ThreadRng

Source§

impl Default for OsRng

Source§

impl Default for EncoderConfig

Default preset for EncoderConfig: it is a balance between quality and speed. See with_speed_preset().

Source§

impl Default for RateControlConfig

Source§

impl Default for SpeedSettings

Source§

impl Default for Config

Source§

impl Default for T35

Source§

impl Default for FrameParameters

Source§

impl Default for RCSummary

Source§

impl Default for EncoderStats

Source§

impl Default for Configuration

Source§

impl Default for ThreadPoolBuilder

Source§

impl Default for Adler32

Source§

impl Default for tiff::decoder::Limits

Source§

impl Default for Deflate

Source§

impl Default for Lzw

Source§

impl Default for Packbits

Source§

impl Default for Uncompressed

Source§

impl Default for LoadOptions

Source§

impl Default for Material

Source§

impl Default for Mesh

Source§

impl Default for PlaneOffset

Source§

impl Default for DecoderOptions

Source§

impl Default for EncoderOptions

Source§

impl Default for DeflateOptions

Source§

impl Default for ImageInfo

Source§

impl Default for ImGuiStoragePair__bindgen_ty_1

Source§

impl Default for vec128_storage

Source§

impl Default for vec256_storage

Source§

impl Default for vec512_storage

Source§

impl<'a> Default for &'a ImStr

Source§

impl<'a> Default for &'a ByteStr

Source§

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

Source§

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

Source§

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

Source§

impl<'a> Default for PhantomInvariantLifetime<'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> Default for OnceRef<'a, T>

Source§

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

1.70.0 · Source§

impl<A, B> Default for chaos_framework::__core::iter::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<E, N> Default for BitQueue<E, N>
where E: Default + Endianness, N: Default + Numeric,

1.7.0 · 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 · Source§

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

Source§

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

Source§

impl<Inner, Value> Default for Recursive<Inner, Value>
where Inner: Default, Value: 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>

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 AHashMap<K, V>

NOTE: For safety this trait impl is only available if either of the flags runtime-rng (on by default) or compile-time-rng are enabled. This is to prevent weakly keyed maps from being accidentally created. Instead one of constructors for RandomState must be used.

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

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

Source§

impl<N, E> Default for BitCounter<N, E>
where N: Default, E: Default + Endianness,

Source§

impl<N, E> Default for BitRecorder<N, E>
where N: Default, E: Default + Endianness,

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, Container> Default for ImageBuffer<P, Container>
where P: Pixel, Container: Default,

Source§

impl<R, G, T> Default for ReentrantMutex<R, G, T>
where R: RawMutex, G: GetThreadId, T: Default + ?Sized,

Source§

impl<R, T> Default for lock_api::mutex::Mutex<R, T>
where R: RawMutex, T: Default + ?Sized,

Source§

impl<R, T> Default for lock_api::rwlock::RwLock<R, T>
where R: RawRwLock, T: Default + ?Sized,

Source§

impl<Storage> Default for __BindgenBitfieldUnit<Storage>
where Storage: Default,

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>

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.

Source§

impl<T> Default for Textures<T>

We manually impl Default as #[derive(Default)] incorrectly requires T: Default which is not necessary at all.

1.0.0 (const: unstable) · Source§

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

1.80.0 · Source§

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

1.70.0 · Source§

impl<T> Default for chaos_framework::__core::cell::OnceCell<T>

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

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

1.2.0 (const: unstable) · Source§

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

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.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,

Source§

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

1.70.0 · Source§

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

1.70.0 · Source§

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

1.0.0 · Source§

impl<T> Default for AtomicPtr<T>

Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

impl<T> Default for BinaryHeap<T>
where T: Ord,

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]>

1.0.0 · Source§

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

1.10.0 · Source§

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

1.80.0 · Source§

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

1.0.0 · Source§

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

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.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,

1.70.0 · Source§

impl<T> Default for OnceLock<T>

1.10.0 · Source§

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

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

NOTE: For safety this trait impl is only available available if either of the flags runtime-rng (on by default) or compile-time-rng are enabled. This is to prevent weakly keyed maps from being accidentally created. Instead one of constructors for RandomState must be used.

Source§

impl<T> Default for Injector<T>

Source§

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

Source§

impl<T> Default for Shared<'_, T>
where T: Pointable + ?Sized,

Source§

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

Source§

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

Source§

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

Source§

impl<T> Default for exr::math::Vec2<T>
where T: Default,

Source§

impl<T> Default for Ratio<T>
where T: Clone + Integer,

Source§

impl<T> Default for OnceBox<T>

Source§

impl<T> Default for once_cell::sync::Lazy<T>
where T: Default,

Source§

impl<T> Default for once_cell::sync::OnceCell<T>

Source§

impl<T> Default for once_cell::unsync::Lazy<T>
where T: Default,

Source§

impl<T> Default for once_cell::unsync::OnceCell<T>

Source§

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

Source§

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

Source§

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

Source§

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

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, A> Default for Abgr<T, A>
where T: Default, A: Default,

Source§

impl<T, A> Default for Argb<T, A>
where T: Default, A: Default,

Source§

impl<T, A> Default for Bgra<T, A>
where T: Default, A: Default,

Source§

impl<T, A> Default for GrayA<T, A>
where T: Default, A: Default,

Source§

impl<T, A> Default for GrayAlpha_v08<T, A>
where T: Default, A: Default,

Source§

impl<T, A> Default for Rgba<T, A>
where T: Default, A: Default,

1.0.0 · Source§

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

Source§

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

1.89.0 · Source§

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

Source§

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

Source§

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

Source§

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