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 24CommentList = [] 25PPDirectiveList = [] 26PredicateExpressionList = [] 27FunctionDefinitionList = [] 28VariableDeclarationList = [] 29EnumerationDefinitionList = [] 30StructUnionDefinitionList = [] 31TypedefDefinitionList = [] 32FunctionCallingList = [] 33 34## record file data when parsing source 35# 36# May raise Exception when opening file. 37# 38class FileProfile : 39 40 ## The constructor 41 # 42 # @param self The object pointer 43 # @param FileName The file that to be parsed 44 # 45 def __init__(self, FileName): 46 self.FileLinesList = [] 47 self.FileLinesListFromFile = [] 48 try: 49 fsock = open(FileName, "rb", 0) 50 try: 51 self.FileLinesListFromFile = fsock.readlines() 52 finally: 53 fsock.close() 54 55 except IOError: 56 raise Warning("Error when opening file %s" % FileName) 57 58