From bcf21c556c2bbc46a93e81a19c5f9112dfb8f2c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn=20Nieto?= Date: Thu, 28 Jul 2011 23:59:53 +0200 Subject: [PATCH] Add git_vector_foreach MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit You can use it just as you'd use a for-loop Signed-off-by: Carlos Martín Nieto --- src/vector.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/vector.h b/src/vector.h index 76778ba4e..c43a7ce07 100644 --- a/src/vector.h +++ b/src/vector.h @@ -30,6 +30,9 @@ GIT_INLINE(void *) git_vector_get(git_vector *v, unsigned int position) return (position < v->length) ? v->contents[position] : NULL; } +#define git_vector_foreach(v, iter, elem) \ + for ((iter) = 0; (iter) < (v)->length && ((elem) = (v)->contents[(iter)], 1); (iter)++ ) + int git_vector_insert(git_vector *v, void *element); int git_vector_remove(git_vector *v, unsigned int idx); void git_vector_uniq(git_vector *v);