summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source/Python/Workspace/BuildClassObject.py
diff options
context:
space:
mode:
authorBobCF <bob.c.feng@intel.com>2018-09-25 13:20:46 +0800
committerLiming Gao <liming.gao@intel.com>2018-09-26 22:50:36 +0800
commit57ee97c01ca0e81d146600a00885719b84bf1581 (patch)
tree678a1b4e02cfda40bcb6659236f784f9b7e98e76 /BaseTools/Source/Python/Workspace/BuildClassObject.py
parentf27e800a99866543a4bfc36088bcbb7b81f33a99 (diff)
downloadedk2-57ee97c01ca0e81d146600a00885719b84bf1581.tar.gz
edk2-57ee97c01ca0e81d146600a00885719b84bf1581.tar.bz2
edk2-57ee97c01ca0e81d146600a00885719b84bf1581.zip
BaseTool: Replace dict with OrderedDict.
Replace dict with OrderedDict for PCD so that the pcd list has same order. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Workspace/BuildClassObject.py')
-rw-r--r--BaseTools/Source/Python/Workspace/BuildClassObject.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/BaseTools/Source/Python/Workspace/BuildClassObject.py b/BaseTools/Source/Python/Workspace/BuildClassObject.py
index e93ff1dd32..57ba73c498 100644
--- a/BaseTools/Source/Python/Workspace/BuildClassObject.py
+++ b/BaseTools/Source/Python/Workspace/BuildClassObject.py
@@ -13,7 +13,11 @@
from collections import OrderedDict, namedtuple
from Common.DataType import *
-
+import collections
+import re
+from collections import OrderedDict
+StructPattern = re.compile(r'[_a-zA-Z][0-9A-Za-z_\[\]]*$')
+ArrayIndex = re.compile("\[\s*\d{0,1}\s*\]")
## PcdClassObject
#
# This Class is used for PcdObject
@@ -41,7 +45,7 @@ from Common.DataType import *
# @var Phase: To store value for Phase, default is "DXE"
#
class PcdClassObject(object):
- def __init__(self, Name = None, Guid = None, Type = None, DatumType = None, Value = None, Token = None, MaxDatumSize = None, SkuInfoList = {}, IsOverrided = False, GuidValue = None, validateranges = [], validlists = [], expressions = [], IsDsc = False, UserDefinedDefaultStoresFlag = False):
+ def __init__(self, Name = None, Guid = None, Type = None, DatumType = None, Value = None, Token = None, MaxDatumSize = None, SkuInfoList = None, IsOverrided = False, GuidValue = None, validateranges = None, validlists = None, expressions = None, IsDsc = False, UserDefinedDefaultStoresFlag = False):
self.TokenCName = Name
self.TokenSpaceGuidCName = Guid
self.TokenSpaceGuidValue = GuidValue
@@ -51,15 +55,15 @@ class PcdClassObject(object):
self.TokenValue = Token
self.MaxDatumSize = MaxDatumSize
self.MaxSizeUserSet = None
- self.SkuInfoList = SkuInfoList
+ self.SkuInfoList = SkuInfoList if SkuInfoList is not None else OrderedDict()
self.Phase = "DXE"
self.Pending = False
self.IsOverrided = IsOverrided
self.IsFromBinaryInf = False
self.IsFromDsc = False
- self.validateranges = validateranges
- self.validlists = validlists
- self.expressions = expressions
+ self.validateranges = validateranges if validateranges is not None else []
+ self.validlists = validlists if validlists is not None else []
+ self.expressions = expressions if expressions is not None else []
self.DscDefaultValue = None
self.DscRawValue = {}
if IsDsc: