Iterating over boost::hana::tuple
<p>I could not find a way to access real object with <code>hana::for_each</code> iterating over tuples.</p>

<pre><code>struct A {
  std::string name;
}

struct B {
  std::string name;
}

using type_t = decltype(boost::hana::tuple_t&lt;A, B&gt;);
type_t names;

boost::hana::for_each(names, [&amp;](const auto&amp; a) {
      std::cout &lt;&lt; a.name &lt;&lt; std::endl;
    });
</code></pre>

<p>Type of <code>a</code> appears to be <code>hana::tuple_impl&lt;...&gt;</code> and seems to be not-castable to its underlying type <code>decltype(std::decay_t&lt;a&gt;)::type</code>.</p>

<p>I basically want to iterate over a list of templated objects (containers) that have the same interface but contain different values. Better ways to achieve this is welcome.</p>