containertools.Container

Inheritance diagram of abjad.tools.containertools.Container.Container.Container

class abjad.tools.containertools.Container.Container.Container(music=None, **kwargs)[source]

Abjad model of a music container:

abjad> container = Container("c'8 d'8 e'8 f'8")
abjad> f(container)
{
    c'8
    d'8
    e'8
    f'8
}

Return container object.

Read-only Properties

Container.contents_duration[source]
Container.duration_in_seconds[source]
Container.format

Read-only LilyPond input format of component.

Note

Inherited from componenttools.Component

Container.leaves[source]

Read-only tuple of leaves in container:

abjad> container = Container("c'8 d'8 e'8")
abjad> container.leaves
(Note("c'8"), Note("d'8"), Note("e'8"))

Return tuple of zero or more leaves.

Container.marks

Read-only tuple of marks attached to component.

Note

Inherited from componenttools.Component

Container.music[source]

Read-only tuple of components in container:

abjad> container = Container("c'8 d'8 e'8")
abjad> container.music
(Note("c'8"), Note("d'8"), Note("e'8"))

Return tuple or zero or more components.

Container.override

Read-only reference to LilyPond grob override component plug-in.

Note

Inherited from componenttools.Component

Container.parent

Note

Inherited from componenttools.Component

Container.preprolated_duration[source]
Container.prolated_duration

Note

Inherited from componenttools.Component

Container.prolation

Note

Inherited from componenttools.Component

Container.set

Read-only reference LilyPond context setting component plug-in.

Note

Inherited from componenttools.Component

Container.spanners

Read-only reference to unordered set of spanners attached to component.

Note

Inherited from componenttools.Component

Read/write Properties

Container.is_parallel[source]

Get parallel container:

abjad> container = Container([Voice("c'8 d'8 e'8"), Voice('g4.')])
abjad> f(container)
{
    \new Voice {
        c'8
        d'8
        e'8
    }
    \new Voice {
        g4.
    }
}
abjad> container.is_parallel
False

Return boolean.

Set parallel container:

abjad> container.is_parallel = True
abjad> f(container)
<<
    \new Voice {
        c'8
        d'8
        e'8
    }
    \new Voice {
        g4.
    }
>>

Return none.

Methods

Container.append(component)[source]

Append component to container:

abjad> container = Container("c'8 d'8 e'8")
abjad> beam = spannertools.BeamSpanner(container.music)
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
}
abjad> container.append(Note("f'8"))
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
    f'8
}

Return none.

Container.extend(expr)[source]

Extend expr against container:

abjad> container = Container("c'8 d'8 e'8")
abjad> beam = spannertools.BeamSpanner(container.music)
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
}
abjad> container.extend([Note("cs'8"), Note("ds'8"), Note("es'8")])
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
    cs'8
    ds'8
    es'8
}

Return none.

New in version 2.3: expr may now be a LilyPond input string.

Container.index(component)[source]

Index component in container:

abjad> container = Container("c'8 d'8 e'8")
abjad> note = container[-1]
abjad> note
Note("e'8")
abjad> container.index(note)
2

Return nonnegative integer.

Container.insert(i, component)[source]

Insert component in container at index i:

abjad> container = Container("c'8 d'8 e'8")
abjad> beam = spannertools.BeamSpanner(container.music)
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
}
abjad> container.insert(1, Note("cs'8"))
abjad> f(container)
{
    c'8 [
    cs'8
    d'8
    e'8 ]
}

Return none.

Container.pop(i=-1)[source]

Pop component at index i from container:

abjad> container = Container("c'8 d'8 e'8")
abjad> beam = spannertools.BeamSpanner(container.music)
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
}
abjad> container.pop(-1)
Note("e'8")
abjad> f(container)
{
    c'8 [
    d'8 ]
}

Return component.

Container.remove(component)[source]

Remove component from container:

abjad> container = Container("c'8 d'8 e'8")
abjad> beam = spannertools.BeamSpanner(container.music)
abjad> f(container)
{
    c'8 [
    d'8
    e'8 ]
}
abjad> note = container[-1]
abjad> note
Note("e'8")
abjad> container.remove(note)
abjad> f(container)
{
    c'8 [
    d'8 ]
}

Return none.

Special Methods

Container.__add__(expr)[source]

Concatenate containers self and expr. The operation c = a + b returns a new Container c with the content of both a and b. The operation is non-commutative: the content of the first operand will be placed before the content of the second operand.

Container.__contains__(expr)[source]

True if expr is in container, otherwise False.

Container.__delattr__()

x.__delattr__(‘name’) <==> del x.name

Note

Inherited from __builtin__.object

Container.__delitem__(i)[source]

Find component(s) at index or slice ‘i’ in container. Detach component(s) from parentage. Withdraw component(s) from crossing spanners. Preserve spanners that component(s) cover(s).

Container.__eq__(arg)

True when id(self) equals id(arg).

Return boolean.

Note

Inherited from abctools.AbjadObject

Container.__ge__(arg)

Abjad objects by default do not implement this method.

Raise exception.

Note

Inherited from abctools.AbjadObject

Container.__getitem__(i)[source]

Return component at index i in container. Shallow traversal of container for numeric indices only.

Container.__gt__(arg)

Abjad objects by default do not implement this method.

Raise exception

Note

Inherited from abctools.AbjadObject

Container.__hash__() <==> hash(x)

Note

Inherited from __builtin__.object

Container.__iadd__(expr)[source]

__iadd__ avoids unnecessary copying of structures.

Container.__imul__(total)[source]

Multiply contents of container ‘total’ times. Return multiplied container.

Container.__le__(arg)

Abjad objects by default do not implement this method.

Raise exception.

Note

Inherited from abctools.AbjadObject

Container.__len__()[source]

Return nonnegative integer number of components in container.

Container.__lt__(arg)

Abjad objects by default do not implement this method.

Raise exception.

Note

Inherited from abctools.AbjadObject

Container.__mul__(n)

Note

Inherited from componenttools.Component

Container.__ne__(arg)

True when id(self) does not equal id(arg).

Return boolean.

Note

Inherited from abctools.AbjadObject

Container.__radd__(expr)[source]

Extend container by contents of expr to the right.

Container.__repr__()[source]

String format of container for interpreter display.

Container.__rmul__(n)

Note

Inherited from componenttools.Component

Container.__setattr__()

x.__setattr__(‘name’, value) <==> x.name = value

Note

Inherited from __builtin__.object

Container.__setitem__(i, expr)[source]

Set ‘expr’ in self at nonnegative integer index i. Or, set ‘expr’ in self at slice i. Find spanners that dominate self[i] and children of self[i]. Replace contents at self[i] with ‘expr’. Reattach spanners to new contents. This operation leaves all score trees always in tact.

Container.__str__() <==> str(x)

Note

Inherited from __builtin__.object

Table Of Contents

This Page