tetl 0.1.0
Embedded Template Library
Loading...
Searching...
No Matches
bitset.cpp
// SPDX-License-Identifier: BSL-1.0
// SPDX-FileCopyrightText: Copyright (C) 2021 Tobias Hienzsch
#include <etl/cassert.hpp>
#if defined(TETL_ENABLE_CXX_MODULES)
import etl;
#else
#include <etl/bitset.hpp>
#endif
auto main() -> int
{
auto bits = etl::bitset<8>();
assert(bits.none() == true);
assert(bits.any() == false);
assert(bits.all() == false);
assert(bits.test(0) == false);
bits.set(0);
assert(bits.test(0) == true);
assert(bits.count() == 1);
bits.set(1);
assert(bits.test(1) == true);
assert(bits.count() == 2);
bits.reset(1);
assert(bits.test(1) == false);
bits.reset();
assert(bits.test(0) == false);
assert(ref == false);
assert(~ref == true);
ref = true;
assert(ref == true);
assert(~ref == false);
ref.flip();
assert(ref == false);
assert(~ref == true);
return 0;
}
#define assert(...)
Definition cassert.hpp:20
The class template bitset represents a fixed-size sequence of Bits bits. Bitsets can be manipulated b...
Definition bitset.hpp:23
basic_bitset< Bits, etl::size_t >::reference reference
Definition bitset.hpp:24
constexpr auto flip() noexcept -> bitset &
Flips all bits (like operator~, but in-place).
Definition bitset.hpp:139