From 7e62f9005bffb19733d6fafee8380ee486ee1337 Mon Sep 17 00:00:00 2001 From: eido79 Date: Thu, 3 Nov 2022 19:06:32 +0100 Subject: [PATCH] [WIP] is_substitute for variant types Fix #721, #722. Experimental: use optional --- .../spirit/home/x3/operator/alternative.hpp | 9 +++-- .../home/x3/support/traits/is_substitute.hpp | 16 +++++---- .../traits/variant_find_substitute.hpp | 2 +- .../support/traits/variant_has_substitute.hpp | 2 +- test/x3/alternative.cpp | 36 ++++++++++++++++--- 5 files changed, 49 insertions(+), 16 deletions(-) mode change 100644 => 100755 include/boost/spirit/home/x3/support/traits/is_substitute.hpp mode change 100644 => 100755 include/boost/spirit/home/x3/support/traits/variant_find_substitute.hpp mode change 100644 => 100755 include/boost/spirit/home/x3/support/traits/variant_has_substitute.hpp diff --git a/include/boost/spirit/home/x3/operator/alternative.hpp b/include/boost/spirit/home/x3/operator/alternative.hpp index 8d3ef26612..8cbc7b3a57 100644 --- a/include/boost/spirit/home/x3/operator/alternative.hpp +++ b/include/boost/spirit/home/x3/operator/alternative.hpp @@ -128,10 +128,13 @@ namespace boost { namespace spirit { namespace x3 { namespace detail >; }; - template