Attribute Chaining
==================

See also ticket #151.

    >>> from shapely.geometry import Polygon
    >>> p = Polygon(((0.0, 0.0), (0.0, 1.0), (-1.0, 1.0), (-1.0, 0.0)))
    >>> list(p.boundary.coords)
    [(0.0, 0.0), (0.0, 1.0), (-1.0, 1.0), (-1.0, 0.0), (0.0, 0.0)]

    >>> print list(p.buffer(1).exterior.coords)
    [(0.0, -1.0), (-1.0, -1.0), ...

Test chained access to interiors

    >>> p = Polygon(
    ...         ((0.0, 0.0), (0.0, 1.0), (-1.0, 1.0), (-1.0, 0.0)),
    ...         [((-0.25, 0.25), (-0.25, 0.75), (-0.75, 0.75), (-0.75, 0.25))]
    ...     )
    >>> p.area
    0.75
    >>> print list(p.interiors[0].coords)
    [(-0.25, 0.25), (-0.25, 0.75), (-0.75, 0.75), (-0.75, 0.25), (-0.25, 0.25)]
    >>> print list(p.interiors[0].buffer(1).exterior.coords)
    [(-0.25, -0.75), (-0.75, -0.75), ...

Test multiple operators, boundary of a buffer

    >>> print list(p.buffer(1).boundary.coords)
    [(0.0, -1.0), (-1.0, -1.0), ...

