|
9 | 9 | #include <vector>
|
10 | 10 |
|
11 | 11 | #ifdef __has_include
|
12 |
| -#if __has_include(<optional>) |
13 |
| -#define _MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
| 12 | +#if __cplusplus > 201402 && __has_include(<optional>) |
| 13 | +#define MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
14 | 14 | #endif
|
15 | 15 | #endif
|
16 | 16 |
|
17 |
| -#ifdef _MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
| 17 | +#ifdef MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
18 | 18 | #include <optional>
|
19 | 19 | #endif
|
20 | 20 |
|
@@ -276,7 +276,7 @@ namespace sqlite {
|
276 | 276 | friend database_binder& operator <<(database_binder& db, const std::u16string& txt);
|
277 | 277 |
|
278 | 278 |
|
279 |
| -#ifdef _MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
| 279 | +#ifdef MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
280 | 280 | template <typename OptionalT> friend database_binder& operator <<(database_binder& db, const std::optional<OptionalT>& val);
|
281 | 281 | template <typename OptionalT> friend void get_col_from_db(database_binder& db, int inx, std::optional<OptionalT>& o);
|
282 | 282 | #endif
|
@@ -791,7 +791,7 @@ namespace sqlite {
|
791 | 791 | sqlite3_result_text16(db, val.data(), -1, SQLITE_TRANSIENT);
|
792 | 792 | }
|
793 | 793 | // std::optional support for NULL values
|
794 |
| -#ifdef _MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
| 794 | +#ifdef MODERN_SQLITE_STD_OPTIONAL_SUPPORT |
795 | 795 | template <typename OptionalT> inline database_binder& operator <<(database_binder& db, const std::optional<OptionalT>& val) {
|
796 | 796 | if(val) {
|
797 | 797 | return operator << (std::move(db), std::move(*val));
|
|
0 commit comments