mirror of https://github.com/acidanthera/audk.git
49 lines
2.0 KiB
C
49 lines
2.0 KiB
C
|
/** @file
|
||
|
Concatenation Functions for <wchar.h>.
|
||
|
|
||
|
Unless explicitly stated otherwise, if the execution of a function declared
|
||
|
in this file causes copying to take place between objects that overlap, the
|
||
|
behavior is undefined.
|
||
|
|
||
|
Copyright (c) 2010, 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 that 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.
|
||
|
**/
|
||
|
#include <Uefi.h>
|
||
|
#include <Library/BaseLib.h>
|
||
|
#include <Library/BaseMemoryLib.h>
|
||
|
|
||
|
#include <LibConfig.h>
|
||
|
|
||
|
#include <wchar.h>
|
||
|
|
||
|
/** The wcscat function appends a copy of the wide string pointed to by s2
|
||
|
(including the terminating null wide character) to the end of the wide
|
||
|
string pointed to by s1. The initial wide character of s2 overwrites the
|
||
|
null wide character at the end of s1.
|
||
|
|
||
|
@return The wcscat function returns the value of s1.
|
||
|
**/
|
||
|
wchar_t *wcscat(wchar_t * __restrict s1, const wchar_t * __restrict s2)
|
||
|
{
|
||
|
return (wchar_t *)StrCat( (CHAR16 *)s1, (CONST CHAR16 *)s2);
|
||
|
}
|
||
|
|
||
|
/** The wcsncat function appends not more than n wide characters (a null wide
|
||
|
character and those that follow it are not appended) from the array pointed
|
||
|
to by s2 to the end of the wide string pointed to by s1. The initial wide
|
||
|
character of s2 overwrites the null wide character at the end of s1.
|
||
|
A terminating null wide character is always appended to the result.
|
||
|
|
||
|
@return The wcsncat function returns the value of s1.
|
||
|
**/
|
||
|
wchar_t *wcsncat(wchar_t * __restrict s1, const wchar_t * __restrict s2, size_t n)
|
||
|
{
|
||
|
return (wchar_t *)StrnCat( (CHAR16 *)s1, (CONST CHAR16 *)s2, (UINTN)n);
|
||
|
}
|