[−][src]Struct libatm::midi_note::MIDINoteVec
Container for vector of MIDINote
Implements the FromStr
trait as a convenience method for parsing a list of MIDINote
(from a command line
argument).
Examples
// Parse MIDI note set from &str let note_set = "C:4,D:5,CSharp:8,DSharp:3".parse::<libatm::MIDINoteVec>().unwrap(); // Expected note set contains C:4, D:5, CSharp:8, and DSharp:3 let expected = libatm::MIDINoteVec(vec![ libatm::MIDINote::new(libatm::MIDINoteType::C, 4), libatm::MIDINote::new(libatm::MIDINoteType::D, 5), libatm::MIDINote::new(libatm::MIDINoteType::CSharp, 8), libatm::MIDINote::new(libatm::MIDINoteType::DSharp, 3), ]); assert_eq!(expected, note_set);
Methods from Deref<Target = Vec<MIDINote>>
pub fn capacity(&self) -> usize
1.0.0[src]
Returns the number of elements the vector can hold without reallocating.
Examples
let vec: Vec<i32> = Vec::with_capacity(10); assert_eq!(vec.capacity(), 10);
pub fn as_slice(&self) -> &[T]
1.7.0[src]
Extracts a slice containing the entire vector.
Equivalent to &s[..]
.
Examples
use std::io::{self, Write}; let buffer = vec![1, 2, 3, 5, 8]; io::sink().write(buffer.as_slice()).unwrap();
pub fn as_ptr(&self) -> *const T
1.37.0[src]
Returns a raw pointer to the vector's buffer.
The caller must ensure that the vector outlives the pointer this function returns, or else it will end up pointing to garbage. Modifying the vector may cause its buffer to be reallocated, which would also make any pointers to it invalid.
The caller must also ensure that the memory the pointer (non-transitively) points to
is never written to (except inside an UnsafeCell
) using this pointer or any pointer
derived from it. If you need to mutate the contents of the slice, use as_mut_ptr
.
Examples
let x = vec![1, 2, 4]; let x_ptr = x.as_ptr(); unsafe { for i in 0..x.len() { assert_eq!(*x_ptr.add(i), 1 << i); } }
pub fn len(&self) -> usize
1.0.0[src]
Returns the number of elements in the vector, also referred to as its 'length'.
Examples
let a = vec![1, 2, 3]; assert_eq!(a.len(), 3);
pub fn is_empty(&self) -> bool
1.0.0[src]
Returns true
if the vector contains no elements.
Examples
let mut v = Vec::new(); assert!(v.is_empty()); v.push(1); assert!(!v.is_empty());
Trait Implementations
impl From<MIDINoteSet> for MIDINoteVec
[src]
fn from(set: MIDINoteSet) -> Self
[src]
impl<'_> From<&'_ MIDINoteSet> for MIDINoteVec
[src]
fn from(set: &MIDINoteSet) -> Self
[src]
impl Clone for MIDINoteVec
[src]
fn clone(&self) -> MIDINoteVec
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl PartialEq<MIDINoteVec> for MIDINoteVec
[src]
fn eq(&self, other: &MIDINoteVec) -> bool
[src]
fn ne(&self, other: &MIDINoteVec) -> bool
[src]
impl Debug for MIDINoteVec
[src]
impl FromStr for MIDINoteVec
[src]
type Err = ParseMIDINoteSequenceError
The associated error which can be returned from parsing.
fn from_str(s: &str) -> Result<Self, Self::Err>
[src]
impl Deref for MIDINoteVec
[src]
type Target = Vec<MIDINote>
The resulting type after dereferencing.
fn deref(&self) -> &Self::Target
[src]
Allow dereferencing of tuple struct to underlying hash set
impl StructuralPartialEq for MIDINoteVec
[src]
impl FromIterator<MIDINote> for MIDINoteVec
[src]
fn from_iter<I: IntoIterator<Item = MIDINote>>(iter: I) -> Self
[src]
Auto Trait Implementations
impl Send for MIDINoteVec
impl Sync for MIDINoteVec
impl Unpin for MIDINoteVec
impl UnwindSafe for MIDINoteVec
impl RefUnwindSafe for MIDINoteVec
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,