Trait orkhon::prelude::ops::nn::tract_downcast_rs::__std::prelude::v1::Default1.0.0[][src]

pub trait Default {
    pub fn default() -> Self;
}

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.

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

pub fn default() -> Self[src]

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 }
}
Loading content...

Implementations on Foreign Types

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

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

impl Default for u64[src]

pub fn default() -> u64[src]

Returns the default value of 0

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

impl<T> Default for [T; 0][src]

impl Default for isize[src]

pub fn default() -> isize[src]

Returns the default value of 0

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

impl Default for i32[src]

pub fn default() -> i32[src]

Returns the default value of 0

impl<A, B, C> Default for (A, B, C) where
    C: Default,
    A: Default,
    B: Default
[src]

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

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

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

impl<A, B, C, D, E> Default for (A, B, C, D, E) where
    C: Default,
    A: Default,
    E: Default,
    B: Default,
    D: Default
[src]

impl Default for u128[src]

pub fn default() -> u128[src]

Returns the default value of 0

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

impl Default for f64[src]

pub fn default() -> f64[src]

Returns the default value of 0.0

impl<A, B, C, D, E, F, G, H, I, J, K> Default for (A, B, C, D, E, F, G, H, I, J, K) where
    C: Default,
    I: Default,
    K: Default,
    A: Default,
    E: Default,
    G: Default,
    F: Default,
    B: Default,
    J: Default,
    D: Default,
    H: Default
[src]

impl Default for bool[src]

pub fn default() -> bool[src]

Returns the default value of false

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

impl Default for i16[src]

pub fn default() -> i16[src]

Returns the default value of 0

impl Default for ()[src]

pub fn default()[src]

Returns the default value of ()

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

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

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

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

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

impl Default for i64[src]

pub fn default() -> i64[src]

Returns the default value of 0

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

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

impl Default for u32[src]

pub fn default() -> u32[src]

Returns the default value of 0

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

impl Default for i8[src]

pub fn default() -> i8[src]

Returns the default value of 0

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

impl<A, B, C, D, E, F> Default for (A, B, C, D, E, F) where
    C: Default,
    A: Default,
    E: Default,
    F: Default,
    B: Default,
    D: Default
[src]

impl<'_> Default for &'_ mut str[src]

pub fn default() -> &'_ mut str[src]

Creates an empty mutable str

impl<A, B, C, D, E, F, G, H, I> Default for (A, B, C, D, E, F, G, H, I) where
    C: Default,
    I: Default,
    A: Default,
    E: Default,
    G: Default,
    F: Default,
    B: Default,
    D: Default,
    H: Default
[src]

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

impl<A, B, C, D> Default for (A, B, C, D) where
    C: Default,
    A: Default,
    B: Default,
    D: Default
[src]

impl<'_> Default for &'_ str[src]

pub fn default() -> &'_ str[src]

Creates an empty str

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

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

impl<A, B, C, D, E, F, G, H, I, J> Default for (A, B, C, D, E, F, G, H, I, J) where
    C: Default,
    I: Default,
    A: Default,
    E: Default,
    G: Default,
    F: Default,
    B: Default,
    J: Default,
    D: Default,
    H: Default
[src]

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

impl Default for i128[src]

pub fn default() -> i128[src]

Returns the default value of 0

impl<A, B, C, D, E, F, G, H, I, J, K, L> Default for (A, B, C, D, E, F, G, H, I, J, K, L) where
    C: Default,
    I: Default,
    K: Default,
    A: Default,
    E: Default,
    G: Default,
    F: Default,
    B: Default,
    J: Default,
    D: Default,
    L: Default,
    H: Default
[src]

impl Default for u16[src]

pub fn default() -> u16[src]

Returns the default value of 0

impl<A, B> Default for (A, B) where
    A: Default,
    B: Default
[src]

impl Default for u8[src]

pub fn default() -> u8[src]

Returns the default value of 0

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

impl<A> Default for (A,) where
    A: Default
[src]

impl Default for usize[src]

pub fn default() -> usize[src]

Returns the default value of 0

impl Default for f32[src]

pub fn default() -> f32[src]

Returns the default value of 0.0

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

impl<'_, T> Default for &'_ mut [T][src]

pub fn default() -> &'_ mut [T]

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[src]

Creates a mutable empty slice.

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

impl<'_, T> Default for &'_ [T][src]

pub fn default() -> &'_ [T]

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[src]

Creates an empty slice.

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

impl<A, B, C, D, E, F, G> Default for (A, B, C, D, E, F, G) where
    C: Default,
    A: Default,
    E: Default,
    G: Default,
    F: Default,
    B: Default,
    D: Default
[src]

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

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

impl Default for char[src]

pub fn default() -> char[src]

Returns the default value of \x00

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

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

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

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

impl<A, B, C, D, E, F, G, H> Default for (A, B, C, D, E, F, G, H) where
    C: Default,
    A: Default,
    E: Default,
    G: Default,
    F: Default,
    B: Default,
    D: Default,
    H: Default
[src]

impl<B> Default for BitSet<B> where
    B: BitBlock

impl<B> Default for BitVec<B> where
    B: BitBlock
[src]

impl<T> Default for Complex<T> where
    T: Default
[src]

impl Default for bf16[src]

impl Default for f16[src]

impl<K, V, S> Default for LOTable<K, V, S> where
    K: 'static + PartialEq<K> + Eq + Hash + Clone + Send + Sync,
    V: 'static + Clone + Send + Sync,
    S: Default + BuildHasher
[src]

pub fn default() -> LOTable<K, V, S>[src]

Creates an empty LOTable<K, V, S>, with the Default value for the hasher.

impl Default for CountingBitonic[src]

impl Default for TransactionState[src]

impl Default for Txn[src]

impl Default for Zone[src]

impl<'g, T> Default for Shared<'g, T>

impl<T> Default for Atomic<T>

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

impl Default for Backoff

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

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

impl Default for Condvar

impl Default for Once

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

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

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

impl Default for UnparkResult

impl Default for SpinWait

impl Default for Builder[src]

impl Default for WriteStyle[src]

impl Default for Target[src]

impl Default for Builder[src]

impl<'a> Default for Env<'a>[src]

impl Default for ColorSpec

impl Default for Config

impl Default for AhoCorasickBuilder

impl Default for MatchKind

The default match kind is MatchKind::Standard.

impl Default for MatchKind

impl Default for Builder

impl Default for ClassBytesRange

impl Default for ParserBuilder

impl Default for TranslatorBuilder

impl Default for ClassUnicodeRange

impl Default for ParserBuilder

impl<T> Default for ThreadLocal<T> where
    T: Send

impl<T> Default for CachedThreadLocal<T> where
    T: Send

impl<T> Default for OnceCell<T>

impl<T> Default for Lazy<T, fn() -> T> where
    T: Default

pub fn default() -> Lazy<T, fn() -> T>

Creates a new lazy value using Default as the initializing function.

impl<T> Default for Lazy<T, fn() -> T> where
    T: Default

pub fn default() -> Lazy<T, fn() -> T>

Creates a new lazy value using Default as the initializing function.

impl<T> Default for OnceCell<T>

impl<T> Default for Slab<T>[src]

Loading content...

Implementors

impl Default for TDim

impl Default for PadMode[src]

impl Default for KernelFormat[src]

impl Default for PaddingSpec[src]

impl Default for DataFormat[src]

impl Default for OrkhonConfig[src]

impl Default for Orkhon[src]

impl Default for AxisChangeConsequence[src]

impl Default for AxisInfo[src]

impl Default for Blob

impl Default for Invariants[src]

impl Default for SessionState[src]

impl Default for SymbolValues

impl Default for Tensor

impl Default for orkhon::prelude::internal::f16

impl Default for FiniteReshape[src]

impl Default for MultiBroadcastTo[src]

impl Default for Pad[src]

impl Default for Slice[src]

impl Default for Tile[src]

impl Default for MaxPool[src]

impl Default for PoolSpec[src]

impl Default for SumPool[src]

impl Default for Identity[src]

impl Default for Iff[src]

impl Default for MatMul[src]

impl Default for Error[src]

impl Default for Global[src]

impl Default for System1.28.0[src]

impl Default for DefaultHasher1.13.0[src]

pub fn default() -> DefaultHasher[src]

Creates a new DefaultHasher using new. See its documentation for more.

impl Default for RandomState1.7.0[src]

pub fn default() -> RandomState[src]

Constructs a new RandomState.

impl Default for CString1.10.0[src]

pub fn default() -> CString[src]

Creates an empty CString.

impl Default for OsString1.9.0[src]

pub fn default() -> OsString[src]

Constructs an empty OsString.

impl Default for SipHasher[src]

impl Default for PhantomPinned1.33.0[src]

impl Default for RangeFull[src]

impl Default for PathBuf1.17.0[src]

impl Default for Box<str, Global>1.17.0[src]

impl Default for Box<CStr, Global>1.17.0[src]

impl Default for Box<OsStr, Global>1.17.0[src]

impl Default for String[src]

pub fn default() -> String[src]

Creates an empty String.

impl Default for AtomicBool[src]

pub fn default() -> AtomicBool[src]

Creates an AtomicBool initialized to false.

impl Default for AtomicI81.34.0[src]

impl Default for AtomicI161.34.0[src]

impl Default for AtomicI321.34.0[src]

impl Default for AtomicI641.34.0[src]

impl Default for AtomicIsize[src]

impl Default for AtomicU81.34.0[src]

impl Default for AtomicU161.34.0[src]

impl Default for AtomicU321.34.0[src]

impl Default for AtomicU641.34.0[src]

impl Default for AtomicUsize[src]

impl Default for orkhon::prelude::ops::nn::tract_downcast_rs::__std::sync::Condvar1.10.0[src]

pub fn default() -> Condvar[src]

Creates a Condvar which is ready to be waited on and notified.

impl Default for Duration1.3.0[src]

impl Default for IxDynImpl[src]

impl Default for Scan[src]

impl Default for Downsample[src]

impl Default for TFRequest[src]

impl Default for TFResponse[src]

impl<'_> Default for &'_ CStr1.10.0[src]

impl<'_> Default for &'_ OsStr1.9.0[src]

pub fn default() -> &'_ OsStr[src]

Creates an empty OsStr.

impl<'_> Default for Chain<'_>[src]

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

pub fn default() -> Cow<'_, B>[src]

Creates an owned Cow<'a, B> with the default value for the contained owned value.

impl<A> Default for SmallVec<A> where
    A: Array
[src]

impl<A, S, D> Default for ArrayBase<S, D> where
    S: DataOwned<Elem = A>,
    A: Default,
    D: Dimension
[src]

Create an owned array with a default state.

The array is created with dimension D::default(), which results in for example dimensions 0 and (0, 0) with zero elements for the one-dimensional and two-dimensional cases respectively.

The default dimension for IxDyn is IxDyn(&[0]) (array has zero elements). And the default for the dimension () is () (array has one element).

Since arrays cannot grow, the intention is to use the default value as placeholder.

impl<F> Default for Outlet<F> where
    F: Fact + Default + Hash
[src]

impl<F, O> Default for Graph<F, O> where
    F: Fact + Hash + Clone + 'static,
    O: Debug + Display + AsRef<dyn Op + 'static> + AsMut<dyn Op + 'static> + Clone + 'static + Hash
[src]

impl<F, O> Default for ModelPatch<F, O> where
    F: Fact + Clone + 'static + Hash,
    O: Display + Debug + AsRef<dyn Op + 'static> + AsMut<dyn Op + 'static> + Clone + 'static + Hash
[src]

impl<H> Default for BuildHasherDefault<H>1.7.0[src]

impl<I> Default for Dim<I> where
    I: Default + ?Sized
[src]

impl<Idx> Default for Range<Idx> where
    Idx: Default
[src]

impl<K, V> Default for BTreeMap<K, V> where
    K: Ord
[src]

pub fn default() -> BTreeMap<K, V>[src]

Creates an empty BTreeMap.

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

pub fn default() -> HashMap<K, V, S>[src]

Creates an empty HashMap<K, V, S>, with the Default value for the hasher.

impl<T> Default for Option<T>[src]

pub fn default() -> Option<T>[src]

Returns None.

Examples

let opt: Option<u32> = Option::default();
assert!(opt.is_none());

impl<T> Default for Arc<T> where
    T: Default
[src]

pub fn default() -> Arc<T>[src]

Creates a new Arc<T>, with the Default value for T.

Examples

use std::sync::Arc;

let x: Arc<i32> = Default::default();
assert_eq!(*x, 0);

impl<T> Default for OutletMap<T> where
    T: Default
[src]

impl<T> Default for PhantomData<T> where
    T: ?Sized
[src]

impl<T> Default for Rc<T> where
    T: Default
[src]

pub fn default() -> Rc<T>[src]

Creates a new Rc<T>, with the Default value for T.

Examples

use std::rc::Rc;

let x: Rc<i32> = Default::default();
assert_eq!(*x, 0);

impl<T> Default for orkhon::prelude::ops::nn::tract_data::internal::tract_smallvec::alloc::rc::Weak<T>1.10.0[src]

pub fn default() -> Weak<T>[src]

Constructs a new Weak<T>, allocating memory for T without initializing it. Calling upgrade on the return value always gives None.

Examples

use std::rc::Weak;

let empty: Weak<i64> = Default::default();
assert!(empty.upgrade().is_none());

impl<T> Default for Cell<T> where
    T: Default
[src]

pub fn default() -> Cell<T>[src]

Creates a Cell<T>, with the Default value for T.

impl<T> Default for RefCell<T> where
    T: Default
[src]

pub fn default() -> RefCell<T>[src]

Creates a RefCell<T>, with the Default value for T.

impl<T> Default for UnsafeCell<T> where
    T: Default
1.10.0[src]

pub fn default() -> UnsafeCell<T>[src]

Creates an UnsafeCell, with the Default value for T.

impl<T> Default for Reverse<T> where
    T: Default
1.19.0[src]

impl<T> Default for BTreeSet<T> where
    T: Ord
[src]

pub fn default() -> BTreeSet<T>[src]

Creates an empty BTreeSet.

impl<T> Default for BinaryHeap<T> where
    T: Ord
[src]

pub fn default() -> BinaryHeap<T>[src]

Creates an empty BinaryHeap<T>.

impl<T> Default for LinkedList<T>[src]

pub fn default() -> LinkedList<T>[src]

Creates an empty LinkedList<T>.

impl<T> Default for VecDeque<T>[src]

pub fn default() -> VecDeque<T>[src]

Creates an empty VecDeque<T>.

impl<T> Default for Cursor<T> where
    T: Default
[src]

impl<T> Default for orkhon::prelude::ops::nn::tract_downcast_rs::__std::lazy::Lazy<T, fn() -> T> where
    T: Default
[src]

pub fn default() -> Lazy<T, fn() -> T>[src]

Creates a new lazy value using Default as the initializing function.

impl<T> Default for orkhon::prelude::ops::nn::tract_downcast_rs::__std::lazy::OnceCell<T>[src]

impl<T> Default for SyncLazy<T, fn() -> T> where
    T: Default
[src]

pub fn default() -> SyncLazy<T, fn() -> T>[src]

Creates a new lazy value using Default as the initializing function.

impl<T> Default for SyncOnceCell<T>[src]

impl<T> Default for ManuallyDrop<T> where
    T: Default + ?Sized
1.20.0[src]

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

impl<T> Default for Box<[T], Global>[src]

impl<T> Default for Box<T, Global> where
    T: Default
[src]

pub fn default() -> Box<T, Global>

Notable traits for Box<R, Global>

impl<R> Read for Box<R, Global> where
    R: Read + ?Sized
impl<W> Write for Box<W, Global> where
    W: Write + ?Sized
impl<F, A> Future for Box<F, A> where
    A: Allocator + 'static,
    F: Unpin + Future + ?Sized
type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
    I: Iterator + ?Sized,
    A: Allocator
type Item = <I as Iterator>::Item;
[src]

Creates a Box<T>, with the Default value for T.

impl<T> Default for Vec<T, Global>[src]

pub fn default() -> Vec<T, Global>

Notable traits for Vec<u8, Global>

impl Write for Vec<u8, Global>
[src]

Creates an empty Vec<T>.

impl<T> Default for AtomicPtr<T>[src]

pub fn default() -> AtomicPtr<T>[src]

Creates a null AtomicPtr<T>.

impl<T> Default for orkhon::prelude::ops::nn::tract_downcast_rs::__std::sync::Mutex<T> where
    T: Default + ?Sized
1.10.0[src]

pub fn default() -> Mutex<T>[src]

Creates a Mutex<T>, with the Default value for T.

impl<T> Default for orkhon::prelude::ops::nn::tract_downcast_rs::__std::sync::RwLock<T> where
    T: Default
1.10.0[src]

pub fn default() -> RwLock<T>[src]

Creates a new RwLock<T>, with the Default value for T.

impl<T> Default for orkhon::prelude::ops::nn::tract_downcast_rs::__std::sync::Weak<T>1.10.0[src]

pub fn default() -> Weak<T>[src]

Constructs a new Weak<T>, without allocating memory. Calling upgrade on the return value always gives None.

Examples

use std::sync::Weak;

let empty: Weak<i64> = Default::default();
assert!(empty.upgrade().is_none());

impl<T> Default for Empty<T>1.2.0[src]

impl<T, S> Default for HashSet<T, S> where
    S: Default
[src]

pub fn default() -> HashSet<T, S>[src]

Creates an empty HashSet<T, S> with the Default value for the hasher.

impl<TI> Default for ScratchSpaceFusedNonLinear<TI> where
    TI: Copy

Loading content...