This patch clean some coding style issues, majorly for space character. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19080 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			77 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| ## @file
 | |
| # Define a dictionary structure
 | |
| #
 | |
| # Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
 | |
| # This program and the accompanying materials
 | |
| # are licensed and made available under the terms and conditions of the BSD License
 | |
| # which accompanies this distribution.  The full text of the license may be found at
 | |
| # http://opensource.org/licenses/bsd-license.php
 | |
| #
 | |
| # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | |
| #
 | |
| 
 | |
| ##
 | |
| # Import Modules
 | |
| #
 | |
| import EdkLogger
 | |
| from DataType import *
 | |
| from Common.LongFilePathSupport import OpenLongFilePath as open
 | |
| 
 | |
| ## Convert a text file to a dictionary
 | |
| #
 | |
| # Convert a text file to a dictionary of (name:value) pairs.
 | |
| #
 | |
| # @retval 0  Convert successful
 | |
| # @retval 1  Open file failed
 | |
| #
 | |
| def ConvertTextFileToDictionary(FileName, Dictionary, CommentCharacter, KeySplitCharacter, ValueSplitFlag, ValueSplitCharacter):
 | |
|     try:
 | |
|         F = open(FileName, 'r')
 | |
|         Keys = []
 | |
|         for Line in F:
 | |
|             if Line.startswith(CommentCharacter):
 | |
|                 continue
 | |
|             LineList = Line.split(KeySplitCharacter, 1)
 | |
|             if len(LineList) >= 2:
 | |
|                 Key = LineList[0].split()
 | |
|             if len(Key) == 1 and Key[0][0] != CommentCharacter and Key[0] not in Keys:
 | |
|                 if ValueSplitFlag:
 | |
|                     Dictionary[Key[0]] = LineList[1].replace('\\', '/').split(ValueSplitCharacter)
 | |
|                 else:
 | |
|                     Dictionary[Key[0]] = LineList[1].strip().replace('\\', '/')
 | |
|                 Keys += [Key[0]]
 | |
|         F.close()
 | |
|         return 0
 | |
|     except:
 | |
|         EdkLogger.info('Open file failed')
 | |
|         return 1
 | |
| 
 | |
| ## Print the dictionary
 | |
| #
 | |
| # Print all items of dictionary one by one
 | |
| #
 | |
| # @param Dict:  The dictionary to be printed
 | |
| #
 | |
| def printDict(Dict):
 | |
|     if Dict != None:
 | |
|         KeyList = Dict.keys()
 | |
|         for Key in KeyList:
 | |
|             if Dict[Key] != '':
 | |
|                 print Key + ' = ' + str(Dict[Key])
 | |
| 
 | |
| ## Print the dictionary
 | |
| #
 | |
| # Print the items of dictionary which matched with input key
 | |
| #
 | |
| # @param list:  The dictionary to be printed
 | |
| # @param key:   The key of the item to be printed
 | |
| #
 | |
| def printList(Key, List):
 | |
|     if type(List) == type([]):
 | |
|         if len(List) > 0:
 | |
|             if Key.find(TAB_SPLIT) != -1:
 | |
|                 print "\n" + Key
 | |
|                 for Item in List:
 | |
|                     print Item
 |