Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of boost. Click here for the latest Boost documentation.
PrevUpHomeNext

Struct template result<This(Cont, Value), void>

boost::xpressive::op::insert::result<This(Cont, Value), void>

Synopsis

// In header: <boost/xpressive/regex_actions.hpp>


template<typename This, typename Cont, typename Value> 
struct result<This(Cont, Value), void> {
  // types
  typedef char                                                                                                          yes_type;
  typedef char(&                                                                                                        no_type; 
  typedef mpl::if_c< is_iterator, typename cont_type::iterator, std::pair< typename cont_type::iterator, bool > >::type type;    

  // public member functions
  typedef UNREF(Cont) ;
  typedef UNREF(Value) ;
   BOOST_STATIC_CONSTANT(bool, 
                         is_iterator = (sizeof(yes_type)==sizeof(check_insert_return(scont_.insert(svalue_))))) ;

  // public static functions
  static yes_type check_insert_return(typename cont_type::iterator) ;
  static no_type 
  check_insert_return(std::pair< typename cont_type::iterator, bool >) ;
  static cont_type & scont_;
  static value_type & svalue_;
};

Description

result public member functions

  1. typedef UNREF(Cont) ;
  2. typedef UNREF(Value) ;
  3.  BOOST_STATIC_CONSTANT(bool, 
                           is_iterator = (sizeof(yes_type)==sizeof(check_insert_return(scont_.insert(svalue_))))) ;

result public static functions

  1. static yes_type check_insert_return(typename cont_type::iterator) ;
  2. static no_type 
    check_insert_return(std::pair< typename cont_type::iterator, bool >) ;

PrevUpHomeNext