aboutsummaryrefslogtreecommitdiffstats
path: root/chilbert/StaticBitVec.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2018-08-19 18:22:26 +0200
committerDavid Robillard <d@drobilla.net>2018-09-29 14:50:07 +0200
commitac65326242af579d6e1a7bd71730f1c78c8bde9b (patch)
treeae5225c4b9856b3e5d454378d00867d9b0c53d26 /chilbert/StaticBitVec.hpp
parent7567f77828ff9661f85eabe3b4cfb1876b307d42 (diff)
downloadchilbert-ac65326242af579d6e1a7bd71730f1c78c8bde9b.tar.gz
chilbert-ac65326242af579d6e1a7bd71730f1c78c8bde9b.tar.bz2
chilbert-ac65326242af579d6e1a7bd71730f1c78c8bde9b.zip
Reorganize headers to make a clear public/private distinction
Diffstat (limited to 'chilbert/StaticBitVec.hpp')
-rw-r--r--chilbert/StaticBitVec.hpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/chilbert/StaticBitVec.hpp b/chilbert/StaticBitVec.hpp
index 66d136a..9aff3ad 100644
--- a/chilbert/StaticBitVec.hpp
+++ b/chilbert/StaticBitVec.hpp
@@ -19,11 +19,11 @@
#ifndef CHILBERT_STATICBITVEC_HPP
#define CHILBERT_STATICBITVEC_HPP
-#include "chilbert/BitVecIndex.hpp"
-#include "chilbert/BitVecIterator.hpp"
-#include "chilbert/BitVecMask.hpp"
-#include "chilbert/MultiBitVec.hpp"
-#include "chilbert/Operations.hpp"
+#include "chilbert/detail/BitVecIndex.hpp"
+#include "chilbert/detail/BitVecIterator.hpp"
+#include "chilbert/detail/BitVecMask.hpp"
+#include "chilbert/detail/MultiBitVec.hpp"
+#include "chilbert/detail/operations.hpp"
#include <algorithm>
#include <array>
@@ -43,12 +43,12 @@ namespace chilbert {
* @tparam N Number of bits.
*/
template <size_t N>
-class StaticBitVec : public MultiBitVec<StaticBitVec<N>>
+class StaticBitVec : public detail::MultiBitVec<StaticBitVec<N>>
{
public:
- using Rack = typename MultiBitVec<StaticBitVec<N>>::Rack;
+ using Rack = typename detail::MultiBitVec<StaticBitVec<N>>::Rack;
- using MultiBitVec<StaticBitVec<N>>::bits_per_rack;
+ using detail::MultiBitVec<StaticBitVec<N>>::bits_per_rack;
StaticBitVec() = default;
@@ -91,6 +91,8 @@ private:
std::array<Rack, num_racks()> m_racks{};
};
+namespace detail {
+
template <size_t N>
struct is_bitvec<StaticBitVec<N>>
{
@@ -111,6 +113,8 @@ gray_code_inv(StaticBitVec<N>& value)
gray_code_inv(static_cast<MultiBitVec<StaticBitVec<N>>&>(value));
}
+} // namespace detail
+
} // namespace chilbert
#endif