1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
// bindgen-flags: --with-derive-hash --with-derive-partialeq --with-derive-eq template <typename T> class Foo { typedef T (FunctionPtr)(); }; template<typename T> class RefPtr { template<typename R, typename... Args> class Proxy { typedef R (T::*member_function)(Args...); }; }; template<typename T> using Returner = T(*)();