1 ## @file 2 # fragments of source file 3 # 4 # Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR> 5 # 6 # This program and the accompanying materials 7 # are licensed and made available under the terms and conditions of the BSD License 8 # which accompanies this distribution. The full text of the license may be found at 9 # http://opensource.org/licenses/bsd-license.php 10 # 11 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 # 14 15 ## 16 # Import Modules 17 # 18 19 import re 20 import Common.LongFilePathOs as os 21 from ParserWarning import Warning 22 from Common.LongFilePathSupport import OpenLongFilePath as open 23 24 # Profile contents of a file 25 PPDirectiveList = [] 26 AssignmentExpressionList = [] 27 PredicateExpressionList = [] 28 FunctionDefinitionList = [] 29 VariableDeclarationList = [] 30 EnumerationDefinitionList = [] 31 StructUnionDefinitionList = [] 32 TypedefDefinitionList = [] 33 FunctionCallingList = [] 34 35 ## Class FileProfile 36 # 37 # record file data when parsing source 38 # 39 # May raise Exception when opening file. 40 # 41 class FileProfile : 42 43 ## The constructor 44 # 45 # @param self: The object pointer 46 # @param FileName: The file that to be parsed 47 # 48 def __init__(self, FileName): 49 self.FileLinesList = [] 50 self.FileLinesListFromFile = [] 51 try: 52 fsock = open(FileName, "rb", 0) 53 try: 54 self.FileLinesListFromFile = fsock.readlines() 55 finally: 56 fsock.close() 57 58 except IOError: 59 raise Warning("Error when opening file %s" % FileName) 60