componenttools.all_are_thread_contiguous_components

abjad.tools.componenttools.all_are_thread_contiguous_components.all_are_thread_contiguous_components(expr, klasses=None, allow_orphans=True)[source]

New in version 1.1.

True when elements in expr are all thread-contiguous components:

t = Voice(notetools.make_repeated_notes(4))
t.insert(2, Voice(notetools.make_repeated_notes(2)))
Container(t[:2])
Container(t[-2:])
pitchtools.set_ascending_named_diatonic_pitches_on_nontied_pitched_components_in_expr(t)

\new Voice {
    {
        c'8
        d'8
    }
    \new Voice {
        e'8
        f'8
    }
    {
        g'8
        a'8
    }
}

assert _are_thread_contiguous_components(t[0:1] + t[-1:])
assert _are_thread_contiguous_components(t[0][:] + t[-1:])
assert _are_thread_contiguous_components(t[0:1] + t[-1][:])
assert _are_thread_contiguous_components(t[0][:] + t[-1][:])

Return boolean.

Thread-contiguous components are, by definition, spannable.

This Page