From: Clifford Wolf Date: Wed, 2 Dec 2015 19:41:57 +0000 (+0100) Subject: Added default values for hashlib at() methods X-Git-Tag: yosys-0.6~54 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=33a5b28e2512a17667bb1a1cab9065f723a86041;p=yosys.git Added default values for hashlib at() methods --- diff --git a/kernel/hashlib.h b/kernel/hashlib.h index 413e77d31..f015bf4dd 100644 --- a/kernel/hashlib.h +++ b/kernel/hashlib.h @@ -506,6 +506,15 @@ public: return entries[i].udata.second; } + T at(const K &key, const T &defval) const + { + int hash = do_hash(key); + int i = do_lookup(key, hash); + if (i < 0) + return defval; + return entries[i].udata.second; + } + T& operator[](const K &key) { int hash = do_hash(key); @@ -896,6 +905,15 @@ public: return i + offset; } + int at(const K &key, int defval) const + { + int hash = database.do_hash(key); + int i = database.do_lookup(key, hash); + if (i < 0) + return defval; + return i + offset; + } + int count(const K &key) const { int hash = database.do_hash(key);