This recipe will show a tiny piece of the Boost.Fusion library's abilities. We'll be splitting a single tuple into two tuples, one with arithmetic types and the other with all other types.

This recipe will show a tiny piece of the Boost.Fusion library's abilities. We'll be splitting a single tuple into two tuples, one with arithmetic types and the other with all other types.
This recipe requires knowledge of Boost.MPL, placeholders, and Boost.Tuple. Reading this chapter from the beginning is recommended.
This is possibly one of the hardest recipes in this chapter. The resulting types are determined at compile time and values for those types are filled at runtime:
Change the font size
Change margin width
Change background colour