Header:#include<boost/type_traits/is_stateless.hpp>
or #include<boost/type_traits.hpp>

Compiler Compatibility: If the compiler
does not support partial-specialization of class templates, then this template
can not be used with function types.

Without some (as yet unspecified) help from the compiler, is_stateless will
never report that a class or struct is stateless; this is always safe, if
possibly sub-optimal. Currently (May 2011) compilers more recent than Visual
C++ 8, GCC-4.3, Greenhills 6.0, Intel-11.0, and Codegear have the necessary
compiler intrinsics to
ensure that this trait "just works".