⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iter_fold_if_impl.hpp

📁 正则表达式源代码
💻 HPP
字号:
// preprocessed version of 'boost/mpl/aux_/iter_fold_if_impl.hpp' header// see the original for copyright informationnamespace boost {namespace mpl {namespace aux {template< typename Iterator, typename State >struct iter_fold_if_null_step{    typedef State state;    typedef Iterator iterator;};template< bool >struct iter_fold_if_step_impl{    template<          typename Iterator        , typename State        , typename StateOp        , typename IteratorOp        >    struct result_    {        typedef typename apply2< StateOp,State,Iterator >::type state;        typedef typename IteratorOp::type iterator;    };};template<>struct iter_fold_if_step_impl<false>{    template<          typename Iterator        , typename State        , typename StateOp        , typename IteratorOp        >    struct result_    {        typedef State state;        typedef Iterator iterator;    };};template<      typename Iterator    , typename State    , typename ForwardOp    , typename Predicate    >struct iter_fold_if_forward_step{    typedef typename apply2< Predicate,State,Iterator >::type not_last;    typedef typename iter_fold_if_step_impl<          BOOST_MPL_AUX_MSVC_VALUE_WKND(not_last)::value        >::template result_< Iterator, State, ForwardOp, mpl::next< Iterator> > impl_;    typedef typename impl_::state state;    typedef typename impl_::iterator iterator;};template<      typename Iterator    , typename State    , typename BackwardOp    , typename Predicate    >struct iter_fold_if_backward_step{    typedef typename apply2< Predicate,State,Iterator >::type not_last;    typedef typename iter_fold_if_step_impl<          BOOST_MPL_AUX_MSVC_VALUE_WKND(not_last)::value        >::template result_< Iterator,State,BackwardOp,identity<Iterator> > impl_;    typedef typename impl_::state state;    typedef typename impl_::iterator iterator;};template<      typename Iterator    , typename State    , typename ForwardOp    , typename ForwardPredicate    , typename BackwardOp    , typename BackwardPredicate    >struct iter_fold_if_impl{ private:    typedef iter_fold_if_null_step< Iterator,State > forward_step0;    typedef iter_fold_if_forward_step< typename forward_step0::iterator, typename forward_step0::state, ForwardOp, ForwardPredicate > forward_step1;    typedef iter_fold_if_forward_step< typename forward_step1::iterator, typename forward_step1::state, ForwardOp, ForwardPredicate > forward_step2;    typedef iter_fold_if_forward_step< typename forward_step2::iterator, typename forward_step2::state, ForwardOp, ForwardPredicate > forward_step3;    typedef iter_fold_if_forward_step< typename forward_step3::iterator, typename forward_step3::state, ForwardOp, ForwardPredicate > forward_step4;            typedef typename if_<          typename forward_step4::not_last        , iter_fold_if_impl<              typename forward_step4::iterator            , typename forward_step4::state            , ForwardOp            , ForwardPredicate            , BackwardOp            , BackwardPredicate            >        , iter_fold_if_null_step<              typename forward_step4::iterator            , typename forward_step4::state            >        >::type backward_step4;    typedef iter_fold_if_backward_step< typename forward_step3::iterator, typename backward_step4::state, BackwardOp, BackwardPredicate > backward_step3;    typedef iter_fold_if_backward_step< typename forward_step2::iterator, typename backward_step3::state, BackwardOp, BackwardPredicate > backward_step2;    typedef iter_fold_if_backward_step< typename forward_step1::iterator, typename backward_step2::state, BackwardOp, BackwardPredicate > backward_step1;    typedef iter_fold_if_backward_step< typename forward_step0::iterator, typename backward_step1::state, BackwardOp, BackwardPredicate > backward_step0;     public:    typedef typename backward_step0::state state;    typedef typename backward_step4::iterator iterator;};} // namespace aux} // namespace mpl} // namespace boost

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -