Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
duckdb::ColumnIndexHashFunction Struct Reference

Public Member Functions

uint64_t operator() (const ColumnIndex &index) const
 

Member Function Documentation

◆ operator()()

uint64_t duckdb::ColumnIndexHashFunction::operator() ( const ColumnIndex index) const
inline
60369 {
60370 auto index_hasher = std::hash<idx_t>();
60371 auto field_hasher = std::hash<string>();
60372 queue<reference<const ColumnIndex>> to_hash;
60373
60374 hash_t result = 0;
60375 to_hash.push(std::ref(index));
60376 while (!to_hash.empty()) {
60377 auto &current = to_hash.front();
60378 auto &children = current.get().GetChildIndexes();
60379 for (auto &child : children) {
60380 to_hash.push(child);
60381 }
60382
60383 if (current.get().HasPrimaryIndex()) {
60384 result ^= index_hasher(current.get().GetPrimaryIndex());
60385 } else {
60386 result ^= field_hasher(current.get().GetFieldName());
60387 }
60388 to_hash.pop();
60389 }
60390 return result;
60391 }
uint64_t hash_t
The type used for hashes.
Definition duckdb.hpp:243

The documentation for this struct was generated from the following file: