This fixes #64. I still get a pretty unhelpful message from msvc simply saying "contraints not satisfied" but thats an issue with msvc imo, the information is now there for it to be more helpful if it wants.
I also got a little bit carried away once I realised I could generalise things a little. On the upside, some of the constraints on a Filter are now better defined (variant of types satisfying body for body_for)... but there is some possibly quite obscure TMP code needed to make it happen.
I am currently waiting on this SO question for the answer to why it currently doesn't build on non-msvc should be fixed
This fixes #64. I still get a pretty unhelpful message from msvc simply saying "contraints not satisfied" but thats an issue with msvc imo, the information is now there for it to be more helpful if it wants.
I also got a little bit carried away once I realised I could generalise things a little. On the upside, some of the constraints on a
Filter
are now better defined (variant of types satisfying body forbody_for
)... but there is some possibly quite obscure TMP code needed to make it happen.I am currently waiting on this SO question for the answer to why it currently doesn't build on non-msvcshould be fixed