]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/AutoGen/ValidCheckingInfoObject.py
BaseTools: AutoGen - refactor out a list
[mirror_edk2.git] / BaseTools / Source / Python / AutoGen / ValidCheckingInfoObject.py
index 2f8f4fac23f8c59ac9b2392ac172e1d0f80ef4d9..b491b68f6e87022b27315750a5d8fbc16d4e9413 100644 (file)
@@ -244,16 +244,12 @@ class VAR_CHECK_PCD_VALID_OBJ(object):
         self.Type = 1\r
         self.Length = 0  # Length include this header\r
         self.VarOffset = VarOffset\r
-        self.StorageWidth = 0\r
         self.PcdDataType = PcdDataType.strip()\r
         self.rawdata = data\r
         self.data = set()\r
-        self.ValidData = True\r
-        self.updateStorageWidth()\r
-\r
-    def updateStorageWidth(self):\r
         try:\r
             self.StorageWidth = MAX_SIZE_TYPE[self.PcdDataType]\r
+            self.ValidData = True\r
         except:\r
             self.StorageWidth = 0\r
             self.ValidData = False\r
@@ -265,11 +261,7 @@ class VAR_CHECK_PCD_VALID_LIST(VAR_CHECK_PCD_VALID_OBJ):
     def __init__(self, VarOffset, validlist, PcdDataType):\r
         super(VAR_CHECK_PCD_VALID_LIST, self).__init__(VarOffset, validlist, PcdDataType)\r
         self.Type = 1\r
-        self.update_data()\r
-        self.update_size()\r
-    def update_data(self):\r
         valid_num_list = []\r
-        data_list = []\r
         for item in self.rawdata:\r
             valid_num_list.extend(item.split(','))\r
         \r
@@ -277,14 +269,11 @@ class VAR_CHECK_PCD_VALID_LIST(VAR_CHECK_PCD_VALID_OBJ):
             valid_num = valid_num.strip()\r
 \r
             if valid_num.startswith('0x') or valid_num.startswith('0X'):\r
-                data_list.append(int(valid_num, 16))\r
+                self.data.add(int(valid_num, 16))\r
             else:\r
-                data_list.append(int(valid_num))\r
+                self.data.add(int(valid_num))\r
 \r
                 \r
-        self.data = set(data_list)\r
-        \r
-    def update_size(self):\r
         self.Length = 5 + len(self.data) * self.StorageWidth\r
         \r
            \r
@@ -292,11 +281,7 @@ class VAR_CHECK_PCD_VALID_RANGE(VAR_CHECK_PCD_VALID_OBJ):
     def __init__(self, VarOffset, validrange, PcdDataType):\r
         super(VAR_CHECK_PCD_VALID_RANGE, self).__init__(VarOffset, validrange, PcdDataType)\r
         self.Type = 2\r
-        self.update_data()\r
-        self.update_size()\r
-    def update_data(self):\r
         RangeExpr = ""\r
-        data_list = []\r
         i = 0\r
         for item in self.rawdata:\r
             if i == 0:\r
@@ -306,10 +291,7 @@ class VAR_CHECK_PCD_VALID_RANGE(VAR_CHECK_PCD_VALID_OBJ):
         range_result = RangeExpression(RangeExpr, self.PcdDataType)(True)\r
         for rangelist in range_result:\r
             for obj in rangelist.pop():\r
-                data_list.append((obj.start, obj.end))\r
-        self.data = set(data_list)\r
-    \r
-    def update_size(self):\r
+                self.data.add((obj.start, obj.end))\r
         self.Length = 5 + len(self.data) * 2 * self.StorageWidth\r
         \r
 \r