/** @file\r
Unicode Collation protocol that follows the UEFI 2.0 specification.\r
- This protocol is used to allow code running in the boot services environment \r
+ This protocol is used to allow code running in the boot services environment\r
to perform lexical comparison functions on Unicode strings for given languages.\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation \r
- All rights reserved. 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
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
\r
///\r
/// Protocol GUID name defined in EFI1.1.\r
-/// \r
+///\r
#define UNICODE_COLLATION_PROTOCOL EFI_UNICODE_COLLATION_PROTOCOL_GUID\r
\r
///\r
/// Protocol defined in EFI1.1.\r
-/// \r
+///\r
typedef EFI_UNICODE_COLLATION_PROTOCOL UNICODE_COLLATION_INTERFACE;\r
\r
///\r
@param Str1 A pointer to a Null-terminated string.\r
@param Str2 A pointer to a Null-terminated string.\r
\r
- @retval 0 Str1 is equivalent to Str2\r
- @retval >0 Str1 is lexically greater than Str2\r
- @retval <0 Str1 is lexically less than Str2\r
+ @retval 0 Str1 is equivalent to Str2.\r
+ @retval >0 Str1 is lexically greater than Str2.\r
+ @retval <0 Str1 is lexically less than Str2.\r
\r
**/\r
typedef\r
);\r
\r
/**\r
- Performs a case-insensitive comparison of a Null-terminated \r
+ Performs a case-insensitive comparison of a Null-terminated\r
pattern string and a Null-terminated string.\r
\r
@param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.\r
);\r
\r
/**\r
- Converts all the characters in a Null-terminated string to \r
+ Converts all the characters in a Null-terminated string to\r
lower case characters.\r
\r
@param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.\r
);\r
\r
/**\r
- Converts an 8.3 FAT file name in an OEM character set to a Null-terminated \r
+ Converts an 8.3 FAT file name in an OEM character set to a Null-terminated\r
string.\r
\r
@param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.\r
@param FatSize The size of the string Fat in bytes.\r
@param Fat A pointer to a Null-terminated string that contains an 8.3 file\r
- name using an OEM character set.\r
+ name using an 8-bit OEM character set.\r
@param String A pointer to a Null-terminated string. The string must\r
be allocated in advance to hold FatSize characters.\r
\r
);\r
\r
/**\r
- Converts a Null-terminated string to legal characters in a FAT \r
- filename using an OEM character set. \r
+ Converts a Null-terminated string to legal characters in a FAT\r
+ filename using an OEM character set.\r
\r
@param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.\r
@param String A pointer to a Null-terminated string.\r
@param FatSize The size of the string Fat in bytes.\r
- @param Fat A pointer to a string that contains the converted version of \r
+ @param Fat A pointer to a string that contains the converted version of\r
String using legal FAT characters from an OEM character set.\r
\r
@retval TRUE One or more conversions failed and were substituted with '_'\r
);\r
\r
///\r
-/// The EFI_UNICODE_COLLATION_PROTOCOL is used to perform case-insensitive \r
-/// comparisons of strings. \r
+/// The EFI_UNICODE_COLLATION_PROTOCOL is used to perform case-insensitive\r
+/// comparisons of strings.\r
///\r
struct _EFI_UNICODE_COLLATION_PROTOCOL {\r
EFI_UNICODE_COLLATION_STRICOLL StriColl;\r
//\r
EFI_UNICODE_COLLATION_FATTOSTR FatToStr;\r
EFI_UNICODE_COLLATION_STRTOFAT StrToFat;\r
- \r
+\r
///\r
- /// A Null-terminated ASCII string array that contains one or more \r
- /// language codes. This array is specified in RFC 4646 format.\r
+ /// A Null-terminated ASCII string array that contains one or more language codes.\r
+ /// When this field is used for UnicodeCollation2, it is specified in RFC 4646 format.\r
+ /// When it is used for UnicodeCollation, it is specified in ISO 639-2 format.\r
///\r
CHAR8 *SupportedLanguages;\r
};\r