osmcode / pyosmium

Python bindings for libosmium
https://osmcode.org/pyosmium
BSD 2-Clause "Simplified" License
318 stars 65 forks source link

Generalize osmium.apply() to work with an arbitrary number of handlers #241

Closed lonvia closed 9 months ago

lonvia commented 9 months ago

Reworks the apply() function to use an indirect handler that can handle a vector of BaseHandlers. This way, an arbitrary number of handlers can be chained in one apply.

NodeLocationForWays is now exposed through a wrapper class which also inherits from BaseHandler. This means we can get rid of the special treatment in apply(). The interface doesn't change except that there is a new functionality to switch off applying node locations to ways.call to