From 60fc088d7033c85bc393a271b4d9572f2018ff88 Mon Sep 17 00:00:00 2001 From: Dave Wysochanski Date: Thu, 21 Oct 2010 14:49:43 +0000 Subject: [PATCH] Rename fields in lvm_property_type. Based on review comments, rename a few fields in lvm_property_type. In particular, change 'is_writeable' to 'is_settable', which is more intuitive to the intent of the bitfield (a 'set' function exists for this field/property). Also, remove the char array for 'id' - unnecessary as we can just use the string passed in to do the strcmp. Finally rename the union members from n_val to 'integer' and 's_val' to 'string'. --- lib/report/properties.c | 10 +++++----- lib/report/properties.h | 14 ++++++-------- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/lib/report/properties.c b/lib/report/properties.c index 587f11d6d..8f9272c2f 100644 --- a/lib/report/properties.c +++ b/lib/report/properties.c @@ -25,7 +25,7 @@ static int _ ## NAME ## _get (const void *obj, struct lvm_property_type *prop) \ { \ const struct TYPE *VAR = (const struct TYPE *)obj; \ \ - prop->v.n_val = VALUE; \ + prop->value.integer = VALUE; \ return 1; \ } #define GET_VG_NUM_PROPERTY_FN(NAME, VALUE) \ @@ -40,7 +40,7 @@ static int _ ## NAME ## _get (const void *obj, struct lvm_property_type *prop) \ { \ const struct TYPE *VAR = (const struct TYPE *)obj; \ \ - prop->v.s_val = (char *)VALUE; \ + prop->value.string = (char *)VALUE; \ return 1; \ } #define GET_VG_STR_PROPERTY_FN(NAME, VALUE) \ @@ -226,12 +226,12 @@ GET_VG_NUM_PROPERTY_FN(vg_mda_copies, (vg_mda_copies(vg))) #define STR DM_REPORT_FIELD_TYPE_STRING #define NUM DM_REPORT_FIELD_TYPE_NUMBER -#define FIELD(type, strct, sorttype, head, field, width, fn, id, desc, writeable) \ - { type, #id, writeable, sorttype == STR, { .n_val = 0 }, _ ## id ## _get, _ ## id ## _set }, +#define FIELD(type, strct, sorttype, head, field, width, fn, id, desc, settable) \ + { type, #id, settable, sorttype == STR, { .integer = 0 }, _ ## id ## _get, _ ## id ## _set }, struct lvm_property_type _properties[] = { #include "columns.h" - { 0, "", 0, 0, { .n_val = 0 }, _not_implemented_get, _not_implemented_set }, + { 0, "", 0, 0, { .integer = 0 }, _not_implemented_get, _not_implemented_set }, }; #undef STR diff --git a/lib/report/properties.h b/lib/report/properties.h index 7398f2ff8..db4ae516f 100644 --- a/lib/report/properties.h +++ b/lib/report/properties.h @@ -19,17 +19,15 @@ #include "metadata.h" #include "report.h" -#define LVM_PROPERTY_NAME_LEN DM_REPORT_FIELD_TYPE_ID_LEN - struct lvm_property_type { report_type_t type; - char id[LVM_PROPERTY_NAME_LEN]; - unsigned is_writeable; - unsigned is_string; + const char *id; + unsigned is_settable:1; + unsigned is_string:1; union { - char *s_val; - uint64_t n_val; - } v; + char *string; + uint64_t integer; + } value; int (*get) (const void *obj, struct lvm_property_type *prop); int (*set) (void *obj, struct lvm_property_type *prop); }; -- 2.43.5