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