File tree Expand file tree Collapse file tree 1 file changed +14
-0
lines changed Expand file tree Collapse file tree 1 file changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -1703,6 +1703,20 @@ class sm {
17031703 });
17041704 return result;
17051705 }
1706+ template <class T = aux::identity<sm_t >, class TState >
1707+ bool is_one_of_current_states_as (const TState&) const {
1708+ using type = typename T::type;
1709+ using sm_impl_t = sm_impl<typename TSM::template rebind<type>>;
1710+ using state_t = typename sm_impl_t ::state_t ;
1711+ using states_ids_t = typename sm_impl_t ::states_ids_t ;
1712+ auto result = false ;
1713+ visit_current_states<T>([&](auto state) {
1714+ (void )state;
1715+ result |= (aux::get_id<state_t , typename TState::type>((states_ids_t *)0 ) ==
1716+ aux::get_id<state_t , typename decltype (state)::type>((states_ids_t *)0 ));
1717+ });
1718+ return result;
1719+ }
17061720 template <class T = aux::identity<sm_t >, class ... TStates,
17071721 __BOOST_SML_REQUIRES (!aux::is_same<no_policy, typename TSM::testing_policy>::value && aux::always<T>::value)>
17081722 void set_current_states(const TStates &...) {
You can’t perform that action at this time.
0 commit comments