Lines Matching refs:Tp
14 template <class Stream, class Tp,
15 class = decltype(std::declval<Stream&>() << std::declval<Tp const&>())>
17 template <class Stream, class Tp> std::false_type IsStreamableImp(long);
19 template <class Stream, class Tp>
20 struct IsStreamable : decltype(IsStreamableImp<Stream, Tp>(0)) {};
22 template <class Tp, int ST = (IsStreamable<decltype(std::cerr), Tp>::value ? 1
23 : (IsStreamable<decltype(std::wcerr), Tp>::value ? 2 : -1))>
26 static void Print(Tp const&) { std::clog << "Value Not Streamable!\n"; } in Print()
29 template <class Tp>
30 struct SelectStream<Tp, 1> {
31 static void Print(Tp const& val) { std::cerr << val; }
34 template <class Tp>
35 struct SelectStream<Tp, 2> {
36 static void Print(Tp const& val) { std::wcerr << val; }
86 template <class Tp>
87 friend LogType& operator<<(LogType& log, Tp const& value) {
89 SelectStream<Tp>::Print(value);
144 template <class Tp, class Up>
145 std::string PrintMismatch(Tp const& LHS, Up const& RHS, int Elem) {
153 template <class Tp, class Up>
154 bool operator()(Tp const& LHS, Up const& RHS) const {