21 #include <document.hxx>
28 mfVal(0.0), mbAlloc(false), mbString(false)
43 SAL_WARN(
"sc.core",
"ScLookupCache::QueryCriteria not prepared for this ScQueryOp");
102 [&rCriteria](
const std::pair<QueryKey, QueryCriteriaAndResult>& rEntry) {
103 return rEntry.second.maCriteria == rCriteria;
106 return it->first.mnRow;
114 const bool bAvailable )
119 aResult.maAddress.SetRow(-1);
ScLookupCacheMap & mCacheMap
OUString getString() const
virtual ~ScLookupCache() override
Query not found in cache.
Different criteria for same query position exists.
virtual void Notify(const SfxHint &rHint) override
Remove from document structure and delete (!) cache on modify hint.
QueryOp getQueryOp() const
const Item & GetQueryItem() const
QueryCriteria(const ScQueryEntry &rEntry)
bool insert(const ScAddress &rResultAddress, const QueryCriteria &rCriteria, const ScAddress &rQueryAddress, const bool bAvailable)
Insert query and result.
void setString(const OUString &rStr)
ScLookupCache(ScDocument *pDoc, const ScRange &rRange, ScLookupCacheMap &cacheMap)
MUST be new'd because Notify() deletes.
svl::SharedString maString
bool IsInDtorClear() const
Criteria not available in lookup range.
Result lookup(ScAddress &o_rResultAddress, const QueryCriteria &rCriteria, const ScAddress &rQueryAddress) const
#define SAL_WARN(area, stream)
void setDouble(double fVal)
Each instance of this struct represents a single filtering criteria.
void RemoveLookupCache(ScLookupCache &rCache)
Only ScLookupCache dtor uses RemoveLookupCache(), do not use elsewhere!
std::unordered_map< QueryKey, QueryCriteriaAndResult, QueryKey::Hash > maQueryMap