]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/UPT/Object/Parser/InfPpiObject.py
BaseTools: Clean up source files
[mirror_edk2.git] / BaseTools / Source / Python / UPT / Object / Parser / InfPpiObject.py
index eb6b6927140bc87a267865b87a6bbfdea22fcae9..b871a5088a7266f91b4936aff6b8fb10e254aaf5 100644 (file)
@@ -1,12 +1,12 @@
 ## @file\r
-# This file is used to define class objects of INF file [Ppis] section. \r
-# It will consumed by InfParser. \r
+# This file is used to define class objects of INF file [Ppis] section.\r
+# It will consumed by InfParser.\r
 #\r
-# Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2011 - 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
@@ -18,17 +18,17 @@ InfPpiObject
 \r
 from Library.ParserValidate import IsValidCVariableName\r
 from Library.CommentParsing import ParseComment\r
-from Library.ExpressionValidate import IsValidFeatureFlagExp \r
-                               \r
+from Library.ExpressionValidate import IsValidFeatureFlagExp\r
+\r
 from Library.Misc import Sdict\r
-from Library import DataType as DT                \r
+from Library import DataType as DT\r
 import Logger.Log as Logger\r
 from Logger import ToolError\r
 from Logger import StringTable as ST\r
 \r
 def ParsePpiComment(CommentsList, InfPpiItemObj):\r
     PreNotify = None\r
-    PreUsage = None              \r
+    PreUsage = None\r
     PreHelpText = ''\r
     BlockFlag = -1\r
     CommentInsList = []\r
@@ -39,22 +39,22 @@ def ParsePpiComment(CommentsList, InfPpiItemObj):
         CommentItemNotify, \\r
         CommentItemString, \\r
         CommentItemHelpText = \\r
-                ParseComment(CommentItem, \r
-                             DT.ALL_USAGE_TOKENS, \r
-                             DT.PPI_NOTIFY_TOKENS, \r
-                             ['PPI'], \r
+                ParseComment(CommentItem,\r
+                             DT.ALL_USAGE_TOKENS,\r
+                             DT.PPI_NOTIFY_TOKENS,\r
+                             ['PPI'],\r
                              False)\r
-        \r
+\r
         #\r
-        # To avoid PyLint error   \r
+        # To avoid PyLint error\r
         #\r
         if CommentItemString:\r
             pass\r
-        \r
+\r
         if CommentItemHelpText is None:\r
             CommentItemHelpText = ''\r
             if Count == len(CommentsList) and CommentItemUsage == CommentItemNotify == DT.ITEM_UNDEFINED:\r
-                CommentItemHelpText = DT.END_OF_LINE                    \r
+                CommentItemHelpText = DT.END_OF_LINE\r
         #\r
         # For the Last comment Item, set BlockFlag.\r
         #\r
@@ -65,12 +65,12 @@ def ParsePpiComment(CommentsList, InfPpiItemObj):
                 else:\r
                     BlockFlag = 3\r
             elif BlockFlag == -1:\r
-                BlockFlag = 4  \r
-        \r
+                BlockFlag = 4\r
+\r
         #\r
         # Comment USAGE and NOTIFY information are "UNDEFINED"\r
         #\r
-        if BlockFlag == -1 or BlockFlag == 1 or BlockFlag == 2:                                             \r
+        if BlockFlag == -1 or BlockFlag == 1 or BlockFlag == 2:\r
             if CommentItemUsage == CommentItemNotify == DT.ITEM_UNDEFINED:\r
                 if BlockFlag == -1:\r
                     BlockFlag = 1\r
@@ -81,41 +81,41 @@ def ParsePpiComment(CommentsList, InfPpiItemObj):
                     BlockFlag = 3\r
                 #\r
                 # An item have Usage or Notify information and the first time get this information\r
-                # \r
+                #\r
                 elif BlockFlag == -1:\r
                     BlockFlag = 4\r
-                                                                          \r
+\r
         #\r
         # Combine two comment line if they are generic comment\r
-        #   \r
+        #\r
         if CommentItemUsage == CommentItemNotify == PreUsage == PreNotify == DT.ITEM_UNDEFINED:\r
             CommentItemHelpText = PreHelpText + DT.END_OF_LINE + CommentItemHelpText\r
             #\r
             # Store this information for next line may still need  combine operation.\r
             #\r
             PreHelpText = CommentItemHelpText\r
-            \r
-        if BlockFlag == 4:     \r
+\r
+        if BlockFlag == 4:\r
             CommentItemIns = InfPpiItemCommentContent()\r
             CommentItemIns.SetUsage(CommentItemUsage)\r
             CommentItemIns.SetNotify(CommentItemNotify)\r
             CommentItemIns.SetHelpStringItem(CommentItemHelpText)\r
             CommentInsList.append(CommentItemIns)\r
-            \r
+\r
             BlockFlag = -1\r
             PreUsage = None\r
             PreNotify = None\r
             PreHelpText = ''\r
-            \r
+\r
         elif BlockFlag == 3:\r
             #\r
             # Add previous help string\r
-            # \r
+            #\r
             CommentItemIns = InfPpiItemCommentContent()\r
             CommentItemIns.SetUsage(DT.ITEM_UNDEFINED)\r
             CommentItemIns.SetNotify(DT.ITEM_UNDEFINED)\r
             if PreHelpText == '' or PreHelpText.endswith(DT.END_OF_LINE):\r
-                PreHelpText += DT.END_OF_LINE            \r
+                PreHelpText += DT.END_OF_LINE\r
             CommentItemIns.SetHelpStringItem(PreHelpText)\r
             CommentInsList.append(CommentItemIns)\r
             #\r
@@ -126,7 +126,7 @@ def ParsePpiComment(CommentsList, InfPpiItemObj):
             CommentItemIns.SetNotify(CommentItemNotify)\r
             CommentItemIns.SetHelpStringItem(CommentItemHelpText)\r
             CommentInsList.append(CommentItemIns)\r
-            \r
+\r
             BlockFlag = -1\r
             PreUsage = None\r
             PreNotify = None\r
@@ -135,15 +135,15 @@ def ParsePpiComment(CommentsList, InfPpiItemObj):
             PreUsage = CommentItemUsage\r
             PreNotify = CommentItemNotify\r
             PreHelpText = CommentItemHelpText\r
-            \r
+\r
     InfPpiItemObj.SetCommentList(CommentInsList)\r
-    \r
+\r
     return InfPpiItemObj\r
 \r
 class InfPpiItemCommentContent():\r
     def __init__(self):\r
         #\r
-        # ## SOMETIMES_CONSUMES ## HelpString \r
+        # ## SOMETIMES_CONSUMES ## HelpString\r
         #\r
         self.UsageItem = ''\r
         #\r
@@ -152,30 +152,30 @@ class InfPpiItemCommentContent():
         self.HelpStringItem = ''\r
         self.Notify = ''\r
         self.CommentList = []\r
-                \r
+\r
     def SetUsage(self, UsageItem):\r
         self.UsageItem = UsageItem\r
     def GetUsage(self):\r
         return self.UsageItem\r
-    \r
+\r
     def SetNotify(self, Notify):\r
         if Notify != DT.ITEM_UNDEFINED:\r
             self.Notify = 'true'\r
     def GetNotify(self):\r
         return self.Notify\r
-          \r
+\r
     def SetHelpStringItem(self, HelpStringItem):\r
         self.HelpStringItem = HelpStringItem\r
     def GetHelpStringItem(self):\r
         return self.HelpStringItem\r
-    \r
+\r
 class InfPpiItem():\r
     def __init__(self):\r
         self.Name             = ''\r
-        self.FeatureFlagExp   = ''    \r
+        self.FeatureFlagExp   = ''\r
         self.SupArchList      = []\r
         self.CommentList      = []\r
-        \r
+\r
     def SetName(self, Name):\r
         self.Name = Name\r
     def GetName(self):\r
@@ -184,7 +184,7 @@ class InfPpiItem():
     def SetSupArchList(self, SupArchList):\r
         self.SupArchList = SupArchList\r
     def GetSupArchList(self):\r
-        return self.SupArchList        \r
+        return self.SupArchList\r
 \r
     def SetCommentList(self, CommentList):\r
         self.CommentList = CommentList\r
@@ -206,17 +206,17 @@ class InfPpiObject():
         # Macro defined in this section should be only used in this section.\r
         #\r
         self.Macros = {}\r
-    \r
+\r
     def SetPpi(self, PpiList, Arch = None):\r
         __SupArchList = []\r
         for ArchItem in Arch:\r
             #\r
             # Validate Arch\r
-            #            \r
+            #\r
             if (ArchItem == '' or ArchItem is None):\r
-                ArchItem = 'COMMON'   \r
+                ArchItem = 'COMMON'\r
             __SupArchList.append(ArchItem)\r
-            \r
+\r
         for Item in PpiList:\r
             #\r
             # Get Comment content of this protocol\r
@@ -226,26 +226,26 @@ class InfPpiObject():
                 CommentsList = Item[1]\r
             CurrentLineOfItem = Item[2]\r
             Item = Item[0]\r
-            InfPpiItemObj = InfPpiItem()                  \r
+            InfPpiItemObj = InfPpiItem()\r
             if len(Item) >= 1 and len(Item) <= 2:\r
                 #\r
                 # Only CName contained\r
                 #\r
                 if not IsValidCVariableName(Item[0]):\r
-                    Logger.Error("InfParser", \r
-                                 ToolError.FORMAT_INVALID, \r
+                    Logger.Error("InfParser",\r
+                                 ToolError.FORMAT_INVALID,\r
                                  ST.ERR_INF_PARSER_INVALID_CNAME%(Item[0]),\r
-                                 File=CurrentLineOfItem[2], \r
-                                 Line=CurrentLineOfItem[1], \r
+                                 File=CurrentLineOfItem[2],\r
+                                 Line=CurrentLineOfItem[1],\r
                                  ExtraData=CurrentLineOfItem[0])\r
                 if (Item[0] != ''):\r
                     InfPpiItemObj.SetName(Item[0])\r
                 else:\r
-                    Logger.Error("InfParser", \r
-                                 ToolError.FORMAT_INVALID, \r
+                    Logger.Error("InfParser",\r
+                                 ToolError.FORMAT_INVALID,\r
                                  ST.ERR_INF_PARSER_CNAME_MISSING,\r
-                                 File=CurrentLineOfItem[2], \r
-                                 Line=CurrentLineOfItem[1], \r
+                                 File=CurrentLineOfItem[2],\r
+                                 Line=CurrentLineOfItem[1],\r
                                  ExtraData=CurrentLineOfItem[0])\r
             #\r
             # Have FeatureFlag information\r
@@ -254,14 +254,14 @@ class InfPpiObject():
                 #\r
                 # Contained CName and Feature Flag Express\r
                 # <statements>           ::=  <CName> ["|" <FeatureFlagExpress>]\r
-                # Item[1] should not be empty  \r
+                # Item[1] should not be empty\r
                 #\r
                 if Item[1].strip() == '':\r
-                    Logger.Error("InfParser", \r
-                                 ToolError.FORMAT_INVALID, \r
+                    Logger.Error("InfParser",\r
+                                 ToolError.FORMAT_INVALID,\r
                                  ST.ERR_INF_PARSER_FEATURE_FLAG_EXP_MISSING,\r
-                                 File=CurrentLineOfItem[2], \r
-                                 Line=CurrentLineOfItem[1], \r
+                                 File=CurrentLineOfItem[2],\r
+                                 Line=CurrentLineOfItem[1],\r
                                  ExtraData=CurrentLineOfItem[0])\r
                 #\r
                 # Validate Feature Flag Express for PPI entry\r
@@ -269,24 +269,24 @@ class InfPpiObject():
                 #\r
                 FeatureFlagRtv = IsValidFeatureFlagExp(Item[1].strip())\r
                 if not FeatureFlagRtv[0]:\r
-                    Logger.Error("InfParser", \r
+                    Logger.Error("InfParser",\r
                                  ToolError.FORMAT_INVALID,\r
                                  ST.ERR_INF_PARSER_FEATURE_FLAG_EXP_SYNTAX_INVLID%(FeatureFlagRtv[1]),\r
-                                 File=CurrentLineOfItem[2], \r
-                                 Line=CurrentLineOfItem[1], \r
+                                 File=CurrentLineOfItem[2],\r
+                                 Line=CurrentLineOfItem[1],\r
                                  ExtraData=CurrentLineOfItem[0])\r
                 InfPpiItemObj.SetFeatureFlagExp(Item[1])\r
             if len(Item) != 1 and len(Item) != 2:\r
                 #\r
-                # Invalid format of Ppi statement \r
+                # Invalid format of Ppi statement\r
                 #\r
-                Logger.Error("InfParser", \r
+                Logger.Error("InfParser",\r
                              ToolError.FORMAT_INVALID,\r
                              ST.ERR_INF_PARSER_GUID_PPI_PROTOCOL_SECTION_CONTENT_ERROR,\r
-                             File=CurrentLineOfItem[2], \r
-                             Line=CurrentLineOfItem[1], \r
+                             File=CurrentLineOfItem[2],\r
+                             Line=CurrentLineOfItem[1],\r
                              ExtraData=CurrentLineOfItem[0])\r
-            \r
+\r
             #\r
             # Get/Set Usage and HelpString for PPI entry\r
             #\r
@@ -297,20 +297,20 @@ class InfPpiObject():
                 CommentItemIns.SetUsage(DT.ITEM_UNDEFINED)\r
                 CommentItemIns.SetNotify(DT.ITEM_UNDEFINED)\r
                 InfPpiItemObj.SetCommentList([CommentItemIns])\r
-            \r
+\r
             InfPpiItemObj.SetSupArchList(__SupArchList)\r
 \r
             #\r
             # Determine PPI name duplicate. Follow below rule:\r
             #\r
-            # A PPI must not be duplicated within a [Ppis] section. \r
-            # A PPI may appear in multiple architectural [Ppis] \r
-            # sections. A PPI listed in an architectural [Ppis] \r
-            # section must not be listed in the common architectural \r
+            # A PPI must not be duplicated within a [Ppis] section.\r
+            # A PPI may appear in multiple architectural [Ppis]\r
+            # sections. A PPI listed in an architectural [Ppis]\r
+            # section must not be listed in the common architectural\r
             # [Ppis] section.\r
-            # \r
+            #\r
             # NOTE: This check will not report error now.\r
-            # \r
+            #\r
             for Item in self.Ppis:\r
                 if Item.GetName() == InfPpiItemObj.GetName():\r
                     ItemSupArchList = Item.GetSupArchList()\r
@@ -324,10 +324,10 @@ class InfPpiObject():
                             if ItemArch.upper() == 'COMMON' or PpiItemObjArch.upper() == 'COMMON':\r
                                 #\r
                                 # ST.ERR_INF_PARSER_ITEM_DUPLICATE_COMMON\r
-                                # \r
+                                #\r
                                 pass\r
-            \r
-            if self.Ppis.has_key((InfPpiItemObj)):           \r
+\r
+            if (InfPpiItemObj) in self.Ppis:\r
                 PpiList = self.Ppis[InfPpiItemObj]\r
                 PpiList.append(InfPpiItemObj)\r
                 self.Ppis[InfPpiItemObj] = PpiList\r
@@ -335,9 +335,9 @@ class InfPpiObject():
                 PpiList = []\r
                 PpiList.append(InfPpiItemObj)\r
                 self.Ppis[InfPpiItemObj] = PpiList\r
-                \r
-        return True        \r
-        \r
-    \r
+\r
+        return True\r
+\r
+\r
     def GetPpi(self):\r
-        return self.Ppis
\ No newline at end of file
+        return self.Ppis\r