OmniSciDB  a5dc49c757
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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

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 
)
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 46 of file BufferEntryUtils.h.

References EMPTY_KEY_32.

48  {
49  const auto key_ptr = groupby_buffer + entry_idx * key_stride;
50  return (*reinterpret_cast<const int32_t*>(key_ptr) == EMPTY_KEY_32);
51 }
#define EMPTY_KEY_32
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 54 of file BufferEntryUtils.h.

References EMPTY_KEY_64.

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