]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/UPT/Library/UniClassObject.py
BaseTools: Clean up source files
[mirror_edk2.git] / BaseTools / Source / Python / UPT / Library / UniClassObject.py
index a464cbf702f7eb29f6fee2679b9dceb5271af520..670cf3b4eeac19a9f945f06c575b593eed6463d0 100644 (file)
@@ -3,9 +3,9 @@
 #\r
 # Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.<BR>\r
 #\r
-# This program and the accompanying materials are licensed and made available \r
-# under the terms and conditions of the BSD License which accompanies this \r
-# distribution. The full text of the license may be found at \r
+# This program and the accompanying materials are licensed and made available\r
+# under the terms and conditions of the BSD License which accompanies this\r
+# distribution. The full text of the license may be found at\r
 # http://opensource.org/licenses/bsd-license.php\r
 #\r
 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
@@ -148,9 +148,9 @@ def GetLanguageCode1766(LangName, File=None):
         if LangName.isalpha() and gLANG_CONV_TABLE.get(LangName.lower()):\r
             return LangName\r
         else:\r
-            EdkLogger.Error("Unicode File Parser", \r
+            EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FORMAT_INVALID,\r
-                             "Invalid RFC 1766 language code : %s" % LangName, \r
+                             "Invalid RFC 1766 language code : %s" % LangName,\r
                              File)\r
     elif length == 5:\r
         if LangName[0:2].isalpha() and LangName[2] == '-':\r
@@ -167,11 +167,11 @@ def GetLanguageCode1766(LangName, File=None):
                 if Key == LangName[0:3].lower():\r
                     return Key\r
 \r
-    EdkLogger.Error("Unicode File Parser", \r
+    EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FORMAT_INVALID,\r
-                             "Invalid RFC 4646 language code : %s" % LangName, \r
+                             "Invalid RFC 4646 language code : %s" % LangName,\r
                              File)\r
-    \r
+\r
 ## GetLanguageCode\r
 #\r
 # Check the language code read from .UNI file and convert RFC 1766 codes to RFC 4646 codes if appropriate\r
@@ -191,9 +191,9 @@ def GetLanguageCode(LangName, IsCompatibleMode, File):
                 return TempLangName\r
             return LangName\r
         else:\r
-            EdkLogger.Error("Unicode File Parser", \r
+            EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FORMAT_INVALID,\r
-                             "Invalid RFC 1766 language code : %s" % LangName, \r
+                             "Invalid RFC 1766 language code : %s" % LangName,\r
                              File)\r
     if (LangName[0] == 'X' or LangName[0] == 'x') and LangName[1] == '-':\r
         return LangName\r
@@ -212,9 +212,9 @@ def GetLanguageCode(LangName, IsCompatibleMode, File):
         if LangName[0:3].isalpha() and gLANG_CONV_TABLE.get(LangName.lower()) is None and LangName[3] == '-':\r
             return LangName\r
 \r
-    EdkLogger.Error("Unicode File Parser", \r
+    EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FORMAT_INVALID,\r
-                             "Invalid RFC 4646 language code : %s" % LangName, \r
+                             "Invalid RFC 4646 language code : %s" % LangName,\r
                              File)\r
 \r
 ## FormatUniEntry\r
@@ -231,7 +231,7 @@ def FormatUniEntry(StrTokenName, TokenValueList, ContainerFile):
     PreFormatLength = 40\r
     if len(StrTokenName) > PreFormatLength:\r
         PreFormatLength = len(StrTokenName) + 1\r
-    for (Lang, Value) in TokenValueList: \r
+    for (Lang, Value) in TokenValueList:\r
         if not Value or Lang == DT.TAB_LANGUAGE_EN_X:\r
             continue\r
         if Lang == '':\r
@@ -333,15 +333,15 @@ class UniFileClassObject(object):
             except UnicodeError as Xstr:\r
                 FileIn = codecs.open(File.Path, mode='rb', encoding='utf_16_le').readlines()\r
             except:\r
-                EdkLogger.Error("Unicode File Parser", \r
-                                ToolError.FILE_OPEN_FAILURE, \r
+                EdkLogger.Error("Unicode File Parser",\r
+                                ToolError.FILE_OPEN_FAILURE,\r
                                 "File read failure: %s" % str(Xstr),\r
                                 ExtraData=File)\r
             LineNo = GetLineNo(FileIn, Line, False)\r
-            EdkLogger.Error("Unicode File Parser", \r
+            EdkLogger.Error("Unicode File Parser",\r
                              ToolError.PARSER_ERROR,\r
-                             "Wrong language definition", \r
-                             ExtraData="""%s\n\t*Correct format is like '#langdef en-US "English"'""" % Line, \r
+                             "Wrong language definition",\r
+                             ExtraData="""%s\n\t*Correct format is like '#langdef en-US "English"'""" % Line,\r
                              File = File, Line = LineNo)\r
         else:\r
             LangName = GetLanguageCode(Lang[1], self.IsCompatibleMode, self.File)\r
@@ -365,7 +365,7 @@ class UniFileClassObject(object):
         if not IsLangInDef:\r
             #\r
             # The found STRING tokens will be added into new language string list\r
-            # so that the unique STRING identifier is reserved for all languages in the package list. \r
+            # so that the unique STRING identifier is reserved for all languages in the package list.\r
             #\r
             FirstLangName = self.LanguageDef[0][0]\r
             if LangName != FirstLangName:\r
@@ -375,10 +375,10 @@ class UniFileClassObject(object):
                         OtherLang = Item.UseOtherLangDef\r
                     else:\r
                         OtherLang = FirstLangName\r
-                    self.OrderedStringList[LangName].append (StringDefClassObject(Item.StringName, \r
-                                                                                  '', \r
-                                                                                  Item.Referenced, \r
-                                                                                  Item.Token, \r
+                    self.OrderedStringList[LangName].append (StringDefClassObject(Item.StringName,\r
+                                                                                  '',\r
+                                                                                  Item.Referenced,\r
+                                                                                  Item.Token,\r
                                                                                   OtherLang))\r
                     self.OrderedStringDict[LangName][Item.StringName] = len(self.OrderedStringList[LangName]) - 1\r
         return True\r
@@ -395,7 +395,7 @@ class UniFileClassObject(object):
         if Name != '':\r
             MatchString = re.match('[A-Z0-9_]+', Name, re.UNICODE)\r
             if MatchString is None or MatchString.end(0) != len(Name):\r
-                EdkLogger.Error("Unicode File Parser", \r
+                EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FORMAT_INVALID,\r
                              'The string token name %s in UNI file %s must be upper case character.' %(Name, self.File))\r
         LanguageList = Item.split(u'#language ')\r
@@ -406,7 +406,7 @@ class UniFileClassObject(object):
                 Language = LanguageList[IndexI].split()[0]\r
                 #.replace(u'\r\n', u'')\r
                 Value = \\r
-                LanguageList[IndexI][LanguageList[IndexI].find(u'\"') + len(u'\"') : LanguageList[IndexI].rfind(u'\"')] \r
+                LanguageList[IndexI][LanguageList[IndexI].find(u'\"') + len(u'\"') : LanguageList[IndexI].rfind(u'\"')]\r
                 Language = GetLanguageCode(Language, self.IsCompatibleMode, self.File)\r
                 self.AddStringToList(Name, Language, Value)\r
 \r
@@ -424,7 +424,7 @@ class UniFileClassObject(object):
     #\r
     def PreProcess(self, File, IsIncludeFile=False):\r
         if not os.path.exists(File.Path) or not os.path.isfile(File.Path):\r
-            EdkLogger.Error("Unicode File Parser", \r
+            EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FILE_NOT_FOUND,\r
                              ExtraData=File.Path)\r
 \r
@@ -443,8 +443,8 @@ class UniFileClassObject(object):
             FileIn = codecs.open(File.Path, mode='rb', encoding='utf_16_le').readlines()\r
         except:\r
             EdkLogger.Error("Unicode File Parser", ToolError.FILE_OPEN_FAILURE, ExtraData=File.Path)\r
-        \r
-        \r
+\r
+\r
         #\r
         # get the file header\r
         #\r
@@ -467,7 +467,7 @@ class UniFileClassObject(object):
             if Line.startswith(DT.TAB_COMMENT_EDK1_SPLIT) and HeaderStart and not HeaderEnd and FirstGenHeader:\r
                 self.UniFileHeader += Line + '\r\n'\r
                 continue\r
-        \r
+\r
         #\r
         # Use unique identifier\r
         #\r
@@ -486,7 +486,7 @@ class UniFileClassObject(object):
             Line = Line.strip()\r
             #\r
             # Ignore comment line and empty line\r
-            #            \r
+            #\r
             if Line == u'' or Line.startswith(u'//'):\r
                 #\r
                 # Change the single line String entry flag status\r
@@ -528,7 +528,7 @@ class UniFileClassObject(object):
                         EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
                 else:\r
                     EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
-                    \r
+\r
             Line = Line.replace(UNICODE_WIDE_CHAR, WIDE_CHAR)\r
             Line = Line.replace(UNICODE_NARROW_CHAR, NARROW_CHAR)\r
             Line = Line.replace(UNICODE_NON_BREAKING_CHAR, NON_BREAKING_CHAR)\r
@@ -556,16 +556,16 @@ class UniFileClassObject(object):
             #\r
             if Line.startswith(u'#string') and Line.find(u'#language') == -1:\r
                 MultiLineFeedExits = True\r
-                \r
+\r
             if Line.startswith(u'#string') and Line.find(u'#language') > 0 and Line.find(u'"') < 0:\r
                 MultiLineFeedExits = True\r
-            \r
+\r
             #\r
             # Between Language entry and String entry can not contain line feed\r
             #\r
             if Line.startswith(u'#language') and len(Line.split()) == 2:\r
                 MultiLineFeedExits = True\r
-            \r
+\r
             #\r
             # Between two String entry, can not contain line feed\r
             #\r
@@ -588,7 +588,7 @@ class UniFileClassObject(object):
                 StringEntryExistsFlag = 0\r
 \r
             Lines.append(Line)\r
-        \r
+\r
         #\r
         # Convert string def format as below\r
         #\r
@@ -601,11 +601,11 @@ class UniFileClassObject(object):
         #     "Mi segunda secuencia 1"\r
         #     "Mi segunda secuencia 2"\r
         #\r
-        \r
+\r
         if not IsIncludeFile and not Lines:\r
             EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                 Message=ST.ERR_UNIPARSE_NO_SECTION_EXIST, \\r
-                ExtraData=File.Path) \r
+                ExtraData=File.Path)\r
 \r
         NewLines = []\r
         StrName = u''\r
@@ -615,7 +615,7 @@ class UniFileClassObject(object):
                 EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_STRNAME_FORMAT_ERROR % StrName.split()[1], \\r
                                 ExtraData=File.Path)\r
-                \r
+\r
             if StrName and len(StrName.split()[1].split(DT.TAB_UNDERLINE_SPLIT)) == 4:\r
                 StringTokenList = StrName.split()[1].split(DT.TAB_UNDERLINE_SPLIT)\r
                 if (StringTokenList[3].upper() in [DT.TAB_STR_TOKENPROMPT, DT.TAB_STR_TOKENHELP] and \\r
@@ -624,19 +624,19 @@ class UniFileClassObject(object):
                     EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_STRTOKEN_FORMAT_ERROR % StrName.split()[1], \\r
                                 ExtraData=File.Path)\r
-                    \r
+\r
             if Line.count(u'#language') > 1:\r
                 EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_SEP_LANGENTRY_LINE % Line, \\r
-                                ExtraData=File.Path) \r
-            \r
+                                ExtraData=File.Path)\r
+\r
             if Line.startswith(u'//'):\r
                 continue\r
             elif Line.startswith(u'#langdef'):\r
                 if len(Line.split()) == 2:\r
                     NewLines.append(Line)\r
                     continue\r
-                elif len(Line.split()) > 2 and Line.find(u'"') > 0:                    \r
+                elif len(Line.split()) > 2 and Line.find(u'"') > 0:\r
                     NewLines.append(Line[:Line.find(u'"')].strip())\r
                     NewLines.append(Line[Line.find(u'"'):])\r
                 else:\r
@@ -659,10 +659,10 @@ class UniFileClassObject(object):
                     if Line[Line.find(u'#language')-1] != ' ' or \\r
                        Line[Line.find(u'#language')+len(u'#language')] != u' ':\r
                         EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
-                        \r
+\r
                     if Line.find(u'"') > 0:\r
                         EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
-                        \r
+\r
                     StrName = Line.split()[0] + u' ' + Line.split()[1]\r
                     if StrName:\r
                         if StrName.split()[1] not in ExistStrNameList:\r
@@ -684,11 +684,11 @@ class UniFileClassObject(object):
                     if Line[Line.find(u'#language')-1] != u' ' or \\r
                        Line[Line.find(u'#language')+len(u'#language')] != u' ':\r
                         EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
-                    \r
+\r
                     if Line[Line.find(u'"')-1] != u' ':\r
-                        EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)  \r
-                    \r
-                    StrName = Line.split()[0] + u' ' + Line.split()[1]     \r
+                        EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
+\r
+                    StrName = Line.split()[0] + u' ' + Line.split()[1]\r
                     if StrName:\r
                         if StrName.split()[1] not in ExistStrNameList:\r
                             ExistStrNameList.append(StrName.split()[1].strip())\r
@@ -698,11 +698,11 @@ class UniFileClassObject(object):
                                                     DT.TAB_DEC_BINARY_ABSTRACT, DT.TAB_DEC_BINARY_DESCRIPTION]:\r
                             EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                             Message=ST.ERR_UNIPARSE_MULTI_ENTRY_EXIST % StrName.split()[1], \\r
-                                            ExtraData=File.Path)      \r
+                                            ExtraData=File.Path)\r
                     if IsIncludeFile:\r
                         if StrName not in NewLines:\r
                             NewLines.append((Line[:Line.find(u'#language')]).strip())\r
-                    else:                \r
+                    else:\r
                         NewLines.append((Line[:Line.find(u'#language')]).strip())\r
                     NewLines.append((Line[Line.find(u'#language'):Line.find(u'"')]).strip())\r
                     NewLines.append((Line[Line.find(u'"'):]).strip())\r
@@ -733,17 +733,17 @@ class UniFileClassObject(object):
             else:\r
                 print(Line)\r
                 EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, ExtraData=File.Path)\r
-                    \r
+\r
         if StrName and not StrName.split()[1].startswith(u'STR_'):\r
             EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_STRNAME_FORMAT_ERROR % StrName.split()[1], \\r
-                                ExtraData=File.Path)    \r
-        \r
+                                ExtraData=File.Path)\r
+\r
         if StrName and not NewLines:\r
             EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                             Message=ST.ERR_UNI_MISS_LANGENTRY % StrName, \\r
                             ExtraData=File.Path)\r
-        \r
+\r
         #\r
         # Check Abstract, Description, BinaryAbstract and BinaryDescription order,\r
         # should be Abstract, Description, BinaryAbstract, BinaryDesctiption\r
@@ -762,7 +762,7 @@ class UniFileClassObject(object):
                     BinaryDescriptionPosition = ExistStrNameList.index(StrName)\r
                 else:\r
                     DescriptionPosition = ExistStrNameList.index(StrName)\r
-                    \r
+\r
         OrderList = sorted([AbstractPosition, DescriptionPosition])\r
         BinaryOrderList = sorted([BinaryAbstractPosition, BinaryDescriptionPosition])\r
         Min = OrderList[0]\r
@@ -774,25 +774,25 @@ class UniFileClassObject(object):
                    BinaryMax > Max):\r
                 EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_ENTRY_ORDER_WRONG, \\r
-                                ExtraData=File.Path) \r
+                                ExtraData=File.Path)\r
         elif BinaryAbstractPosition > -1:\r
             if not(BinaryAbstractPosition > Max):\r
                 EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_ENTRY_ORDER_WRONG, \\r
-                                ExtraData=File.Path)  \r
-            \r
+                                ExtraData=File.Path)\r
+\r
         if  DescriptionPosition > -1:\r
             if not(DescriptionPosition == Max and AbstractPosition == Min and \\r
                    DescriptionPosition > AbstractPosition):\r
                 EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \\r
                                 Message=ST.ERR_UNIPARSE_ENTRY_ORDER_WRONG, \\r
-                                ExtraData=File.Path)  \r
-        \r
+                                ExtraData=File.Path)\r
+\r
         if not self.UniFileHeader:\r
-            EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \r
+            EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID,\r
                             Message = ST.ERR_NO_SOURCE_HEADER,\r
                             ExtraData=File.Path)\r
-        \r
+\r
         return NewLines\r
 \r
     #\r
@@ -800,13 +800,13 @@ class UniFileClassObject(object):
     #\r
     def LoadUniFile(self, File = None):\r
         if File is None:\r
-            EdkLogger.Error("Unicode File Parser", \r
-                            ToolError.PARSER_ERROR, \r
-                            Message='No unicode file is given', \r
+            EdkLogger.Error("Unicode File Parser",\r
+                            ToolError.PARSER_ERROR,\r
+                            Message='No unicode file is given',\r
                             ExtraData=File.Path)\r
-   \r
+\r
         self.File = File\r
-        \r
+\r
         #\r
         # Process special char in file\r
         #\r
@@ -849,10 +849,10 @@ class UniFileClassObject(object):
                 SecondLine.find(u'#string ') < 0 and SecondLine.find(u'#language ') >= 0 and \\r
                 ThirdLine.find(u'#string ') < 0 and ThirdLine.find(u'#language ') < 0:\r
                 if Line.find('"') > 0 or SecondLine.find('"') > 0:\r
-                    EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID, \r
+                    EdkLogger.Error("Unicode File Parser", ToolError.FORMAT_INVALID,\r
                                 Message=ST.ERR_UNIPARSE_DBLQUOTE_UNMATCHED,\r
                                 ExtraData=File.Path)\r
-                    \r
+\r
                 Name = Line[Line.find(u'#string ') + len(u'#string ') : ].strip(' ')\r
                 Language = SecondLine[SecondLine.find(u'#language ') + len(u'#language ') : ].strip(' ')\r
                 for IndexJ in range(IndexI + 2, len(Lines)):\r
@@ -894,11 +894,11 @@ class UniFileClassObject(object):
         for LangNameItem in self.LanguageDef:\r
             if Language == LangNameItem[0]:\r
                 break\r
-            \r
+\r
         if Language not in self.OrderedStringList:\r
             self.OrderedStringList[Language] = []\r
             self.OrderedStringDict[Language] = {}\r
-            \r
+\r
         IsAdded = True\r
         if Name in self.OrderedStringDict[Language]:\r
             IsAdded = False\r
@@ -906,38 +906,38 @@ class UniFileClassObject(object):
                 ItemIndexInList = self.OrderedStringDict[Language][Name]\r
                 Item = self.OrderedStringList[Language][ItemIndexInList]\r
                 Item.UpdateValue(Value)\r
-                Item.UseOtherLangDef = ''   \r
+                Item.UseOtherLangDef = ''\r
 \r
         if IsAdded:\r
             Token = len(self.OrderedStringList[Language])\r
             if Index == -1:\r
-                self.OrderedStringList[Language].append(StringDefClassObject(Name, \r
-                                                                             Value, \r
-                                                                             Referenced, \r
-                                                                             Token, \r
+                self.OrderedStringList[Language].append(StringDefClassObject(Name,\r
+                                                                             Value,\r
+                                                                             Referenced,\r
+                                                                             Token,\r
                                                                              UseOtherLangDef))\r
                 self.OrderedStringDict[Language][Name] = Token\r
                 for LangName in self.LanguageDef:\r
                     #\r
                     # New STRING token will be added into all language string lists.\r
-                    # so that the unique STRING identifier is reserved for all languages in the package list. \r
+                    # so that the unique STRING identifier is reserved for all languages in the package list.\r
                     #\r
                     if LangName[0] != Language:\r
                         if UseOtherLangDef != '':\r
                             OtherLangDef = UseOtherLangDef\r
                         else:\r
                             OtherLangDef = Language\r
-                        self.OrderedStringList[LangName[0]].append(StringDefClassObject(Name, \r
-                                                                                        '', \r
-                                                                                        Referenced, \r
-                                                                                        Token, \r
+                        self.OrderedStringList[LangName[0]].append(StringDefClassObject(Name,\r
+                                                                                        '',\r
+                                                                                        Referenced,\r
+                                                                                        Token,\r
                                                                                         OtherLangDef))\r
                         self.OrderedStringDict[LangName[0]][Name] = len(self.OrderedStringList[LangName[0]]) - 1\r
             else:\r
-                self.OrderedStringList[Language].insert(Index, StringDefClassObject(Name, \r
-                                                                                    Value, \r
-                                                                                    Referenced, \r
-                                                                                    Token, \r
+                self.OrderedStringList[Language].insert(Index, StringDefClassObject(Name,\r
+                                                                                    Value,\r
+                                                                                    Referenced,\r
+                                                                                    Token,\r
                                                                                     UseOtherLangDef))\r
                 self.OrderedStringDict[Language][Name] = Index\r
 \r
@@ -1029,16 +1029,16 @@ class UniFileClassObject(object):
             print(Item)\r
             for Member in self.OrderedStringList[Item]:\r
                 print(str(Member))\r
-    \r
+\r
     #\r
-    # Read content from '!include' UNI file \r
+    # Read content from '!include' UNI file\r
     #\r
     def ReadIncludeUNIfile(self, FilaPath):\r
         if self.File:\r
             pass\r
-        \r
+\r
         if not os.path.exists(FilaPath) or not os.path.isfile(FilaPath):\r
-            EdkLogger.Error("Unicode File Parser", \r
+            EdkLogger.Error("Unicode File Parser",\r
                              ToolError.FILE_NOT_FOUND,\r
                              ExtraData=FilaPath)\r
         try:\r