]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Source/Python/Eot/FileProfile.py
BaseTools/Eot: register MM Module types with FFS class.
[mirror_edk2.git] / BaseTools / Source / Python / Eot / FileProfile.py
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)