self.PcdValueFromFdf = ""\r
self.DefinitionPosition = ("","")\r
\r
+ @staticmethod\r
+ def GetPcdMaxSizeWorker(PcdString, MaxSize):\r
+ if PcdString.startswith("{") and PcdString.endswith("}"):\r
+ return max([len(PcdString.split(",")),MaxSize])\r
+\r
+ if PcdString.startswith("\"") or PcdString.startswith("\'"):\r
+ return max([len(PcdString)-2+1,MaxSize])\r
+\r
+ if PcdString.startswith("L\""):\r
+ return max([2*(len(PcdString)-3+1),MaxSize])\r
+\r
+ return max([len(PcdString),MaxSize])\r
+\r
## Get the maximum number of bytes\r
def GetPcdMaxSize(self):\r
if self.DatumType in TAB_PCD_NUMERIC_TYPES:\r
\r
MaxSize = int(self.MaxDatumSize, 10) if self.MaxDatumSize else 0\r
if self.PcdValueFromFdf:\r
- if self.PcdValueFromFdf.startswith("{") and self.PcdValueFromFdf.endswith("}"):\r
- MaxSize = max([len(self.PcdValueFromFdf.split(",")),MaxSize])\r
- elif self.PcdValueFromFdf.startswith("\"") or self.PcdValueFromFdf.startswith("\'"):\r
- MaxSize = max([len(self.PcdValueFromFdf)-2+1,MaxSize])\r
- elif self.PcdValueFromFdf.startswith("L\""):\r
- MaxSize = max([2*(len(self.PcdValueFromFdf)-3+1),MaxSize])\r
- else:\r
- MaxSize = max([len(self.PcdValueFromFdf),MaxSize])\r
-\r
+ MaxSize = self.GetPcdMaxSizeWorker(self.PcdValueFromFdf,MaxSize)\r
if self.PcdValueFromComm:\r
- if self.PcdValueFromComm.startswith("{") and self.PcdValueFromComm.endswith("}"):\r
- return max([len(self.PcdValueFromComm.split(",")), MaxSize])\r
- elif self.PcdValueFromComm.startswith("\"") or self.PcdValueFromComm.startswith("\'"):\r
- return max([len(self.PcdValueFromComm)-2+1, MaxSize])\r
- elif self.PcdValueFromComm.startswith("L\""):\r
- return max([2*(len(self.PcdValueFromComm)-3+1), MaxSize])\r
- else:\r
- return max([len(self.PcdValueFromComm), MaxSize])\r
+ MaxSize = self.GetPcdMaxSizeWorker(self.PcdValueFromComm,MaxSize)\r
+ if hasattr(self, "DefaultValueFromDec"):\r
+ MaxSize = self.GetPcdMaxSizeWorker(self.DefaultValueFromDec,MaxSize)\r
return MaxSize\r
\r
## Get the number of bytes\r