[Pixman] Simplify iterator initializer signatures

Søren Sandmann sandmann at cs.au.dk
Sat Mar 12 17:23:48 PST 2011

Here are three patches that simplify the type signature of the
iterator initializers. The signature before:

    void (*pixman_iter_init_func_t) (pixman_implementation_t *imp,
                                     pixman_iter_t           *iter,
                                     pixman_image_t          *image,
                                     int                      x,
                                     int                      y,
                                     int                      width,
                                     int                      height,
                                     uint8_t                 *buffer,
                                     iter_flags_t             flags);

    void (*pixman_iter_init_func_t) (pixman_implementation_t *imp,
                                     pixman_iter_t           *iter);
They achieve this by passing all the information in the iterator
itself rather than as arguments.

This means the role of _pixman_implementation_{src,dest}_iter_init()
changes. Before they were wrappers around the implementation
functions; now they are convenience functions that store the various
parameters in the iterator and then call into the implementation.

More information about the Pixman mailing list