
Hi there, is it somehow possible to access a sequence element at runtime? Just image you're reading some name value pairs from file and you would like them to assign them to a fusion sequences. This way I don't know they order the values are supplied. Is that possible? For example take the following code: #include <string> #include <algorithm> #include <functional> #include <vector> #include <boost/any.hpp> #include <boost/bind.hpp> #include <boost/fusion/sequence.hpp> using namespace std; using namespace boost; struct A {}; struct B {}; struct info { string name; any value_type; }; static info info_table[] = { { "A_Value", any( A() ) }, { "B_Value", any( B() ) } }; string& get_name( info& i ) { return i.name; } typedef fusion::map< fusion::pair< A , int > , fusion::pair< B , double > > seq_type; int _tmain(int argc, _TCHAR* argv[]) { // Image a file read has delivered the following name value pair. string name = "A_Value"; int a_value = 12; // Find the type of the supplied name info* p = find_if( &info_table[0] , &info_table[0] + 2 , bind( equal_to<string>() , bind( &get_name, _1 ) , name )); seq_type seq; // How to add the value to the supplied name?? } Christian