[PATCH 4/8] Rename fields in lvm_property_type.
Petr Rockai <[email protected]>
| Newsgroups | dev.linux.lists.lvm-devel |
|---|---|
| Message-ID | <[email protected].> |
Dave Wysochanski <[email protected]> writes: > 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'. > > Signed-off-by: Dave Wysochanski <[email protected]> Reviewed-by: Petr Rockai <[email protected]> Looks good. > diff --git a/lib/report/properties.c b/lib/report/properties.c > index 587f11d..8f9272c 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 7398f2f..db4ae51 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); > };