componenttools.iterate_timeline_backward_from_component

abjad.tools.componenttools.iterate_timeline_backward_from_component.iterate_timeline_backward_from_component(expr, klass=None)[source]

New in version 2.0.

Iterate timeline backward from component:

abjad> score = Score([])
abjad> score.append(Staff(notetools.make_repeated_notes(4, Duration(1, 4))))
abjad> score.append(Staff(notetools.make_repeated_notes(4)))
abjad> pitchtools.set_ascending_named_diatonic_pitches_on_nontied_pitched_components_in_expr(score)
abjad> f(score)
\new Score <<
    \new Staff {
        c'4
        d'4
        e'4
        f'4
    }
    \new Staff {
        g'8
        a'8
        b'8
        c''8
    }
>>
abjad> for leaf in componenttools.iterate_timeline_backward_from_component(score[1][2]):
...     leaf
...
Note("b'8")
Note("c'4")
Note("a'8")
Note("g'8")

Yield components sorted backward by score offset stop time.

Iterate leaves when klass is none.

Todo

optimize to avoid behind-the-scenes full-score traversal.

This Page