diff options
Diffstat (limited to 'include/chilbert/detail/BitVecIndex.hpp')
-rw-r--r-- | include/chilbert/detail/BitVecIndex.hpp | 31 |
1 files changed, 15 insertions, 16 deletions
diff --git a/include/chilbert/detail/BitVecIndex.hpp b/include/chilbert/detail/BitVecIndex.hpp index c8d0469..c337c70 100644 --- a/include/chilbert/detail/BitVecIndex.hpp +++ b/include/chilbert/detail/BitVecIndex.hpp @@ -27,22 +27,21 @@ namespace chilbert { namespace detail { /// Index into a multi-rack bit vector -template <class BitVec> -struct BitVecIndex -{ - using Rack = typename BitVec::Rack; - - static constexpr size_t bits_per_rack = sizeof(Rack) * CHAR_BIT; - - explicit BitVecIndex(const size_t bits) - : rack{bits / bits_per_rack} - , bit{bits - rack * bits_per_rack} - { - assert(bit < bits_per_rack); - } - - size_t rack; - size_t bit; +template<class BitVec> +struct BitVecIndex { + using Rack = typename BitVec::Rack; + + static constexpr size_t bits_per_rack = sizeof(Rack) * CHAR_BIT; + + explicit BitVecIndex(const size_t bits) + : rack{bits / bits_per_rack} + , bit{bits - rack * bits_per_rack} + { + assert(bit < bits_per_rack); + } + + size_t rack; + size_t bit; }; } // namespace detail |