# This file is used to define common string related functions used in parsing process\r
#\r
# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
-# This program and the accompanying materials\r
-# are licensed and made available under the terms and conditions of the BSD License\r
-# which accompanies this distribution. The full text of the license may be found at\r
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
#\r
\r
##\r
# Import Modules\r
#\r
+from __future__ import absolute_import\r
import re\r
from . import DataType\r
import Common.LongFilePathOs as os\r
\r
## GetSplitValueList\r
#\r
-# Get a value list from a string with multiple values splited with SplitTag\r
+# Get a value list from a string with multiple values split with SplitTag\r
# The default SplitTag is DataType.TAB_VALUE_SPLIT\r
# 'AAA|BBB|CCC' -> ['AAA', 'BBB', 'CCC']\r
#\r
\r
## GetSplitList\r
#\r
-# Get a value list from a string with multiple values splited with SplitString\r
+# Get a value list from a string with multiple values split with SplitString\r
# The default SplitTag is DataType.TAB_VALUE_SPLIT\r
# 'AAA|BBB|CCC' -> ['AAA', 'BBB', 'CCC']\r
#\r
# Return False if invalid format\r
#\r
# @param String: String with DEFINE statement\r
-# @param Arch: Supportted Arch\r
+# @param Arch: Supported Arch\r
# @param Defines: DEFINE statement to be parsed\r
#\r
# @retval 0 DEFINE statement found, and valid\r
#\r
# @param String: String with INCLUDE statement\r
# @param IncludeFiles: INCLUDE statement to be parsed\r
-# @param Arch: Supportted Arch\r
+# @param Arch: Supported Arch\r
#\r
# @retval True\r
# @retval False\r
## NormPath\r
#\r
# Create a normal path\r
-# And replace DFEINE in the path\r
+# And replace DEFINE in the path\r
#\r
# @param Path: The input value for Path to be converted\r
# @param Defines: A set for DEFINE statement\r
#\r
# Regenerate FileContent\r
#\r
- NewFileContent = NewFileContent + Line + '\n'\r
+ NewFileContent = NewFileContent + Line + '\r\n'\r
\r
if IsFailed:\r
EdkLogger.error("Parser", FORMAT_INVALID, Line=LineNo, File=FileName, RaiseError=EdkLogger.IsRaiseError)\r
\r
## Split string\r
#\r
-# Revmove '"' which startswith and endswith string\r
+# Remove '"' which startswith and endswith string\r
#\r
-# @param String: The string need to be splited\r
+# @param String: The string need to be split\r
#\r
# @retval String: The string after removed '""'\r
#\r