Field description in compile-time schema. More...
Public Types | |
typedef Struct | struct_type |
Type of the field's parent struct. More... | |
typedef FieldType Struct::* | field_pointer |
Type of the field pointer. More... | |
typedef remove_maybe< FieldType >::type | field_type |
Type of the field. More... | |
typedef FieldType | value_type |
Type of the field value. More... | |
typedef ModifierTag | field_modifier |
Modifier tag for the field. More... | |
Static Public Member Functions | |
static const value_type & | GetVariable (const struct_type &object) |
Static method returning const reference to the field value for a particular object. More... | |
static value_type & | GetVariable (struct_type &object) |
Static method returning reference to the field value for a particular object. More... | |
Public Attributes | |
BOND_STATIC_CONSTEXPR uint16_t | id = field_id |
Static data member equal to the field ordinal. More... | |
Static Public Attributes | |
static const Metadata & | metadata = *metadata_ptr |
Static data member describing field metadata. More... | |
static const field_pointer | field = field_ptr |
Static data member representing the field pointer. More... | |
Field description in compile-time schema.
typedef ModifierTag bond::reflection::FieldTemplate< field_id, ModifierTag, Struct, FieldType, field_ptr, metadata_ptr >::field_modifier |
Modifier tag for the field.
Can be one of:
typedef FieldType Struct::* bond::reflection::FieldTemplate< field_id, ModifierTag, Struct, FieldType, field_ptr, metadata_ptr >::field_pointer |
Type of the field pointer.
typedef remove_maybe<FieldType>::type bond::reflection::FieldTemplate< field_id, ModifierTag, Struct, FieldType, field_ptr, metadata_ptr >::field_type |
Type of the field.
typedef Struct bond::reflection::FieldTemplate< field_id, ModifierTag, Struct, FieldType, field_ptr, metadata_ptr >::struct_type |
Type of the field's parent struct.
typedef FieldType bond::reflection::FieldTemplate< field_id, ModifierTag, Struct, FieldType, field_ptr, metadata_ptr >::value_type |
Type of the field value.
|
static |
Static method returning const reference to the field value for a particular object.
|
static |
Static method returning reference to the field value for a particular object.
|
static |
Static data member representing the field pointer.
BOND_STATIC_CONSTEXPR uint16_t bond::reflection::FieldTemplate< field_id, ModifierTag, Struct, FieldType, field_ptr, metadata_ptr >::id = field_id |
Static data member equal to the field ordinal.
|
static |
Static data member describing field metadata.