Przeglądaj źródła

idf.py: Fix PropertyDict implementation

Sergei Silnov 6 lat temu
rodzic
commit
9ca33a260f
1 zmienionych plików z 14 dodań i 3 usunięć
  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():