> Add a new iterator that allows us to pop the items as we iterate. > We already have a wrapper for sort, add wrapper for bsearch that > can be used later on. > > Signed-off-by: Ales Musil <[email protected]>
Is it better to add this function where it is actually used? Anyway, Acked-by: Lorenzo Bianconi <[email protected]> > --- > lib/vec.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/lib/vec.h b/lib/vec.h > index 5e51357de..ff8f69a5e 100644 > --- a/lib/vec.h > +++ b/lib/vec.h > @@ -148,6 +148,18 @@ vector_qsort(struct vector *vec, int (*cmp)(const void > *a, const void *b)) > } > } > > +/* Binary search for given key in the vector, the vector has to be ordered. > */ > +static inline void * > +vector_bsearch(const struct vector *vec, const void *key, > + int (*cmp)(const void *a, const void *b)) > +{ > + if (vec->len) { > + return bsearch(key, vec->buffer, vec->len, vec->esize, cmp); > + } > + > + return NULL; > +} > + > /* Returns the size of allocated space for the vector elements in bytes. */ > static inline size_t > vector_memory_usage(struct vector *vec) > -- > 2.53.0 > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev >
_______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
