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

Click here to view the latest version of this page.
PrevUpHomeNext

Struct at

boost::proto::functional::at — A PolymorphicFunctionObject type that invokes the fusion::at() accessor function on its arguments.

Synopsis

// In header: <boost/proto/functional/fusion/at.hpp>


struct at :  proto::callable {
  // member classes/structs/unions
  template<typename This, typename Seq, typename N> 
  struct result<This(Seq, N)> :  fusion::result_of::at<
      typename boost::remove_reference<Seq>::type
    , typename boost::remove_const<typename boost::remove_reference<N>::type>::type
  >
  {
  };

  // public member functions
  template<typename Seq, typename N> 
    typename fusion::result_of::at< Seq, N >::type 
    operator()(Seq &, N const &) const;
  template<typename Seq, typename N> 
    typename fusion::result_of::at< Seq const, N >::type 
    operator()(Seq const &, N const &) const;
};

Description

A PolymorphicFunctionObject type that invokes the fusion::at() accessor function on its arguments.

at public member functions

  1. template<typename Seq, typename N> 
      typename fusion::result_of::at< Seq, N >::type 
      operator()(Seq & seq, N const & n) const;

    Returns:

    fusion::at<N>(seq)

  2. template<typename Seq, typename N> 
      typename fusion::result_of::at< Seq const, N >::type 
      operator()(Seq const & seq, N const & n) const;

    Returns:

    fusion::at<N>(seq)


PrevUpHomeNext