OmniSciDB  04ee39c94c
anonymous_namespace{BufferEntryUtils.h} Namespace Reference

Functions

template<class K >
INLINE DEVICE bool is_empty_entry (const size_t entry_idx, const int8_t *groupby_buffer, const size_t key_stride)
 
template<>
INLINE DEVICE bool is_empty_entry< int32_t > (const size_t entry_idx, const int8_t *groupby_buffer, const size_t key_stride)
 
template<>
INLINE DEVICE bool is_empty_entry< int64_t > (const size_t entry_idx, const int8_t *groupby_buffer, const size_t key_stride)
 

Function Documentation

◆ is_empty_entry()

template<class K >
INLINE DEVICE bool anonymous_namespace{BufferEntryUtils.h}::is_empty_entry ( const size_t  entry_idx,
const int8_t *  groupby_buffer,
const size_t  key_stride 
)

◆ is_empty_entry< int32_t >()

template<>
INLINE DEVICE bool anonymous_namespace{BufferEntryUtils.h}::is_empty_entry< int32_t > ( const size_t  entry_idx,
const int8_t *  groupby_buffer,
const size_t  key_stride 
)

Definition at line 47 of file BufferEntryUtils.h.

References EMPTY_KEY_32.

49  {
50  const auto key_ptr = groupby_buffer + entry_idx * key_stride;
51  return (*reinterpret_cast<const int32_t*>(key_ptr) == EMPTY_KEY_32);
52 }
#define EMPTY_KEY_32

◆ is_empty_entry< int64_t >()

template<>
INLINE DEVICE bool anonymous_namespace{BufferEntryUtils.h}::is_empty_entry< int64_t > ( const size_t  entry_idx,
const int8_t *  groupby_buffer,
const size_t  key_stride 
)

Definition at line 55 of file BufferEntryUtils.h.

References EMPTY_KEY_64.

57  {
58  const auto key_ptr = groupby_buffer + entry_idx * key_stride;
59  return (*reinterpret_cast<const int64_t*>(key_ptr) == EMPTY_KEY_64);
60 }
#define EMPTY_KEY_64