Generated codes by RNG2C need to invoke VIR_ENUM_IMPL and VIR_ENUM_DECL.
Move them from virenum.h to internal.h for convenience.
This patch also prepares for next patch:
replacing virTristateBool/virTristateSwitch(hardcoded) with namesakes.
Signed-off-by: Shi Lei <shi_lei(a)massclouds.com>
---
src/internal.h | 19 +++++++++++++++++++
src/util/virenum.h | 18 ------------------
2 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/src/internal.h b/src/internal.h
index e181218..27e56ac 100644
--- a/src/internal.h
+++ b/src/internal.h
@@ -502,3 +502,22 @@ enum {
# define fprintf(fh, ...) g_fprintf(fh, __VA_ARGS__)
#endif /* VIR_NO_GLIB_STDIO */
+
+
+#define VIR_ENUM_IMPL(name, lastVal, ...) \
+ static const char *const name ## TypeList[] = { __VA_ARGS__ }; \
+ const char *name ## TypeToString(int type) { \
+ return virEnumToString(name ## TypeList, \
+ G_N_ELEMENTS(name ## TypeList), \
+ type); \
+ } \
+ int name ## TypeFromString(const char *type) { \
+ return virEnumFromString(name ## TypeList, \
+ G_N_ELEMENTS(name ## TypeList), \
+ type); \
+ } \
+ G_STATIC_ASSERT(G_N_ELEMENTS(name ## TypeList) == lastVal)
+
+#define VIR_ENUM_DECL(name) \
+ const char *name ## TypeToString(int type); \
+ int name ## TypeFromString(const char*type)
diff --git a/src/util/virenum.h b/src/util/virenum.h
index d74af35..24a69bd 100644
--- a/src/util/virenum.h
+++ b/src/util/virenum.h
@@ -30,24 +30,6 @@ virEnumToString(const char * const *types,
unsigned int ntypes,
int type);
-#define VIR_ENUM_IMPL(name, lastVal, ...) \
- static const char *const name ## TypeList[] = { __VA_ARGS__ }; \
- const char *name ## TypeToString(int type) { \
- return virEnumToString(name ## TypeList, \
- G_N_ELEMENTS(name ## TypeList), \
- type); \
- } \
- int name ## TypeFromString(const char *type) { \
- return virEnumFromString(name ## TypeList, \
- G_N_ELEMENTS(name ## TypeList), \
- type); \
- } \
- G_STATIC_ASSERT(G_N_ELEMENTS(name ## TypeList) == lastVal)
-
-#define VIR_ENUM_DECL(name) \
- const char *name ## TypeToString(int type); \
- int name ## TypeFromString(const char*type)
-
typedef enum {
VIR_TRISTATE_BOOL_ABSENT = 0,
VIR_TRISTATE_BOOL_YES,
--
2.17.1