## @file\r
# This file is used to define common parsing related functions used in parsing INF/DEC/DSC process\r
#\r
-# Copyright (c) 2008 - 2014, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.<BR>\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
# which accompanies this distribution. The full text of the license may be found at\r
##\r
# Import Modules\r
#\r
-from String import *\r
+from StringUtils import *\r
from CommonDataClass.DataClass import *\r
from DataType import *\r
\r
#\r
# Overrided by Global Macros\r
#\r
- for Key in GlobalMacro.keys():\r
- Macros[Key] = GlobalMacro[Key]\r
+ Macros.update(GlobalMacro)\r
\r
#\r
# Replace the Macros\r
#\r
- for Key in RecordSets.keys():\r
- if RecordSets[Key] != []:\r
- for Item in RecordSets[Key]:\r
- Item[0] = ReplaceMacro(Item[0], Macros)\r
+ for Value in (v for v in RecordSets.values() if v):\r
+ for Item in Value:\r
+ Item[0] = ReplaceMacro(Item[0], Macros)\r
\r
## ParseDefineMacro\r
#\r
#\r
# Overrided by Global Macros\r
#\r
- for Key in GlobalMacro.keys():\r
- Macros[Key] = GlobalMacro[Key]\r
+ Macros.update(GlobalMacro)\r
\r
#\r
# Found all defined macro and replaced\r
#\r
def CheckPcdTokenInfo(TokenInfoString, Section, File, LineNo = -1):\r
Format = '<TokenSpaceGuidCName>.<PcdCName>'\r
- if TokenInfoString != '' and TokenInfoString != None:\r
+ if TokenInfoString != '' and TokenInfoString is not None:\r
TokenInfoList = GetSplitValueList(TokenInfoString, TAB_SPLIT)\r
if len(TokenInfoList) == 2:\r
return True\r
LineList = Lines.split('\n')\r
for Line in LineList:\r
Line = CleanString(Line, CommentCharacter)\r
- if Line == None or Line == '':\r
+ if Line is None or Line == '':\r
continue\r
\r
if findBlock == False:\r