def __or__(self, expr):
        r'''Logical OR of two start-positioned division payload expressions:

        ::

            >>> expression_1 = musicexpressiontools.StartPositionedDivisionPayloadExpression(
            ...     2 * [(3, 16)], Offset(0))
            >>> timespan = timespantools.Timespan(Offset(6, 16))
            >>> expression_2 = musicexpressiontools.StartPositionedDivisionPayloadExpression(
            ...     2 * [(2, 16)], Offset(6, 16))

        ::

            >>> expression_1.timespan.stops_when_timespan_starts(expression_2)
            True

        ::

            >>> result = expression_1 | expression_2

        ::

            >>> print format(result)
            timespantools.TimespanInventory(
                [
                    musicexpressiontools.StartPositionedDivisionPayloadExpression(
                        payload=musicexpressiontools.DivisionList(
                            [
                                musicexpressiontools.Division(
                                    '[3, 16]',
                                    start_offset=durationtools.Offset(0, 1),
                                    ),
                                musicexpressiontools.Division(
                                    '[3, 16]',
                                    start_offset=durationtools.Offset(3, 16),
                                    ),
                                musicexpressiontools.Division(
                                    '[2, 16]',
                                    start_offset=durationtools.Offset(3, 8),
                                    ),
                                musicexpressiontools.Division(
                                    '[2, 16]',
                                    start_offset=durationtools.Offset(1, 2),
                                    ),
                                ],
                            start_offset=durationtools.Offset(0, 1),
                            ),
                        start_offset=durationtools.Offset(0, 1),
                        ),
                    ]
                )

        Returns timespan inventory.
        '''
        return StartPositionedPayloadExpression.__or__(self, expr)
Exemple #2
0
    def __or__(self, expr):
        r'''Logical OR of two start-positioned division payload expressions:

        ::

            >>> expression_1 = musicexpressiontools.StartPositionedDivisionPayloadExpression(
            ...     2 * [(3, 16)], Offset(0))
            >>> timespan = timespantools.Timespan(Offset(6, 16))
            >>> expression_2 = musicexpressiontools.StartPositionedDivisionPayloadExpression(
            ...     2 * [(2, 16)], Offset(6, 16))

        ::

            >>> expression_1.timespan.stops_when_timespan_starts(expression_2)
            True

        ::

            >>> result = expression_1 | expression_2

        ::

            >>> print(format(result))
            timespantools.TimespanInventory(
                [
                    musicexpressiontools.StartPositionedDivisionPayloadExpression(
                        payload=musicexpressiontools.DivisionList(
                            [
                                durationtools.Division(3, 16),
                                durationtools.Division(3, 16),
                                durationtools.Division(2, 16),
                                durationtools.Division(2, 16),
                                ],
                            start_offset=durationtools.Offset(0, 1),
                            ),
                        start_offset=durationtools.Offset(0, 1),
                        ),
                    ]
                )

        Returns timespan inventory.
        '''
        return StartPositionedPayloadExpression.__or__(self, expr)
Exemple #3
0
    def __or__(self, expr):
        r'''Logical OR of two start-positioned rhythm payload expressions:

        ::

            >>> payload = [Container("c'8 d'8 e'8 f'8")]
            >>> expression_1 = \
            ...     musicexpressiontools.StartPositionedRhythmPayloadExpression(
            ...     payload, Offset(0))

        ::

            >>> payload = [Container("g'8 a'8 b'8 c''8")]
            >>> expression_2 = \
            ...     musicexpressiontools.StartPositionedRhythmPayloadExpression(
            ...     payload, Offset(4, 8))

        ::

            >>> expression_1.timespan.stops_when_timespan_starts(expression_2)
            True

        ::

            >>> result = expression_1 | expression_2

        ::

            >>> print(format(result))
            timespantools.TimespanInventory(
                [
                    musicexpressiontools.StartPositionedRhythmPayloadExpression(
                        payload=scoretools.Container(
                            "{ c'8 d'8 e'8 f'8 g'8 a'8 b'8 c''8 }"
                            ),
                        start_offset=durationtools.Offset(0, 1),
                        ),
                    ]
                )

        Leave start-positioned rhythm payload expression unchanged:

        ::

            >>> print(format(expression_1))
            musicexpressiontools.StartPositionedRhythmPayloadExpression(
                payload=scoretools.Container(
                    "{ c'8 d'8 e'8 f'8 }"
                    ),
                start_offset=durationtools.Offset(0, 1),
                )

        Leave `expr` unchanged:

        ::

            >>> print(format(expression_2))
            musicexpressiontools.StartPositionedRhythmPayloadExpression(
                payload=scoretools.Container(
                    "{ g'8 a'8 b'8 c''8 }"
                    ),
                start_offset=durationtools.Offset(1, 2),
                )

        Returns timespan inventory.
        '''
        return StartPositionedPayloadExpression.__or__(self, expr)
    def __or__(self, expr):
        r'''Logical OR of two start-positioned rhythm payload expressions:

        ::

            >>> payload = [Container("c'8 d'8 e'8 f'8")]
            >>> expression_1 = \
            ...     musicexpressiontools.StartPositionedRhythmPayloadExpression(
            ...     payload, Offset(0))

        ::

            >>> payload = [Container("g'8 a'8 b'8 c''8")]
            >>> expression_2 = \
            ...     musicexpressiontools.StartPositionedRhythmPayloadExpression(
            ...     payload, Offset(4, 8))

        ::

            >>> expression_1.timespan.stops_when_timespan_starts(expression_2)
            True

        ::

            >>> result = expression_1 | expression_2

        ::

            >>> print(format(result))
            timespantools.TimespanInventory(
                [
                    musicexpressiontools.StartPositionedRhythmPayloadExpression(
                        payload=scoretools.Container(
                            "{ c'8 d'8 e'8 f'8 g'8 a'8 b'8 c''8 }"
                            ),
                        start_offset=durationtools.Offset(0, 1),
                        ),
                    ]
                )

        Leave start-positioned rhythm payload expression unchanged:

        ::

            >>> print(format(expression_1))
            musicexpressiontools.StartPositionedRhythmPayloadExpression(
                payload=scoretools.Container(
                    "{ c'8 d'8 e'8 f'8 }"
                    ),
                start_offset=durationtools.Offset(0, 1),
                )

        Leave `expr` unchanged:

        ::

            >>> print(format(expression_2))
            musicexpressiontools.StartPositionedRhythmPayloadExpression(
                payload=scoretools.Container(
                    "{ g'8 a'8 b'8 c''8 }"
                    ),
                start_offset=durationtools.Offset(1, 2),
                )

        Returns timespan inventory.
        '''
        return StartPositionedPayloadExpression.__or__(self, expr)
    def __or__(self, expr):
        r'''Logical OR of two start-positioned rhythm payload expressions:

        ::

            >>> payload = [Container("c'8 d'8 e'8 f'8")]
            >>> expression_1 = \
            ...     musicexpressiontools.StartPositionedRhythmPayloadExpression(
            ...     payload, Offset(0))

        ::

            >>> payload = [Container("g'8 a'8 b'8 c''8")]
            >>> expression_2 = \
            ...     musicexpressiontools.StartPositionedRhythmPayloadExpression(
            ...     payload, Offset(4, 8))

        ::

            >>> expression_1.timespan.stops_when_timespan_starts(expression_2)
            True

        ::

            >>> result = expression_1 | expression_2

        ::

            >>> print result.storage_format
            timespantools.TimespanInventory([
                musicexpressiontools.StartPositionedRhythmPayloadExpression(
                    payload=containertools.Container(
                        music=[{c'8, d'8, e'8, f'8, g'8, a'8, b'8, c''8}]
                        ),
                    start_offset=durationtools.Offset(0, 1)
                    )
                ])

        Leave start-positioned rhythm payload expression unchanged:

        ::

            >>> print expression_1.storage_format
            musicexpressiontools.StartPositionedRhythmPayloadExpression(
                payload=containertools.Container(
                    music=[{c'8, d'8, e'8, f'8}]
                    ),
                start_offset=durationtools.Offset(0, 1)
                )

        Leave `expr` unchanged:

        ::

            >>> print expression_2.storage_format
            musicexpressiontools.StartPositionedRhythmPayloadExpression(
                payload=containertools.Container(
                    music=[{g'8, a'8, b'8, c''8}]
                    ),
                start_offset=durationtools.Offset(1, 2)
                )

        Returns timespan inventory.
        '''
        return StartPositionedPayloadExpression.__or__(self, expr)