diff --git a/src/lib/meta/trait.hpp b/src/lib/meta/trait.hpp index 0497d16ab..0b33c83cc 100644 --- a/src/lib/meta/trait.hpp +++ b/src/lib/meta/trait.hpp @@ -73,6 +73,8 @@ namespace std { template class reference_wrapper; template class shared_ptr; template class unique_ptr; + template class basic_filebuf; + template class char_traits; } namespace lib{ template class P; @@ -368,17 +370,23 @@ namespace meta { > { }; + // need to exclude files and input streams from automatic string conversion + template + struct is_StreamSource + : is_same > > + { }; + /** when to use custom string conversions for output streams */ template struct use_StringConversion4Stream : __and_::TypePlain> ,__not_> ,__not_> + ,__not_> > { }; - /** detect smart pointers */ template struct is_smart_ptr