Evo C++ Library v0.5.1
Classes | Namespaces | Macros | Functions
bits.h File Reference

Evo bit manipulation. More...

#include "type.h"

Go to the source code of this file.

Classes

struct  Bits< T, TSize >
 Traits and helpers for bit manipulation. More...
 
struct  Bits< T, TSize >::IterState
 Bit array iteration state. More...
 

Namespaces

 evo
 Evo C++ Library namespace.
 

Macros

#define INCL_evo_bits_h
 

Functions

template<class T >
uint bits_clz (T mask)
 Get leading zero count on bitmask. More...
 
uint bits_clz16 (uint16 mask)
 Get leading zero count on bitmask (uint16). More...
 
uint bits_clz32 (uint32 mask)
 Get leading zero count on bitmask (uint32). More...
 
uint bits_clz64 (uint64 mask)
 Get leading zero count on bitmask (uint64). More...
 
uint bits_clz8 (uint8 mask)
 Get leading zero count on bitmask (uint8). More...
 
bool bits_cpu_popcnt ()
 Runtime check whether current CPU supports the POPCNT instruction. More...
 
template<class T >
int bits_popcount (T mask)
 Get population count (number of bits set) for value. More...
 

Detailed Description

Evo bit manipulation.

Macro Definition Documentation

◆ INCL_evo_bits_h

#define INCL_evo_bits_h