28#include <unordered_map> 
   63        StringsCaseInsensitive
 
  121    std::unordered_map<ScSortedRangeCache::HashKey, std::unique_ptr<ScSortedRangeCache>,
 
size_t hashStartColumn() const
Hash start column and start and end rows.
 
Sorted cache for one range used with interpreter functions such as VLOOKUP and MATCH.
 
ScSortedRangeCache & operator=(const ScSortedRangeCache &)=delete
 
SCROW rowForIndex(size_t index) const
 
std::vector< SCROW > mSortedRows
 
std::vector< size_t > mRowToIndex
 
virtual void Notify(const SfxHint &rHint) override
Remove from document structure and delete (!) cache on modify hint.
 
ScQueryEntry::QueryType mQueryType
 
bool isValid() const
Returns if the cache is usable.
 
ScSortedRangeCache(ScDocument *pDoc, const ScRange &rRange, const ScQueryParam ¶m, ScInterpreterContext *context, bool invalid=false)
MUST be new'd because Notify() deletes.
 
HashKey getHashKey() const
 
static HashKey makeHashKey(const ScRange &range, const ScQueryParam ¶m)
 
const std::vector< SCROW > & sortedRows() const
 
const ScRange & getRange() const
 
size_t indexForRow(SCROW row) const
 
ScSortedRangeCache(const ScSortedRangeCache &)=delete
 
std::enable_if_t<(sizeof(N)==4)> hash_combine(N &nSeed, T const *pValue, size_t nCount)
 
std::unordered_map< ScSortedRangeCache::HashKey, std::unique_ptr< ScSortedRangeCache >, ScSortedRangeCache::Hash > aCacheMap
 
ScQueryEntry::QueryType queryType
 
bool operator==(const HashKey &other) const
 
size_t operator()(const HashKey &key) const