checkCacheLimit method
Checks if this Map.length is bigger than cacheLimit
and
removes elements to not exceed the cacheLimit
.
Implementation
int checkCacheLimit(int? cacheLimit) {
if (cacheLimit == null) return 0;
if (cacheLimit <= 0) {
var length = this.length;
clear();
return length;
}
var deleted = 0;
while (true) {
var length = this.length;
if (length == 0 || length <= cacheLimit) {
break;
}
var k = keys.first;
remove(k);
var lng = this.length;
if (lng >= length) break;
deleted++;
}
return deleted;
}