summaryrefslogtreecommitdiff
path: root/python/m5/smartdict.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/m5/smartdict.py')
-rw-r--r--python/m5/smartdict.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/python/m5/smartdict.py b/python/m5/smartdict.py
index 4ea8210d3..1ba5d8410 100644
--- a/python/m5/smartdict.py
+++ b/python/m5/smartdict.py
@@ -74,6 +74,12 @@ class SmartDict(dict):
return other / self.convert(other)
+ # __getitem__ uses dict.get() to return 'False' if the key is not
+ # found (rather than raising KeyError). Note that this does *not*
+ # set the key's value to 'False' in the dict, so that even after
+ # we call env['foo'] we still get a meaningful answer from "'foo'
+ # in env" (which calls dict.__contains__, which we do not
+ # override).
def __getitem__(self, key):
return self.Proxy(dict.get(self, key, 'False'))