OR-Tools  9.3
bitset.h File Reference

Go to the source code of this file.

Classes

class  Bitset64< IndexType >
 
class  Bitset64< IndexType >::Iterator
 
class  BitQueue64
 
class  SparseBitset< IntegerType >
 

Namespaces

namespace  operations_research
 Collection of objects used to extend the Constraint Solver library.
 

Macros

#define USE_DEBRUIJN   true
 

Functions

uint64_t OneBit64 (int pos)
 
uint32_t OneBit32 (int pos)
 
uint64_t BitCount64 (uint64_t n)
 
uint32_t BitCount32 (uint32_t n)
 
uint64_t LeastSignificantBitWord64 (uint64_t n)
 
uint32_t LeastSignificantBitWord32 (uint32_t n)
 
int LeastSignificantBitPosition64DeBruijn (uint64_t n)
 
int LeastSignificantBitPosition64Default (uint64_t n)
 
int LeastSignificantBitPosition64 (uint64_t n)
 
int LeastSignificantBitPosition32DeBruijn (uint32_t n)
 
int LeastSignificantBitPosition32Default (uint32_t n)
 
int LeastSignificantBitPosition32 (uint32_t n)
 
int MostSignificantBitPosition64Default (uint64_t n)
 
int MostSignificantBitPosition64 (uint64_t n)
 
int MostSignificantBitPosition32Default (uint32_t n)
 
int MostSignificantBitPosition32 (uint32_t n)
 
uint64_t OneRange64 (uint64_t s, uint64_t e)
 
uint32_t OneRange32 (uint32_t s, uint32_t e)
 
uint64_t IntervalUp64 (uint64_t s)
 
uint32_t IntervalUp32 (uint32_t s)
 
uint64_t IntervalDown64 (uint64_t s)
 
uint32_t IntervalDown32 (uint32_t s)
 
uint32_t BitPos64 (uint64_t pos)
 
uint32_t BitPos32 (uint32_t pos)
 
uint64_t BitOffset64 (uint64_t pos)
 
uint32_t BitOffset32 (uint32_t pos)
 
uint64_t BitLength64 (uint64_t size)
 
uint32_t BitLength32 (uint32_t size)
 
uint64_t BitShift64 (uint64_t v)
 
uint32_t BitShift32 (uint32_t v)
 
bool IsBitSet64 (const uint64_t *const bitset, uint64_t pos)
 
bool IsBitSet32 (const uint32_t *const bitset, uint32_t pos)
 
void SetBit64 (uint64_t *const bitset, uint64_t pos)
 
void SetBit32 (uint32_t *const bitset, uint32_t pos)
 
void ClearBit64 (uint64_t *const bitset, uint64_t pos)
 
void ClearBit32 (uint32_t *const bitset, uint32_t pos)
 
uint64_t BitCountRange64 (const uint64_t *const bitset, uint64_t start, uint64_t end)
 
uint32_t BitCountRange32 (const uint32_t *const bitset, uint32_t start, uint32_t end)
 
bool IsEmptyRange64 (const uint64_t *const bitset, uint64_t start, uint64_t end)
 
bool IsEmptyRange32 (const uint32_t *const bitset, uint32_t start, uint32_t end)
 
int64_t LeastSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end)
 
int LeastSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end)
 
int64_t MostSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end)
 
int MostSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end)
 
int64_t UnsafeLeastSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end)
 
int32_t UnsafeLeastSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end)
 
int64_t UnsafeMostSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end)
 
int32_t UnsafeMostSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end)
 
uint64_t TwoBitsFromPos64 (uint64_t pos)
 

Variables

static const uint64_t kAllBits64 = uint64_t{0xFFFFFFFFFFFFFFFF}
 
static const uint64_t kAllBitsButLsb64 = uint64_t{0xFFFFFFFFFFFFFFFE}
 
static const uint32_t kAllBits32 = 0xFFFFFFFFU
 

Macro Definition Documentation

◆ USE_DEBRUIJN

#define USE_DEBRUIJN   true

Definition at line 70 of file bitset.h.