Ver Fonte

idf.py: Fix PropertyDict implementation

Sergei Silnov há 6 anos atrás
pai
commit
5b9e38fe4e
1 ficheiros alterados com 14 adições e 3 exclusões
  1. 14 3
      tools/idf.py

+ 14 - 3
tools/idf.py

@@ -524,9 +524,20 @@ def get_default_serial_port():
 
 
 class PropertyDict(dict):
-    def __init__(self, *args, **kwargs):
-        super(PropertyDict, self).__init__(*args, **kwargs)
-        self.__dict__ = self
+    def __getattr__(self, name):
+        if name in self:
+            return self[name]
+        else:
+            raise AttributeError("'PropertyDict' object has no attribute '%s'" % name)
+
+    def __setattr__(self, name, value):
+        self[name] = value
+
+    def __delattr__(self, name):
+        if name in self:
+            del self[name]
+        else:
+            raise AttributeError("'PropertyDict' object has no attribute '%s'" % name)
 
 
 def init_cli():