Struct etternaonline_api::Replay[][src]

pub struct Replay {
    pub notes: Vec<ReplayNote>,
}

Replay data, contains ReplayNote

Some replays don’t have tick information. Some replays have neither tick nor note type information. Some replays have neither tick nor note type nor lane information.

There are some guarantees (judging after expirementation with EO):

  • If one replay note has a certain piece of data, all other replay notes in that replay will will also have that piece of data.
  • If a replay has note type information, it will definitely also have lane information.
    If a replay has tick information, it will definitely also have both note type and lane information.

Fields

notes: Vec<ReplayNote>

Implementations

impl Replay[src]

pub fn split_into_lanes(&self) -> Option<[NoteAndHitSeconds; 4]>[src]

Splits the replay into arrays that contain the note and hit seconds, respectively. Note: if a note was missed, it has no entry in the hit seconds vector - logically, because there was no hit, hence the miss. A consequence of this is that the nth note second array will probably not have the same length as the nth hit second array.

Also, this function will discard anything not related to straight tapping, that is, mines, lifts… Also, everything above 4k will be discarded as well.

If this replay file adheres to the usual Etterna replay ordering, the second lists (hits) will be sorted ascendingly.

If this replay doesn’t have lane and note_type information, None is returned.

pub fn split_into_notes_and_hits(&self) -> Option<NoteAndHitSeconds>[src]

Like Self::split_into_lanes, but it doesn’t split by lane. Instead, everything is put into one big vector instead.

Even non-4k notes are included in this function’s result!

If this replay doesn’t have note type information, None is returned.

Trait Implementations

impl Clone for Replay[src]

impl Debug for Replay[src]

impl Default for Replay[src]

impl PartialEq<Replay> for Replay[src]

impl SimpleReplay for Replay[src]

impl StructuralPartialEq for Replay[src]

Auto Trait Implementations

impl RefUnwindSafe for Replay

impl Send for Replay

impl Sync for Replay

impl Unpin for Replay

impl UnwindSafe for Replay

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

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

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

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.