21#include <document.hxx>
28 mfVal(0.0), mbAlloc(false), mbString(false)
43 SAL_WARN(
"sc.core",
"ScLookupCache::QueryCriteria not prepared for this ScQueryOp");
91 [&rCriteria](
const std::pair<QueryKey, QueryCriteriaAndResult>& rEntry) {
92 return rEntry.second.maCriteria == rCriteria;
95 return it->first.mnRow;
103 const bool bAvailable )
119 if (rHint.
GetId() == SfxHintId::ScDataChanged || rHint.
GetId() == SfxHintId::ScAreaChanged)
void RemoveLookupCache(ScLookupCache &rCache)
Only ScLookupCache dtor uses RemoveLookupCache(), do not use elsewhere!
bool IsInDtorClear() const
QueryOp getQueryOp() const
void setDouble(double fVal)
void setString(const OUString &rStr)
QueryCriteria(const ScQueryEntry &rEntry)
std::unordered_map< QueryKey, QueryCriteriaAndResult, QueryKey::Hash > maQueryMap
virtual void Notify(const SfxHint &rHint) override
Remove from document structure and delete (!) cache on modify hint.
bool insert(const ScAddress &rResultAddress, const QueryCriteria &rCriteria, const ScAddress &rQueryAddress, const bool bAvailable)
Insert query and result.
@ FOUND
Criteria not available in lookup range.
@ CRITERIA_DIFFERENT
Query not found in cache.
@ NOT_AVAILABLE
Different criteria for same query position exists.
Result lookup(ScAddress &o_rResultAddress, const QueryCriteria &rCriteria, const ScAddress &rQueryAddress) const
const OUString & getString() const
#define SAL_WARN(area, stream)
svl::SharedString maString
Each instance of this struct represents a single filtering criteria.
const Item & GetQueryItem() const