mirror of
https://github.com/marzer/tomlplusplus.git
synced 2025-02-25 06:39:58 +00:00
also added support for wide strings on Windows (closes #42): - added wide-string path arg overloads of `parse()` and `parse_file()` - added wide-string support to all relevant `table` and `array` ops - added `std::wstring` support to `node::value()` and `node::value_or()` - added `std::wstring` support to `node_view::value()` and `node_view::value_or()` - added wide-string overloads of `table::operator[]` - added wide-string overloads of `node_view::operator[]` - added `source_region::wide_path()` - added `TOML_WINDOWS_COMPAT` switch for explicitly enabling/disabling this stuff also: - fixed internal macro `assert_or_assume` leaking out of `toml_parser.hpp` - deprecated `node_view::get()` in favour of `node_view::node()` - minor documentation fixes - minor cleanup
64 lines
2.6 KiB
C
64 lines
2.6 KiB
C
//# This file is a part of toml++ and is subject to the the terms of the MIT license.
|
|
//# Copyright (c) 2019-2020 Mark Gillard <mark.gillard@outlook.com.au>
|
|
//# See https://github.com/marzer/tomlplusplus/blob/master/LICENSE for the full license text.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
#ifdef _WIN32
|
|
|
|
#define WIN32_LEAN_AND_MEAN
|
|
#define VC_EXTRALEAN
|
|
#define NOATOM // - Atom Manager routines
|
|
#define NOBITMAP
|
|
#define NOCLIPBOARD // - Clipboard routines
|
|
#define NOCOLOR // - Screen colors
|
|
#define NOCOMM // - COMM driver routines
|
|
#define NOCTLMGR // - Control and Dialog routines
|
|
#define NODEFERWINDOWPOS // - DeferWindowPos routines
|
|
#define NODRAWTEXT // - DrawText() and DT_*
|
|
#define NOGDI // - All GDI defines and routines
|
|
#define NOGDICAPMASKS // - CC_*, LC_*, PC_*, CP_*, TC_*, RC_
|
|
#define NOHELP // - Help engine interface.
|
|
#define NOICONS // - IDI_*
|
|
#define NOKANJI // - Kanji support stuff.
|
|
#define NOKEYSTATES // - MK_*
|
|
#define NOKERNEL // - All KERNEL defines and routines
|
|
#define NOMB // - MB_* and MessageBox()
|
|
#define NOMCX // - Modem Configuration Extensions
|
|
#define NOMENUS // - MF_*
|
|
#define NOMEMMGR // - GMEM_*, LMEM_*, GHND, LHND, associated routines
|
|
#define NOMETAFILE // - typedef METAFILEPICT
|
|
#define NOMINMAX // - Macros min(a,b) and max(a,b)
|
|
#define NOMSG // - typedef MSG and associated routines
|
|
//#define NONLS // - All NLS defines and routines
|
|
#define NOOPENFILE // - OpenFile(), OemToAnsi, AnsiToOem, and OF_*
|
|
#define NOPROFILER // - Profiler interface.
|
|
#define NORASTEROPS // - Binary and Tertiary raster ops
|
|
#define NOSCROLL // - SB_* and scrolling routines
|
|
#define NOSERVICE // - All Service Controller routines, SERVICE_ equates, etc.
|
|
#define NOSHOWWINDOW // - SW_*
|
|
#define NOSOUND // - Sound driver routines
|
|
#define NOSYSCOMMANDS // - SC_*
|
|
#define NOSYSMETRICS // - SM_*
|
|
#define NOTEXTMETRIC // - typedef TEXTMETRIC and associated routines
|
|
#define NOUSER // - All USER defines and routines
|
|
#define NOVIRTUALKEYCODES // - VK_*
|
|
#define NOWH // - SetWindowsHook and WH_*
|
|
#define NOWINOFFSETS // - GWL_*, GCL_*, associated routines
|
|
#define NOWINMESSAGES // - WM_*, EM_*, LB_*, CB_*
|
|
#define NOWINSTYLES // - WS_*, CS_*, ES_*, LBS_*, SBS_*, CBS_*
|
|
#include <Windows.h>
|
|
|
|
inline void init_utf8_console() noexcept
|
|
{
|
|
SetConsoleOutputCP(65001); //CP_UTF8
|
|
}
|
|
|
|
#else
|
|
|
|
inline void init_utf8_console() noexcept
|
|
{
|
|
// no-op
|
|
}
|
|
|
|
#endif
|