]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/Python/CommonDataClass/DataClass.py
BaseTools: Remove the logic SourceOverridePath
[mirror_edk2.git] / BaseTools / Source / Python / CommonDataClass / DataClass.py
CommitLineData
30fdf114 1## @file\r
9053bc51 2# This file is used to define class for data structure used in ECC\r
30fdf114 3#\r
97fa0ee9 4# Copyright (c) 2008 - 2014, Intel Corporation. All rights reserved.<BR>\r
40d841f6 5# This program and the accompanying materials\r
30fdf114
LG
6# are licensed and made available under the terms and conditions of the BSD License\r
7# which accompanies this distribution. The full text of the license may be found at\r
8# http://opensource.org/licenses/bsd-license.php\r
9#\r
10# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13##\r
14# Import Modules\r
15#\r
16import Common.EdkLogger as EdkLogger\r
17\r
18##\r
19# Static values for data models\r
20#\r
21MODEL_UNKNOWN = 0\r
22\r
23MODEL_FILE_C = 1001\r
24MODEL_FILE_H = 1002\r
25MODEL_FILE_ASM = 1003\r
26MODEL_FILE_INF = 1011\r
27MODEL_FILE_DEC = 1012\r
28MODEL_FILE_DSC = 1013\r
29MODEL_FILE_FDF = 1014\r
30MODEL_FILE_INC = 1015\r
31MODEL_FILE_CIF = 1016\r
97fa0ee9 32MODEL_FILE_UNI = 1017\r
e56468c0 33MODEL_FILE_OTHERS = 1099\r
30fdf114
LG
34\r
35MODEL_IDENTIFIER_FILE_HEADER = 2001\r
36MODEL_IDENTIFIER_FUNCTION_HEADER = 2002\r
37MODEL_IDENTIFIER_COMMENT = 2003\r
38MODEL_IDENTIFIER_PARAMETER = 2004\r
39MODEL_IDENTIFIER_STRUCTURE = 2005\r
40MODEL_IDENTIFIER_VARIABLE = 2006\r
41MODEL_IDENTIFIER_INCLUDE = 2007\r
42MODEL_IDENTIFIER_PREDICATE_EXPRESSION = 2008\r
43MODEL_IDENTIFIER_ENUMERATE = 2009\r
44MODEL_IDENTIFIER_PCD = 2010\r
45MODEL_IDENTIFIER_UNION = 2011\r
46MODEL_IDENTIFIER_MACRO_IFDEF = 2012\r
47MODEL_IDENTIFIER_MACRO_IFNDEF = 2013\r
48MODEL_IDENTIFIER_MACRO_DEFINE = 2014\r
49MODEL_IDENTIFIER_MACRO_ENDIF = 2015\r
50MODEL_IDENTIFIER_MACRO_PROGMA = 2016\r
51MODEL_IDENTIFIER_FUNCTION_CALLING = 2018\r
52MODEL_IDENTIFIER_TYPEDEF = 2017\r
53MODEL_IDENTIFIER_FUNCTION_DECLARATION = 2019\r
54MODEL_IDENTIFIER_ASSIGNMENT_EXPRESSION = 2020\r
55\r
56MODEL_EFI_PROTOCOL = 3001\r
57MODEL_EFI_PPI = 3002\r
58MODEL_EFI_GUID = 3003\r
59MODEL_EFI_LIBRARY_CLASS = 3004\r
60MODEL_EFI_LIBRARY_INSTANCE = 3005\r
61MODEL_EFI_PCD = 3006\r
62MODEL_EFI_SOURCE_FILE = 3007\r
63MODEL_EFI_BINARY_FILE = 3008\r
64MODEL_EFI_SKU_ID = 3009\r
65MODEL_EFI_INCLUDE = 3010\r
66MODEL_EFI_DEPEX = 3011\r
8518bf0b 67MODEL_EFI_DEFAULT_STORES = 3012\r
30fdf114
LG
68\r
69MODEL_PCD = 4000\r
70MODEL_PCD_FIXED_AT_BUILD = 4001\r
71MODEL_PCD_PATCHABLE_IN_MODULE = 4002\r
72MODEL_PCD_FEATURE_FLAG = 4003\r
73MODEL_PCD_DYNAMIC_EX = 4004\r
74MODEL_PCD_DYNAMIC_EX_DEFAULT = 4005\r
75MODEL_PCD_DYNAMIC_EX_VPD = 4006\r
76MODEL_PCD_DYNAMIC_EX_HII = 4007\r
77MODEL_PCD_DYNAMIC = 4008\r
78MODEL_PCD_DYNAMIC_DEFAULT = 4009\r
79MODEL_PCD_DYNAMIC_VPD = 4010\r
80MODEL_PCD_DYNAMIC_HII = 4011\r
ae7b6df8
LG
81MODEL_PCD_TYPE_LIST = [MODEL_PCD_FIXED_AT_BUILD,\r
82 MODEL_PCD_PATCHABLE_IN_MODULE,\r
83 MODEL_PCD_FEATURE_FLAG,\r
84 MODEL_PCD_DYNAMIC_DEFAULT,\r
85 MODEL_PCD_DYNAMIC_HII,\r
86 MODEL_PCD_DYNAMIC_VPD,\r
87 MODEL_PCD_DYNAMIC_EX_DEFAULT,\r
88 MODEL_PCD_DYNAMIC_EX_HII,\r
89 MODEL_PCD_DYNAMIC_EX_VPD\r
90 ]\r
30fdf114 91\r
e8a47801 92MODEL_META_DATA_HEADER_COMMENT = 5000\r
30fdf114
LG
93MODEL_META_DATA_HEADER = 5001\r
94MODEL_META_DATA_INCLUDE = 5002\r
95MODEL_META_DATA_DEFINE = 5003\r
96MODEL_META_DATA_CONDITIONAL_STATEMENT_IF = 5004\r
97MODEL_META_DATA_CONDITIONAL_STATEMENT_ELSE = 5005\r
98MODEL_META_DATA_CONDITIONAL_STATEMENT_IFDEF = 5006\r
99MODEL_META_DATA_CONDITIONAL_STATEMENT_IFNDEF = 5007\r
8d62ae35 100MODEL_META_DATA_CONDITIONAL_STATEMENT_ERROR = 5400\r
30fdf114
LG
101MODEL_META_DATA_BUILD_OPTION = 5008\r
102MODEL_META_DATA_COMPONENT = 5009\r
103MODEL_META_DATA_USER_EXTENSION = 5010\r
104MODEL_META_DATA_PACKAGE = 5011\r
105MODEL_META_DATA_NMAKE = 5012\r
0d2711a6 106MODEL_META_DATA_CONDITIONAL_STATEMENT_ELSEIF = 5013\r
30fdf114 107MODEL_META_DATA_CONDITIONAL_STATEMENT_ENDIF = 5014\r
e56468c0 108MODEL_META_DATA_COMMENT = 5016\r
109MODEL_META_DATA_GLOBAL_DEFINE = 5017\r
0d2711a6
LG
110MODEL_META_DATA_SECTION_HEADER = 5100\r
111MODEL_META_DATA_SUBSECTION_HEADER = 5200\r
2bc3256c 112MODEL_META_DATA_TAIL_COMMENT = 5300\r
30fdf114 113\r
9053bc51 114MODEL_EXTERNAL_DEPENDENCY = 10000\r
115\r
30fdf114
LG
116MODEL_LIST = [('MODEL_UNKNOWN', MODEL_UNKNOWN),\r
117 ('MODEL_FILE_C', MODEL_FILE_C),\r
118 ('MODEL_FILE_H', MODEL_FILE_H),\r
119 ('MODEL_FILE_ASM', MODEL_FILE_ASM),\r
120 ('MODEL_FILE_INF', MODEL_FILE_INF),\r
121 ('MODEL_FILE_DEC', MODEL_FILE_DEC),\r
122 ('MODEL_FILE_DSC', MODEL_FILE_DSC),\r
123 ('MODEL_FILE_FDF', MODEL_FILE_FDF),\r
124 ('MODEL_FILE_INC', MODEL_FILE_INC),\r
e56468c0 125 ('MODEL_FILE_CIF', MODEL_FILE_CIF),\r
126 ('MODEL_FILE_OTHERS', MODEL_FILE_OTHERS),\r
30fdf114
LG
127 ('MODEL_IDENTIFIER_FILE_HEADER', MODEL_IDENTIFIER_FILE_HEADER),\r
128 ('MODEL_IDENTIFIER_FUNCTION_HEADER', MODEL_IDENTIFIER_FUNCTION_HEADER),\r
129 ('MODEL_IDENTIFIER_COMMENT', MODEL_IDENTIFIER_COMMENT),\r
130 ('MODEL_IDENTIFIER_PARAMETER', MODEL_IDENTIFIER_PARAMETER),\r
131 ('MODEL_IDENTIFIER_STRUCTURE', MODEL_IDENTIFIER_STRUCTURE),\r
132 ('MODEL_IDENTIFIER_VARIABLE', MODEL_IDENTIFIER_VARIABLE),\r
133 ('MODEL_IDENTIFIER_INCLUDE', MODEL_IDENTIFIER_INCLUDE),\r
134 ('MODEL_IDENTIFIER_PREDICATE_EXPRESSION', MODEL_IDENTIFIER_PREDICATE_EXPRESSION),\r
135 ('MODEL_IDENTIFIER_ENUMERATE', MODEL_IDENTIFIER_ENUMERATE),\r
136 ('MODEL_IDENTIFIER_PCD', MODEL_IDENTIFIER_PCD),\r
137 ('MODEL_IDENTIFIER_UNION', MODEL_IDENTIFIER_UNION),\r
138 ('MODEL_IDENTIFIER_MACRO_IFDEF', MODEL_IDENTIFIER_MACRO_IFDEF),\r
139 ('MODEL_IDENTIFIER_MACRO_IFNDEF', MODEL_IDENTIFIER_MACRO_IFNDEF),\r
140 ('MODEL_IDENTIFIER_MACRO_DEFINE', MODEL_IDENTIFIER_MACRO_DEFINE),\r
141 ('MODEL_IDENTIFIER_MACRO_ENDIF', MODEL_IDENTIFIER_MACRO_ENDIF),\r
142 ('MODEL_IDENTIFIER_MACRO_PROGMA', MODEL_IDENTIFIER_MACRO_PROGMA),\r
143 ('MODEL_IDENTIFIER_FUNCTION_CALLING', MODEL_IDENTIFIER_FUNCTION_CALLING),\r
144 ('MODEL_IDENTIFIER_TYPEDEF', MODEL_IDENTIFIER_TYPEDEF),\r
145 ('MODEL_IDENTIFIER_FUNCTION_DECLARATION', MODEL_IDENTIFIER_FUNCTION_DECLARATION),\r
146 ('MODEL_IDENTIFIER_ASSIGNMENT_EXPRESSION', MODEL_IDENTIFIER_ASSIGNMENT_EXPRESSION),\r
147 ('MODEL_EFI_PROTOCOL', MODEL_EFI_PROTOCOL),\r
148 ('MODEL_EFI_PPI', MODEL_EFI_PPI),\r
149 ('MODEL_EFI_GUID', MODEL_EFI_GUID),\r
150 ('MODEL_EFI_LIBRARY_CLASS', MODEL_EFI_LIBRARY_CLASS),\r
151 ('MODEL_EFI_LIBRARY_INSTANCE', MODEL_EFI_LIBRARY_INSTANCE),\r
152 ('MODEL_EFI_PCD', MODEL_EFI_PCD),\r
153 ('MODEL_EFI_SKU_ID', MODEL_EFI_SKU_ID),\r
154 ('MODEL_EFI_INCLUDE', MODEL_EFI_INCLUDE),\r
155 ('MODEL_EFI_DEPEX', MODEL_EFI_DEPEX),\r
156 ('MODEL_IDENTIFIER_UNION', MODEL_IDENTIFIER_UNION),\r
157 ('MODEL_EFI_SOURCE_FILE', MODEL_EFI_SOURCE_FILE),\r
158 ('MODEL_EFI_BINARY_FILE', MODEL_EFI_BINARY_FILE),\r
159 ('MODEL_PCD', MODEL_PCD),\r
160 ('MODEL_PCD_FIXED_AT_BUILD', MODEL_PCD_FIXED_AT_BUILD),\r
161 ('MODEL_PCD_PATCHABLE_IN_MODULE', MODEL_PCD_PATCHABLE_IN_MODULE),\r
162 ('MODEL_PCD_FEATURE_FLAG', MODEL_PCD_FEATURE_FLAG),\r
163 ('MODEL_PCD_DYNAMIC_EX', MODEL_PCD_DYNAMIC_EX),\r
164 ('MODEL_PCD_DYNAMIC_EX_DEFAULT', MODEL_PCD_DYNAMIC_EX_DEFAULT),\r
165 ('MODEL_PCD_DYNAMIC_EX_VPD', MODEL_PCD_DYNAMIC_EX_VPD),\r
166 ('MODEL_PCD_DYNAMIC_EX_HII', MODEL_PCD_DYNAMIC_EX_HII),\r
167 ('MODEL_PCD_DYNAMIC', MODEL_PCD_DYNAMIC),\r
168 ('MODEL_PCD_DYNAMIC_DEFAULT', MODEL_PCD_DYNAMIC_DEFAULT),\r
169 ('MODEL_PCD_DYNAMIC_VPD', MODEL_PCD_DYNAMIC_VPD),\r
170 ('MODEL_PCD_DYNAMIC_HII', MODEL_PCD_DYNAMIC_HII),\r
171 ("MODEL_META_DATA_HEADER", MODEL_META_DATA_HEADER),\r
172 ("MODEL_META_DATA_INCLUDE", MODEL_META_DATA_INCLUDE),\r
173 ("MODEL_META_DATA_DEFINE", MODEL_META_DATA_DEFINE),\r
174 ("MODEL_META_DATA_CONDITIONAL_STATEMENT_IF", MODEL_META_DATA_CONDITIONAL_STATEMENT_IF),\r
175 ("MODEL_META_DATA_CONDITIONAL_STATEMENT_ELSE", MODEL_META_DATA_CONDITIONAL_STATEMENT_ELSE),\r
176 ("MODEL_META_DATA_CONDITIONAL_STATEMENT_IFDEF", MODEL_META_DATA_CONDITIONAL_STATEMENT_IFDEF),\r
177 ("MODEL_META_DATA_CONDITIONAL_STATEMENT_IFNDEF", MODEL_META_DATA_CONDITIONAL_STATEMENT_IFNDEF),\r
8d62ae35 178 ("MODEL_META_DATA_CONDITIONAL_STATEMENT_ERROR", MODEL_META_DATA_CONDITIONAL_STATEMENT_ERROR),\r
30fdf114
LG
179 ("MODEL_META_DATA_BUILD_OPTION", MODEL_META_DATA_BUILD_OPTION),\r
180 ("MODEL_META_DATA_COMPONENT", MODEL_META_DATA_COMPONENT),\r
181 ('MODEL_META_DATA_USER_EXTENSION', MODEL_META_DATA_USER_EXTENSION),\r
182 ('MODEL_META_DATA_PACKAGE', MODEL_META_DATA_PACKAGE),\r
e56468c0 183 ('MODEL_META_DATA_NMAKE', MODEL_META_DATA_NMAKE),\r
184 ('MODEL_META_DATA_COMMENT', MODEL_META_DATA_COMMENT)\r
30fdf114
LG
185 ]\r
186\r
187## FunctionClass\r
188#\r
189# This class defines a structure of a function\r
e56468c0 190#\r
30fdf114
LG
191# @param ID: ID of a Function\r
192# @param Header: Header of a Function\r
e56468c0 193# @param Modifier: Modifier of a Function\r
30fdf114 194# @param Name: Name of a Function\r
fb0b35e0 195# @param ReturnStatement: ReturnStatement of a Function\r
30fdf114
LG
196# @param StartLine: StartLine of a Function\r
197# @param StartColumn: StartColumn of a Function\r
198# @param EndLine: EndLine of a Function\r
199# @param EndColumn: EndColumn of a Function\r
200# @param BodyStartLine: BodyStartLine of a Function Body\r
201# @param BodyStartColumn: BodyStartColumn of a Function Body\r
202# @param BelongsToFile: The Function belongs to which file\r
203# @param IdentifierList: IdentifierList of a File\r
204# @param PcdList: PcdList of a File\r
205#\r
206# @var ID: ID of a Function\r
207# @var Header: Header of a Function\r
e56468c0 208# @var Modifier: Modifier of a Function\r
30fdf114 209# @var Name: Name of a Function\r
fb0b35e0 210# @var ReturnStatement: ReturnStatement of a Function\r
30fdf114
LG
211# @var StartLine: StartLine of a Function\r
212# @var StartColumn: StartColumn of a Function\r
213# @var EndLine: EndLine of a Function\r
214# @var EndColumn: EndColumn of a Function\r
215# @var BodyStartLine: StartLine of a Function Body\r
216# @var BodyStartColumn: StartColumn of a Function Body\r
217# @var BelongsToFile: The Function belongs to which file\r
218# @var IdentifierList: IdentifierList of a File\r
219# @var PcdList: PcdList of a File\r
220#\r
221class FunctionClass(object):\r
222 def __init__(self, ID = -1, Header = '', Modifier = '', Name = '', ReturnStatement = '', \\r
223 StartLine = -1, StartColumn = -1, EndLine = -1, EndColumn = -1, \\r
224 BodyStartLine = -1, BodyStartColumn = -1, BelongsToFile = -1, \\r
225 IdentifierList = [], PcdList = [], \\r
226 FunNameStartLine = -1, FunNameStartColumn = -1):\r
227 self.ID = ID\r
228 self.Header = Header\r
e56468c0 229 self.Modifier = Modifier\r
30fdf114
LG
230 self.Name = Name\r
231 self.ReturnStatement = ReturnStatement\r
232 self.StartLine = StartLine\r
233 self.StartColumn = StartColumn\r
234 self.EndLine = EndLine\r
235 self.EndColumn = EndColumn\r
236 self.BodyStartLine = BodyStartLine\r
237 self.BodyStartColumn = BodyStartColumn\r
238 self.BelongsToFile = BelongsToFile\r
239 self.FunNameStartLine = FunNameStartLine\r
240 self.FunNameStartColumn = FunNameStartColumn\r
e56468c0 241\r
30fdf114
LG
242 self.IdentifierList = IdentifierList\r
243 self.PcdList = PcdList\r
244\r
245## IdentifierClass\r
246#\r
247# This class defines a structure of a variable\r
e56468c0 248#\r
30fdf114
LG
249# @param ID: ID of a Identifier\r
250# @param Modifier: Modifier of a Identifier\r
251# @param Type: Type of a Identifier\r
252# @param Name: Name of a Identifier\r
253# @param Value: Value of a Identifier\r
254# @param Model: Model of a Identifier\r
255# @param BelongsToFile: The Identifier belongs to which file\r
256# @param BelongsToFunction: The Identifier belongs to which function\r
257# @param StartLine: StartLine of a Identifier\r
258# @param StartColumn: StartColumn of a Identifier\r
259# @param EndLine: EndLine of a Identifier\r
260# @param EndColumn: EndColumn of a Identifier\r
261#\r
262# @var ID: ID of a Identifier\r
263# @var Modifier: Modifier of a Identifier\r
264# @var Type: Type of a Identifier\r
265# @var Name: Name of a Identifier\r
266# @var Value: Value of a Identifier\r
267# @var Model: Model of a Identifier\r
268# @var BelongsToFile: The Identifier belongs to which file\r
269# @var BelongsToFunction: The Identifier belongs to which function\r
270# @var StartLine: StartLine of a Identifier\r
271# @var StartColumn: StartColumn of a Identifier\r
272# @var EndLine: EndLine of a Identifier\r
273# @var EndColumn: EndColumn of a Identifier\r
274#\r
275class IdentifierClass(object):\r
276 def __init__(self, ID = -1, Modifier = '', Type = '', Name = '', Value = '', Model = MODEL_UNKNOWN, \\r
277 BelongsToFile = -1, BelongsToFunction = -1, StartLine = -1, StartColumn = -1, EndLine = -1, EndColumn = -1):\r
278 self.ID = ID\r
279 self.Modifier = Modifier\r
280 self.Type = Type\r
281 self.Name = Name\r
282 self.Value = Value\r
283 self.Model = Model\r
284 self.BelongsToFile = BelongsToFile\r
285 self.BelongsToFunction = BelongsToFunction\r
286 self.StartLine = StartLine\r
287 self.StartColumn = StartColumn\r
288 self.EndLine = EndLine\r
289 self.EndColumn = EndColumn\r
290\r
291## PcdClass\r
292#\r
293# This class defines a structure of a Pcd\r
e56468c0 294#\r
30fdf114
LG
295# @param ID: ID of a Pcd\r
296# @param CName: CName of a Pcd\r
297# @param TokenSpaceGuidCName: TokenSpaceGuidCName of a Pcd\r
298# @param Token: Token of a Pcd\r
299# @param DatumType: DatumType of a Pcd\r
300# @param Model: Model of a Pcd\r
301# @param BelongsToFile: The Pcd belongs to which file\r
302# @param BelongsToFunction: The Pcd belongs to which function\r
303# @param StartLine: StartLine of a Pcd\r
304# @param StartColumn: StartColumn of a Pcd\r
305# @param EndLine: EndLine of a Pcd\r
306# @param EndColumn: EndColumn of a Pcd\r
307#\r
308# @var ID: ID of a Pcd\r
309# @var CName: CName of a Pcd\r
310# @var TokenSpaceGuidCName: TokenSpaceGuidCName of a Pcd\r
311# @var Token: Token of a Pcd\r
312# @var DatumType: DatumType of a Pcd\r
313# @var Model: Model of a Pcd\r
314# @var BelongsToFile: The Pcd belongs to which file\r
315# @var BelongsToFunction: The Pcd belongs to which function\r
316# @var StartLine: StartLine of a Pcd\r
317# @var StartColumn: StartColumn of a Pcd\r
318# @var EndLine: EndLine of a Pcd\r
319# @var EndColumn: EndColumn of a Pcd\r
320#\r
321class PcdDataClass(object):\r
322 def __init__(self, ID = -1, CName = '', TokenSpaceGuidCName = '', Token = '', DatumType = '', Model = MODEL_UNKNOWN, \\r
323 BelongsToFile = -1, BelongsToFunction = -1, StartLine = -1, StartColumn = -1, EndLine = -1, EndColumn = -1):\r
324 self.ID = ID\r
325 self.CName = CName\r
326 self.TokenSpaceGuidCName = TokenSpaceGuidCName\r
327 self.Token = Token\r
328 self.DatumType = DatumType\r
329 self.BelongsToFile = BelongsToFile\r
330 self.BelongsToFunction = BelongsToFunction\r
331 self.StartLine = StartLine\r
332 self.StartColumn = StartColumn\r
333 self.EndLine = EndLine\r
334 self.EndColumn = EndColumn\r
335\r
336## FileClass\r
337#\r
338# This class defines a structure of a file\r
e56468c0 339#\r
30fdf114
LG
340# @param ID: ID of a File\r
341# @param Name: Name of a File\r
342# @param ExtName: ExtName of a File\r
343# @param Path: Path of a File\r
344# @param FullPath: FullPath of a File\r
345# @param Model: Model of a File\r
346# @param TimeStamp: TimeStamp of a File\r
347# @param FunctionList: FunctionList of a File\r
348# @param IdentifierList: IdentifierList of a File\r
349# @param PcdList: PcdList of a File\r
350#\r
351# @var ID: ID of a File\r
352# @var Name: Name of a File\r
353# @var ExtName: ExtName of a File\r
354# @var Path: Path of a File\r
355# @var FullPath: FullPath of a File\r
356# @var Model: Model of a File\r
357# @var TimeStamp: TimeStamp of a File\r
358# @var FunctionList: FunctionList of a File\r
359# @var IdentifierList: IdentifierList of a File\r
360# @var PcdList: PcdList of a File\r
361#\r
362class FileClass(object):\r
363 def __init__(self, ID = -1, Name = '', ExtName = '', Path = '', FullPath = '', Model = MODEL_UNKNOWN, TimeStamp = '', \\r
364 FunctionList = [], IdentifierList = [], PcdList = []):\r
e56468c0 365 self.ID = ID\r
30fdf114 366 self.Name = Name\r
e56468c0 367 self.ExtName = ExtName\r
30fdf114
LG
368 self.Path = Path\r
369 self.FullPath = FullPath\r
370 self.Model = Model\r
371 self.TimeStamp = TimeStamp\r
e56468c0 372\r
30fdf114
LG
373 self.FunctionList = FunctionList\r
374 self.IdentifierList = IdentifierList\r
375 self.PcdList = PcdList\r