{"published":"2004-11-21 00:00:01","provider_url":"https://hatena.blog","blog_url":"https://blog.cryolite.net/","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fblog.cryolite.net%2Fentry%2F20041121%2Fp2\" title=\"type dispatcher by mpl - Cry&#39;s Blog\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","type":"rich","blog_title":"Cry's Blog","categories":["C++","GP","TMP","PP"],"url":"https://blog.cryolite.net/entry/20041121/p2","description":"#include <boost/preprocessor.hpp> #include <boost/mpl/pair.hpp> #include <boost/mpl/same_as.hpp> #include <boost/mpl/always.hpp> #include <boost/mpl/switch.hpp> #include <boost/mpl/bool.hpp> #include <boost/mpl/list.hpp> #define TYPE_DISPATCHER_MAX_ARITY 10 struct error_t; template<class T, class F>\u2026","image_url":null,"title":"type dispatcher by mpl","provider_name":"Hatena Blog","author_url":"https://blog.hatena.ne.jp/Cryolite/","height":"190","author_name":"Cryolite","width":"100%","version":"1.0"}