diff options
Diffstat (limited to 'src/pal/src/include/pal/printfcpp.hpp')
-rw-r--r-- | src/pal/src/include/pal/printfcpp.hpp | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/src/pal/src/include/pal/printfcpp.hpp b/src/pal/src/include/pal/printfcpp.hpp new file mode 100644 index 0000000000..0a728c9fd7 --- /dev/null +++ b/src/pal/src/include/pal/printfcpp.hpp @@ -0,0 +1,133 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +/*++ + + + +Module Name: + + pal/printfcpp.hpp + +Abstract: + Declarations for suspension safe memory allocation functions + + + +--*/ + +#ifndef _PRINTFCPP_HPP +#define _PRINTFCPP_HPP + +#ifdef __cplusplus +#include "pal/threadinfo.hpp" +#endif + +#include <stdarg.h> + +#ifdef __cplusplus +typedef char16_t wchar_16; // __wchar_16_cpp (which is defined in palinternal.h) needs to be redefined to wchar_16. + +extern "C" +{ + int + __cdecl + PAL__vsnprintf( + LPSTR Buffer, + size_t Count, + LPCSTR Format, + va_list ap); + + int + __cdecl + PAL__wvsnprintf( + LPWSTR Buffer, + size_t Count, + LPCWSTR Format, + va_list ap); + + int + __cdecl + PAL_vfprintf( + PAL_FILE *stream, + const char *format, + va_list ap); + + int + __cdecl + PAL_vfwprintf( + PAL_FILE *stream, + const wchar_16 *format, + va_list ap); +} + +namespace CorUnix +{ + int + InternalVfprintf( + CPalThread *pthrCurrent, + PAL_FILE *stream, + const char *format, + va_list ap); + + int + InternalWvsnprintf( + CPalThread *pthrCurrent, + LPWSTR Buffer, + size_t Count, + LPCWSTR Format, + va_list ap); + + int + InternalVsnprintf( + CPalThread *pthrCurrent, + LPSTR Buffer, + size_t Count, + LPCSTR Format, + va_list ap); + + int + InternalVfwprintf( + CPalThread *pthrCurrent, + PAL_FILE *stream, + const wchar_16 *format, + va_list ap); + +} +#else // __cplusplus + + int + __cdecl + PAL__vsnprintf( + LPSTR Buffer, + size_t Count, + LPCSTR Format, + va_list ap); + + int + __cdecl + PAL__wvsnprintf( + LPWSTR Buffer, + size_t Count, + LPCWSTR Format, + va_list ap); + + int + __cdecl + PAL_vfprintf( + PAL_FILE *stream, + const char *format, + va_list ap); + + int + __cdecl + PAL_vfwprintf( + PAL_FILE *stream, + const wchar_16 *format, + va_list ap); + +#endif // __cplusplus + +#endif // _PRINTFCPP_HPP + |