Files
2023-09-03 19:18:13 -04:00

28 lines
729 B
Plaintext

#include <msl_int_limits>
#include <cstddef>
namespace std {
template<size_t N>
class __bitset_base {
public:
__bitset_base();
__bitset_base(unsigned long);
__bitset_base& set(size_t, bool);
__bitset_base& reset(size_t);
bool test(size_t) const;
private:
static const size_t num_bits_word = __char<>::bits * sizeof(unsigned long);
static const size_t nwords_ = N;
unsigned long data_[N];
};
template<size_t N>
class bitset : private __bitset_base<N == 0 ? 1 : (N - 1) / (__char<>::bits * sizeof(unsigned long) + 1) {
typedef __bitset_base<N == 0 ? 1 : (N - 1) / (__char<>::bits * sizeof(unsigned long)) + 1> base;
}
};