2 * console-win32-uwp.c: UWP console support for Mono.
4 * Copyright 2016 Microsoft
5 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
10 #if G_HAVE_API_SUPPORT(HAVE_UWP_WINAPI_SUPPORT)
12 #include "mono/metadata/console-win32-internals.h"
15 ves_icall_System_ConsoleDriver_Isatty (HANDLE handle)
18 mono_error_init (&mono_error);
20 g_unsupported_api ("Console");
22 mono_error_set_not_supported (&mono_error, G_UNSUPPORTED_API, "Console");
23 mono_error_set_pending_exception (&mono_error);
25 SetLastError (ERROR_NOT_SUPPORTED);
31 ves_icall_System_ConsoleDriver_SetEcho (MonoBoolean want_echo)
34 mono_error_init (&mono_error);
36 g_unsupported_api ("Console");
38 mono_error_set_not_supported (&mono_error, G_UNSUPPORTED_API, "Console");
39 mono_error_set_pending_exception (&mono_error);
41 SetLastError (ERROR_NOT_SUPPORTED);
47 ves_icall_System_ConsoleDriver_SetBreak (MonoBoolean want_break)
50 mono_error_init (&mono_error);
52 g_unsupported_api ("Console");
54 mono_error_set_not_supported (&mono_error, G_UNSUPPORTED_API, "Console");
55 mono_error_set_pending_exception (&mono_error);
57 SetLastError (ERROR_NOT_SUPPORTED);
63 ves_icall_System_ConsoleDriver_InternalKeyAvailable (gint32 timeout)
66 mono_error_init (&mono_error);
68 g_unsupported_api ("Console");
70 mono_error_set_not_supported (&mono_error, G_UNSUPPORTED_API, "Console");
71 mono_error_set_pending_exception (&mono_error);
73 SetLastError (ERROR_NOT_SUPPORTED);
79 ves_icall_System_ConsoleDriver_TtySetup (MonoString *keypad, MonoString *teardown, MonoArray **control_chars, int **size)
82 mono_error_init (&mono_error);
84 g_unsupported_api ("Console");
86 mono_error_set_not_supported (&mono_error, G_UNSUPPORTED_API, "Console");
87 mono_error_set_pending_exception (&mono_error);
89 SetLastError (ERROR_NOT_SUPPORTED);
94 #else /* G_HAVE_API_SUPPORT(HAVE_UWP_WINAPI_SUPPORT) */
97 // Quiet Visual Studio linker warning, LNK4221, in cases when this source file intentional ends up empty.
98 void __mono_win32_console_windows_uwp_quiet_lnk4221(void) {}
100 #endif /* G_HAVE_API_SUPPORT(HAVE_UWP_WINAPI_SUPPORT) */