1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-22 17:35:59 +03:00

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'.
This commit is contained in:
Dave Wysochanski 2010-10-21 14:49:43 +00:00
parent d53d92f2e1
commit 60fc088d70
2 changed files with 11 additions and 13 deletions

View File

@ -25,7 +25,7 @@ static int _ ## NAME ## _get (const void *obj, struct lvm_property_type *prop) \
{ \ { \
const struct TYPE *VAR = (const struct TYPE *)obj; \ const struct TYPE *VAR = (const struct TYPE *)obj; \
\ \
prop->v.n_val = VALUE; \ prop->value.integer = VALUE; \
return 1; \ return 1; \
} }
#define GET_VG_NUM_PROPERTY_FN(NAME, VALUE) \ #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; \ const struct TYPE *VAR = (const struct TYPE *)obj; \
\ \
prop->v.s_val = (char *)VALUE; \ prop->value.string = (char *)VALUE; \
return 1; \ return 1; \
} }
#define GET_VG_STR_PROPERTY_FN(NAME, VALUE) \ #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 STR DM_REPORT_FIELD_TYPE_STRING
#define NUM DM_REPORT_FIELD_TYPE_NUMBER #define NUM DM_REPORT_FIELD_TYPE_NUMBER
#define FIELD(type, strct, sorttype, head, field, width, fn, id, desc, writeable) \ #define FIELD(type, strct, sorttype, head, field, width, fn, id, desc, settable) \
{ type, #id, writeable, sorttype == STR, { .n_val = 0 }, _ ## id ## _get, _ ## id ## _set }, { type, #id, settable, sorttype == STR, { .integer = 0 }, _ ## id ## _get, _ ## id ## _set },
struct lvm_property_type _properties[] = { struct lvm_property_type _properties[] = {
#include "columns.h" #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 #undef STR

View File

@ -19,17 +19,15 @@
#include "metadata.h" #include "metadata.h"
#include "report.h" #include "report.h"
#define LVM_PROPERTY_NAME_LEN DM_REPORT_FIELD_TYPE_ID_LEN
struct lvm_property_type { struct lvm_property_type {
report_type_t type; report_type_t type;
char id[LVM_PROPERTY_NAME_LEN]; const char *id;
unsigned is_writeable; unsigned is_settable:1;
unsigned is_string; unsigned is_string:1;
union { union {
char *s_val; char *string;
uint64_t n_val; uint64_t integer;
} v; } value;
int (*get) (const void *obj, struct lvm_property_type *prop); int (*get) (const void *obj, struct lvm_property_type *prop);
int (*set) (void *obj, struct lvm_property_type *prop); int (*set) (void *obj, struct lvm_property_type *prop);
}; };