48 size_t collisions, log_hashsize;
59 void dump(std::ostream &);
71 virtual size_t hashfn(
const void *)
const = 0;
72 virtual bool cmpfn(
const void *,
const void *)
const = 0;
73 virtual bool cmpfn(
const void *,
size_t)
const = 0;
74 virtual const void *getkey(uint32_t)
const = 0;
75 virtual void *getval(uint32_t) = 0;
76 virtual uint32_t limit() = 0;
77 virtual void resizedata(
size_t) = 0;
78 virtual void moveentry(
size_t,
size_t) = 0;
81 size_t find(
const void *key, lookup_cache *cache)
const;
82 size_t find_next(
const void *key, lookup_cache *cache)
const;
83 void *lookup(
const void *key, lookup_cache *cache =
nullptr);
84 void *lookup_next(
const void *key, lookup_cache *cache =
nullptr);
85 size_t hv_insert(
const void *key, lookup_cache *cache =
nullptr);
88 size_t remove(
const void *key, lookup_cache *cache =
nullptr);
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24