9
9
#if (__cplusplus < 201305L && _MSC_VER < 1900)
10
10
#error "[Boost::ext].SML requires C++14 support (Clang-3.4+, GCC-5.1+, MSVC-2015+)"
11
11
#else
12
- #define BOOST_SML_VERSION 1'1'2
12
+ #define BOOST_SML_VERSION 1'1'3
13
13
#define BOOST_SML_NAMESPACE_BEGIN \
14
14
namespace boost { \
15
15
inline namespace ext { \
16
16
namespace sml { \
17
- inline namespace v1_1_2 {
17
+ inline namespace v1_1_3 {
18
18
#define BOOST_SML_NAMESPACE_END \
19
19
} \
20
20
} \
@@ -216,7 +216,7 @@ struct remove_reference<T &&> {
216
216
};
217
217
template <class T >
218
218
using remove_reference_t = typename remove_reference<T>::type;
219
- } // namespace aux
219
+ }
220
220
namespace aux {
221
221
using swallow = int [];
222
222
template <int ...>
@@ -480,7 +480,7 @@ auto get_type_name(const char *ptr, index_sequence<Ns...>) {
480
480
static const char str[] = {ptr[N + Ns]..., 0 };
481
481
return str;
482
482
}
483
- } // namespace detail
483
+ }
484
484
template <class T >
485
485
const char *get_type_name () {
486
486
#if defined(_MSC_VER) && !defined(__clang__)
@@ -525,7 +525,7 @@ struct string<T> {
525
525
}
526
526
static auto c_str_impl (...) { return get_type_name<T>(); }
527
527
};
528
- } // namespace aux
528
+ }
529
529
namespace back {
530
530
namespace policies {
531
531
struct defer_queue_policy__ {};
@@ -535,8 +535,8 @@ struct defer_queue : aux::pair<back::policies::defer_queue_policy__, defer_queue
535
535
using rebind = T<U>;
536
536
using flag = bool ;
537
537
};
538
- } // namespace policies
539
- } // namespace back
538
+ }
539
+ }
540
540
namespace back {
541
541
template <class ... Ts>
542
542
class queue_event {
@@ -627,7 +627,7 @@ struct deque_handler : queue_event_call<TEvents>... {
627
627
}
628
628
void *deque_{};
629
629
};
630
- } // namespace back
630
+ }
631
631
namespace back {
632
632
struct _ {};
633
633
struct initial {};
@@ -709,7 +709,7 @@ template <class... TEvents>
709
709
struct defer : deque_handler<TEvents...> {
710
710
using deque_handler<TEvents...>::deque_handler;
711
711
};
712
- } // namespace back
712
+ }
713
713
namespace back {
714
714
template <class >
715
715
class sm ;
@@ -832,7 +832,7 @@ template <class T, class... Ts>
832
832
struct convert_to_sm <T, aux::type_list<Ts...>> {
833
833
using type = aux::type_list<sm_impl<T>, sm_impl<typename T::template rebind<Ts>>...>;
834
834
};
835
- } // namespace back
835
+ }
836
836
namespace back {
837
837
template <class >
838
838
class sm ;
@@ -919,7 +919,7 @@ struct transitions_sub<sm<TSM>> {
919
919
return false ;
920
920
}
921
921
};
922
- } // namespace back
922
+ }
923
923
namespace back {
924
924
template <class >
925
925
class sm ;
@@ -1037,7 +1037,7 @@ struct get_event_mapping_impl_helper<on_exit<T1, T2>, TMappings>
1037
1037
: decltype (get_event_mapping_impl<on_exit<T1, T2>>((TMappings *)0 )) {};
1038
1038
template <class T , class TMappings >
1039
1039
using get_event_mapping_t = get_event_mapping_impl_helper<T, TMappings>;
1040
- } // namespace back
1040
+ }
1041
1041
namespace back {
1042
1042
namespace policies {
1043
1043
struct dispatch_policy__ {};
@@ -1112,8 +1112,8 @@ struct fold_expr {
1112
1112
}
1113
1113
};
1114
1114
#endif
1115
- } // namespace policies
1116
- } // namespace back
1115
+ }
1116
+ }
1117
1117
namespace back {
1118
1118
template <class >
1119
1119
class sm ;
@@ -1180,8 +1180,8 @@ void log_guard(const aux::type<TLogger> &, TDeps &deps, const aux::zero_wrapper<
1180
1180
bool result) {
1181
1181
return static_cast <aux::pool_type<TLogger &> &>(deps).value .template log_guard <SM>(guard.get (), event, result);
1182
1182
}
1183
- } // namespace policies
1184
- } // namespace back
1183
+ }
1184
+ }
1185
1185
namespace back {
1186
1186
namespace policies {
1187
1187
struct process_queue_policy__ {};
@@ -1190,14 +1190,14 @@ struct process_queue : aux::pair<back::policies::process_queue_policy__, process
1190
1190
template <class U >
1191
1191
using rebind = T<U>;
1192
1192
};
1193
- } // namespace policies
1194
- } // namespace back
1193
+ }
1194
+ }
1195
1195
namespace back {
1196
1196
namespace policies {
1197
1197
struct testing_policy__ {};
1198
1198
struct testing : aux::pair<testing_policy__, testing> {};
1199
- } // namespace policies
1200
- } // namespace back
1199
+ }
1200
+ }
1201
1201
namespace back {
1202
1202
namespace policies {
1203
1203
struct thread_safety_policy__ {
@@ -1217,8 +1217,8 @@ struct thread_safe : aux::pair<thread_safety_policy__, thread_safe<TLock>> {
1217
1217
}
1218
1218
TLock lock;
1219
1219
};
1220
- } // namespace policies
1221
- } // namespace back
1220
+ }
1221
+ }
1222
1222
namespace back {
1223
1223
struct no_policy : policies::thread_safety_policy__ {
1224
1224
using type = no_policy;
@@ -1257,7 +1257,7 @@ struct sm_policy {
1257
1257
template <class T >
1258
1258
using rebind = typename rebind_impl<T, TPolicies...>::type;
1259
1259
};
1260
- } // namespace back
1260
+ }
1261
1261
namespace concepts {
1262
1262
struct callable_fallback {
1263
1263
void operator ()();
@@ -1273,15 +1273,15 @@ template <class T, class R, class TBase, class... TArgs>
1273
1273
struct callable <T, R (TBase::*)(TArgs...)> : aux::true_type {};
1274
1274
template <class T , class R , class TBase , class ... TArgs>
1275
1275
struct callable <T, R (TBase::*)(TArgs...) const > : aux::true_type {};
1276
- } // namespace concepts
1276
+ }
1277
1277
namespace concepts {
1278
1278
template <class T >
1279
1279
decltype (aux::declval<T>().operator ()()) composable_impl(int );
1280
1280
template <class >
1281
1281
void composable_impl (...);
1282
1282
template <class T >
1283
1283
struct composable : aux::is<aux::pool, decltype (composable_impl<T>(0 ))> {};
1284
- } // namespace concepts
1284
+ }
1285
1285
#if !defined(BOOST_SML_DISABLE_EXCEPTIONS)
1286
1286
#if !(defined(__cpp_exceptions) || defined(__EXCEPTIONS) || defined(_CPPUNWIND))
1287
1287
#define BOOST_SML_DISABLE_EXCEPTIONS true
@@ -1738,7 +1738,7 @@ class sm {
1738
1738
deps_t deps_;
1739
1739
sub_sms_t sub_sms_;
1740
1740
};
1741
- } // namespace back
1741
+ }
1742
1742
namespace front {
1743
1743
struct operator_base {};
1744
1744
struct action_base {};
@@ -1970,7 +1970,7 @@ class not_ : operator_base {
1970
1970
private:
1971
1971
T g;
1972
1972
};
1973
- } // namespace front
1973
+ }
1974
1974
template <class T , __BOOST_SML_REQUIRES(concepts::callable<bool , T>::value)>
1975
1975
auto operator!(const T &t) {
1976
1976
return front::not_<aux::zero_wrapper<T>>(aux::zero_wrapper<T>{t});
@@ -1999,8 +1999,8 @@ struct defer : action_base {
1999
1999
}
2000
2000
}
2001
2001
};
2002
- } // namespace actions
2003
- } // namespace front
2002
+ }
2003
+ }
2004
2004
using testing = back::policies::testing;
2005
2005
template <class T >
2006
2006
using logger = back::policies::logger<T>;
@@ -2026,7 +2026,7 @@ auto transitional_impl(T &&t) -> aux::always<typename T::dst_state, typename T::
2026
2026
decltype(T::initial), decltype(T::history)>;
2027
2027
template <class T >
2028
2028
struct transitional : decltype (transitional_impl(aux::declval<T>())) {};
2029
- } // namespace concepts
2029
+ }
2030
2030
namespace front {
2031
2031
namespace actions {
2032
2032
struct process {
@@ -2047,8 +2047,8 @@ struct process {
2047
2047
return process_impl<TEvent>{event};
2048
2048
}
2049
2049
};
2050
- } // namespace actions
2051
- } // namespace front
2050
+ }
2051
+ }
2052
2052
namespace front {
2053
2053
template <class , class >
2054
2054
struct transition_eg ;
@@ -2066,7 +2066,7 @@ struct event {
2066
2066
}
2067
2067
auto operator ()() const { return TEvent{}; }
2068
2068
};
2069
- } // namespace front
2069
+ }
2070
2070
namespace front {
2071
2071
struct initial_state {};
2072
2072
struct history_state {};
@@ -2159,7 +2159,7 @@ struct state_sm<T, aux::enable_if_t<concepts::composable<T>::value>> {
2159
2159
using type = state<back::sm<back::sm_policy<T>>>;
2160
2160
};
2161
2161
#endif
2162
- } // namespace front
2162
+ }
2163
2163
namespace front {
2164
2164
struct internal {};
2165
2165
template <class , class >
@@ -2593,7 +2593,7 @@ struct transition<state<internal>, state<S2>, front::event<E>, always, none> {
2593
2593
}
2594
2594
__BOOST_SML_ZERO_SIZE_ARRAY (aux::byte);
2595
2595
};
2596
- } // namespace front
2596
+ }
2597
2597
using _ = back::_;
2598
2598
#if !(defined(_MSC_VER) && !defined(__clang__))
2599
2599
template <class TEvent >
@@ -2641,7 +2641,7 @@ constexpr auto operator""_e() {
2641
2641
return event<aux::string<T, Chrs...>>;
2642
2642
}
2643
2643
#endif
2644
- } // namespace literals
2644
+ }
2645
2645
__BOOST_SML_UNUSED static front::state<back::terminate_state> X;
2646
2646
__BOOST_SML_UNUSED static front::history_state H;
2647
2647
__BOOST_SML_UNUSED static front::actions::defer defer;
0 commit comments