
Hi,
I suggest you take a deep look at adobe::any_iterator for inspiration or, better yet, use it directly (it's an all header library, and the licensing terms are very convenient.) I suspect using boost::iterator_facade is not the way to go here: for one, all your iterator wrapper operations (increment, dereference, etc.) have to be built in terms of a virtual interface , which iterator_facade does not lends itself to.
Are you referring to some older version of any_iterator? The recent version I got from SF does not in fact contain adobe::any_iterator (the docs were not updated, it seems), but rather adobe::iter and adobe::bidirectional_iter - but I was not able to use these with B.MI so far. From the changelog it seems they changed the internals to use "the poly<> concept", whatever this means, and I guess this is when any_iterator disappeared... Thanks, Filip