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 19import re 20import Common.LongFilePathOs as os 21from ParserWarning import Warning 22from Common.LongFilePathSupport import OpenLongFilePath as open 23 24# Profile contents of a file 25PPDirectiveList = [] 26AssignmentExpressionList = [] 27PredicateExpressionList = [] 28FunctionDefinitionList = [] 29VariableDeclarationList = [] 30EnumerationDefinitionList = [] 31StructUnionDefinitionList = [] 32TypedefDefinitionList = [] 33FunctionCallingList = [] 34 35## Class FileProfile 36# 37# record file data when parsing source 38# 39# May raise Exception when opening file. 40# 41class 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