37#if __clang_major__ >= 17
39#include <wx/unichar.h>
42struct std::char_traits<wxUniChar>
44 using char_type = wxUniChar;
46 using off_type = std::streamoff;
47 using pos_type = std::streampos;
48 using state_type = mbstate_t;
50 static inline void assign( char_type& __c1,
const char_type& __c2 )
noexcept { __c1 = __c2; }
52 static inline bool eq( char_type __c1, char_type __c2 )
noexcept {
return __c1 == __c2; }
54 static inline bool lt( char_type __c1, char_type __c2 )
noexcept {
return __c1 < __c2; }
56 static constexpr int compare(
const char_type* __s1,
const char_type* __s2,
size_t __n )
58 for( ; __n; --__n, ++__s1, ++__s2 )
60 if( lt( *__s1, *__s2 ) )
63 if( lt( *__s2, *__s1 ) )
70 static size_t length(
const char_type* __s )
74 for( ; !eq( *__s, char_type( 0 ) ); ++__s )
80 static constexpr const char_type*
find(
const char_type* __s,
size_t __n,
const char_type& __a )
92 static constexpr char_type*
move( char_type* __s1,
const char_type* __s2,
size_t __n )
97 char_type* __r = __s1;
101 for( ; __n; --__n, ++__s1, ++__s2 )
102 assign( *__s1, *__s2 );
104 else if( __s2 < __s1 )
110 assign( *--__s1, *--__s2 );
116 static constexpr char_type*
copy( char_type* __s1,
const char_type* __s2,
size_t __n )
118 char_type* __r = __s1;
120 for( ; __n; --__n, ++__s1, ++__s2 )
121 assign( *__s1, *__s2 );
126 static char_type* assign( char_type* __s,
size_t __n, char_type __a )
128 char_type* __r = __s;
130 for( ; __n; --__n, ++__s )
136 static inline constexpr int_type not_eof( int_type __c )
noexcept
138 return eq_int_type( __c, eof() ) ? ~eof() : __c;
141 static inline char_type to_char_type( int_type __c )
noexcept {
return char_type( __c ); }
143 static inline int_type to_int_type( char_type __c )
noexcept {
return static_cast<int_type
>( __c ); }
145 static inline constexpr bool eq_int_type( int_type __c1, int_type __c2 )
noexcept {
return __c1 == __c2; }
147 static inline constexpr int_type eof() noexcept {
return static_cast<int_type
>( EOF ); }
153#include <nlohmann/json.hpp>
This is simply a "stub" meant to inform MSVC when compiling shared libraries that it can find templat...