aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/private/SkTHash.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/private/SkTHash.h')
-rw-r--r--include/private/SkTHash.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/private/SkTHash.h b/include/private/SkTHash.h
index ffcdea5329..561fc89b59 100644
--- a/include/private/SkTHash.h
+++ b/include/private/SkTHash.h
@@ -35,6 +35,9 @@ public:
// How many entries are in the table?
int count() const { return fCount; }
+ // Approximately how many bytes of memory do we use beyond sizeof(*this)?
+ size_t approxBytesUsed() const { return fCapacity * sizeof(Slot); }
+
// !!!!!!!!!!!!!!!!! CAUTION !!!!!!!!!!!!!!!!!
// set(), find() and foreach() all allow mutable access to table entries.
// If you change an entry so that it no longer has the same key, all hell
@@ -199,6 +202,9 @@ public:
// How many key/value pairs are in the table?
int count() const { return fTable.count(); }
+ // Approximately how many bytes of memory do we use beyond sizeof(*this)?
+ size_t approxBytesUsed() const { return fTable.approxBytesUsed(); }
+
// N.B. The pointers returned by set() and find() are valid only until the next call to set().
// Set key to val in the table, replacing any previous value with the same key.
@@ -259,6 +265,9 @@ public:
// How many items are in the set?
int count() const { return fTable.count(); }
+ // Approximately how many bytes of memory do we use beyond sizeof(*this)?
+ size_t approxBytesUsed() const { return fTable.approxBytesUsed(); }
+
// Copy an item into the set.
void add(const T& item) { fTable.set(item); }