This header-file is part of module ALib Lang of the ALib C++ Library.
© 2013-2025 A-Worx GmbH, Germany. Published under Boost Software License.
Definition in file bits.inl.
Go to the source code of this file.
Namespaces | |
namespace | alib |
namespace | alib::lang |
Typedefs | |
using | alib::lang::ShiftOpRHS = int |
Functions | |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::BitCount (TIntegral value) |
template<typename T> | |
constexpr int | alib::lang::bitsofval (const T &val) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::CLZ (TIntegral value) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::CLZ0 (TIntegral value) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::CTZ (TIntegral value) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::CTZ0 (TIntegral value) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::Log2OfSize () |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr TIntegral | alib::lang::LowerBits (ShiftOpRHS width, TIntegral value) |
template<ShiftOpRHS TWidth, typename TIntegral> requires std::integral<TIntegral> | |
constexpr TIntegral | alib::lang::LowerBits (TIntegral value) |
template<ShiftOpRHS TWidth, typename TIntegral> requires ( std::is_integral<TIntegral>::value && TWidth < bitsof(TIntegral) ) | |
constexpr TIntegral | alib::lang::LowerMask () |
template<ShiftOpRHS TWidth, typename TIntegral> requires ( std::is_integral<TIntegral>::value && TWidth >= bitsof(TIntegral) ) | |
constexpr TIntegral | alib::lang::LowerMask () |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr TIntegral | alib::lang::LowerMask (ShiftOpRHS width) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::MSB (TIntegral value) |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr int | alib::lang::MSB0 (TIntegral value) |
template<ShiftOpRHS TWidth, typename TIntegral> requires ( std::is_integral<TIntegral>::value && TWidth < bitsof(TIntegral) ) | |
constexpr TIntegral | alib::lang::UpperMask () |
template<ShiftOpRHS TWidth, typename TIntegral> requires ( std::is_integral<TIntegral>::value && TWidth >= bitsof(TIntegral) ) | |
constexpr TIntegral | alib::lang::UpperMask () |
template<typename TIntegral> requires std::integral<TIntegral> | |
constexpr TIntegral | alib::lang::UpperMask (ShiftOpRHS width) |