File tree Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change 17
17
template <typename T, int Offset, int Bits>
18
18
struct BitFieldMember
19
19
{
20
+ T value;
21
+
20
22
static_assert (Offset + Bits <= (int ) sizeof (T) * 8 , " Member exceeds bitfield boundaries" );
21
23
static_assert (Bits < (int ) sizeof (T) * 8 , " Can't fill entire bitfield with one member" );
22
24
@@ -25,8 +27,6 @@ struct BitFieldMember
25
27
T maximum () const { return Maximum; }
26
28
T one () const { return T (1 ) << Offset; }
27
29
28
- T value;
29
-
30
30
operator T () const
31
31
{
32
32
return (value >> Offset) & Maximum;
@@ -68,15 +68,15 @@ struct BitFieldMember
68
68
template <typename T, int BaseOffset, int BitsPerItem, int NumItems>
69
69
struct BitFieldArray
70
70
{
71
+ T value;
72
+
71
73
static_assert (BaseOffset + BitsPerItem * NumItems <= (int ) sizeof (T) * 8 , " Array exceeds bitfield boundaries" );
72
74
static_assert (BitsPerItem < (int ) sizeof (T) * 8 , " Can't fill entire bitfield with one array element" );
73
75
74
76
static const T Maximum = (T(1 ) << BitsPerItem) - 1 ;
75
77
T maximum () const { return Maximum; }
76
78
int numItems () const { return NumItems; }
77
79
78
- T value;
79
-
80
80
class Element
81
81
{
82
82
private:
You can’t perform that action at this time.
0 commit comments