add boost::variant container type check