Boost logo

Boost Users :

Subject: Re: [Boost-users] [Proto] Accessing inner types in transform
From: Joel Falcou (joel.falcou_at_[hidden])
Date: 2008-11-02 13:39:29

So i may have missed something.

Here is the transform :

  struct C_base
  : bp::or_< bp::when< bp::terminal<std::pair<arithmetic_grammar
                     , first_(bp::_)
           , bp::when< bp::terminal<i_value>, int()>
           , bp::when< arithmetic_grammar, bp::_value()>
           , bp::when< bp::unary_expr<bp::_,C_base>,C_base(bp::_child)>
           , bp::when< bp::binary_expr<bp::_
binary_result<arithmetic>(C_base(bp::_left),C_base(bp::_right) )
> {};

here is first_

  struct first_ : bp::callable
    template<class Sig> struct result;
    template<class This, class Pair>
    struct result<This(Pair)>
      typedef typename boost::remove_reference<Pair>::type::first_type type;

Now when I try to get the C_base of a terminal, i got :
erreur: no type named «proto_base_expr» in «struct std::pair<float, float>
and other similar error.

What did I missed ?

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at