Trait audio_core::Sample[][src]

pub unsafe trait Sample: Copy + Default {
    const ZERO: Self;
}

A sample that can be stored in an audio buffer. Types implementing this are known as being sample apt.

Sample apt types have the following gurantees:

  • The type does not need to be dropped (by implementing Copy).
  • The type can safely be initialized with the all-zeros bit pattern.

Safety

Implementor must make sure that a bit-pattern of all-zeros is a legal bit-pattern for the implemented type.

Associated Constants

const ZERO: Self[src]

The zero pattern for the sample.

Loading content...

Implementations on Foreign Types

impl Sample for f32[src]

The bit-pattern of all zeros is a legal bit-pattern for floats.

See for example: https://doc.rust-lang.org/std/primitive.f32.html#method.to_bits.

Proof:

use audio::Sample as _;

assert_eq!((f64::ZERO).to_bits(), 0u64);

impl Sample for f64[src]

The bit-pattern of all zeros is a legal bit-pattern for floats.

See for example: https://doc.rust-lang.org/std/primitive.f64.html#method.to_bits.

Proof:

use audio::Sample as _;

assert_eq!((f64::ZERO).to_bits(), 0u64);

impl Sample for u8[src]

impl Sample for u16[src]

impl Sample for u32[src]

impl Sample for u64[src]

impl Sample for u128[src]

impl Sample for i8[src]

impl Sample for i16[src]

impl Sample for i32[src]

impl Sample for i64[src]

impl Sample for i128[src]

impl Sample for usize[src]

impl Sample for isize[src]

Loading content...

Implementors

Loading content...