[boost] metaprogramming: associating a type with another type