Ejemplo n.º 1
0
 def _SetPackageName(self, Token):
     if self.ItemObject.GetPackageName():
         self._LoggerError(ST.ERR_DECPARSE_DEFINE_DEFINED %
                           DT.TAB_DEC_DEFINES_PACKAGE_NAME)
     if not IsValidWord(Token):
         self._LoggerError(ST.ERR_DECPARSE_DEFINE_PKGNAME)
     self.ItemObject.SetPackageName(Token)
Ejemplo n.º 2
0
    def SetLibraryClass(self, LibraryClass, Comments):
        ValueList = GetSplitValueList(LibraryClass)
        Name = ValueList[0]
        if IsValidWord(Name):
            InfDefineLibraryItemObj = InfDefineLibraryItem()
            InfDefineLibraryItemObj.SetLibraryName(Name)
            InfDefineLibraryItemObj.Comments = Comments
            if len(ValueList) == 2:
                Type = ValueList[1]
                TypeList = GetSplitValueList(Type, ' ')
                TypeList = [Type for Type in TypeList if Type != '']
                for Item in TypeList:
                    if Item not in DT.MODULE_LIST:
                        ErrorInInf(ST.ERR_INF_PARSER_DEFINE_FROMAT_INVALID %
                                   (Item),
                                   LineInfo=self.CurrentLine)
                        return False
                InfDefineLibraryItemObj.SetTypes(TypeList)
            self.LibraryClass.append(InfDefineLibraryItemObj)
        else:
            ErrorInInf(ST.ERR_INF_PARSER_DEFINE_FROMAT_INVALID % (Name),
                       LineInfo=self.CurrentLine)
            return False

        return True
Ejemplo n.º 3
0
 def SetBaseName(self, BaseName, Comments):
     #
     # Value has been set before.
     #
     if self.BaseName is not None:    
         ErrorInInf(ST.ERR_INF_PARSER_DEFINE_ITEM_MORE_THAN_ONE_FOUND%(DT.TAB_INF_DEFINES_BASE_NAME),
                    LineInfo=self.CurrentLine)
         return False     
     if not (BaseName == '' or BaseName is None):
         if IsValidWord(BaseName) and not BaseName.startswith("_"):
             self.BaseName = InfDefMember()
             self.BaseName.SetValue(BaseName)
             self.BaseName.Comments = Comments
             return True
         else:
             ErrorInInf(ST.ERR_INF_PARSER_DEFINE_NAME_INVALID%(BaseName),
                        LineInfo=self.CurrentLine)
             return False