From ca0a44b81218546296cad07a6a19ab892e5ce906 Mon Sep 17 00:00:00 2001 From: Lnc Date: Thu, 3 Jan 2013 17:52:27 +0100 Subject: [PATCH] Add osl_generic_number function --- include/osl/generic.h | 1 + source/generic.c | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/include/osl/generic.h b/include/osl/generic.h index 1eeb38e..61ca5e8 100644 --- a/include/osl/generic.h +++ b/include/osl/generic.h @@ -121,6 +121,7 @@ void osl_generic_free(osl_generic_p); /*+*************************************************************************** * Processing functions * *****************************************************************************/ +int osl_generic_number(osl_generic_p); osl_generic_p osl_generic_clone(osl_generic_p); int osl_generic_equal(osl_generic_p, osl_generic_p); int osl_generic_has_URI(osl_generic_p, char *); diff --git a/source/generic.c b/source/generic.c index 17325d3..d39ded9 100644 --- a/source/generic.c +++ b/source/generic.c @@ -511,6 +511,24 @@ void osl_generic_free(osl_generic_p generic) { /** + * osl_generic_number function: + * this function returns the number of statements in the generic list + * provided as parameter. + * \param[in] generic The first element of the generic list. + * \return The number of statements in the generic list. + */ +int osl_generic_number(osl_generic_p generic) { + int number = 0; + + while (generic != NULL) { + number++; + generic = generic->next; + } + return number; +} + + +/** * osl_generic_clone function: * This function builds and returns a "hard copy" (not a pointer copy) of an * osl_generic_t data structure. -- 2.11.4.GIT