[edk2] [PATCH v1 25/27] BaseTools: AutoGen - use defaultdict to auto initialize

Jaben Carsey posted 27 patches 7 years, 9 months ago
[edk2] [PATCH v1 25/27] BaseTools: AutoGen - use defaultdict to auto initialize
Posted by Jaben Carsey 7 years, 9 months ago
Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
---
 BaseTools/Source/Python/AutoGen/GenVar.py | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/BaseTools/Source/Python/AutoGen/GenVar.py b/BaseTools/Source/Python/AutoGen/GenVar.py
index 37c168a84b43..99c6ed640c00 100644
--- a/BaseTools/Source/Python/AutoGen/GenVar.py
+++ b/BaseTools/Source/Python/AutoGen/GenVar.py
@@ -128,7 +128,7 @@ class VariableMgr(object):
         return var_value
     def process_variable_data(self):
 
-        var_data = dict()
+        var_data = collections.defaultdict(collections.OrderedDict)
 
         indexedvarinfo = collections.OrderedDict()
         for item in self.VarInfo:
@@ -155,8 +155,6 @@ class VariableMgr(object):
             for item in default_data_buffer:
                 default_data_array += unpack("B",item)
 
-            if (DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT) not in var_data:
-                var_data[(DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT)] = collections.OrderedDict()
             var_data[(DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT)][index] = (default_data_buffer,sku_var_info[(DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT)])
 
             for (skuid,defaultstoragename) in indexedvarinfo.get(index):
@@ -177,8 +175,6 @@ class VariableMgr(object):
 
                 data_delta = self.calculate_delta(default_data_array, others_data_array)
 
-                if (skuid,defaultstoragename) not in var_data:
-                    var_data[(skuid,defaultstoragename)] = collections.OrderedDict()
                 var_data[(skuid,defaultstoragename)][index] = (data_delta,sku_var_info[(skuid,defaultstoragename)])
         return var_data
 
-- 
2.16.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v1 25/27] BaseTools: AutoGen - use defaultdict to auto initialize
Posted by Zhu, Yonghong 7 years, 9 months ago
Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> 

Best Regards,
Zhu Yonghong


-----Original Message-----
From: Carsey, Jaben 
Sent: Friday, April 20, 2018 11:52 PM
To: edk2-devel@lists.01.org
Cc: Gao, Liming <liming.gao@intel.com>; Zhu, Yonghong <yonghong.zhu@intel.com>
Subject: [PATCH v1 25/27] BaseTools: AutoGen - use defaultdict to auto initialize

Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
---
 BaseTools/Source/Python/AutoGen/GenVar.py | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/BaseTools/Source/Python/AutoGen/GenVar.py b/BaseTools/Source/Python/AutoGen/GenVar.py
index 37c168a84b43..99c6ed640c00 100644
--- a/BaseTools/Source/Python/AutoGen/GenVar.py
+++ b/BaseTools/Source/Python/AutoGen/GenVar.py
@@ -128,7 +128,7 @@ class VariableMgr(object):
         return var_value
     def process_variable_data(self):
 
-        var_data = dict()
+        var_data = collections.defaultdict(collections.OrderedDict)
 
         indexedvarinfo = collections.OrderedDict()
         for item in self.VarInfo:
@@ -155,8 +155,6 @@ class VariableMgr(object):
             for item in default_data_buffer:
                 default_data_array += unpack("B",item)
 
-            if (DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT) not in var_data:
-                var_data[(DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT)] = collections.OrderedDict()
             var_data[(DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT)][index] = (default_data_buffer,sku_var_info[(DataType.TAB_DEFAULT,DataType.TAB_DEFAULT_STORES_DEFAULT)])
 
             for (skuid,defaultstoragename) in indexedvarinfo.get(index):
@@ -177,8 +175,6 @@ class VariableMgr(object):
 
                 data_delta = self.calculate_delta(default_data_array, others_data_array)
 
-                if (skuid,defaultstoragename) not in var_data:
-                    var_data[(skuid,defaultstoragename)] = collections.OrderedDict()
                 var_data[(skuid,defaultstoragename)][index] = (data_delta,sku_var_info[(skuid,defaultstoragename)])
         return var_data
 
-- 
2.16.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel