diff options
Diffstat (limited to 'include/lldb/Utility/Timeout.h')
-rw-r--r-- | include/lldb/Utility/Timeout.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/include/lldb/Utility/Timeout.h b/include/lldb/Utility/Timeout.h index 6c6fd009acb0..7b627a45fc63 100644 --- a/include/lldb/Utility/Timeout.h +++ b/include/lldb/Utility/Timeout.h @@ -11,7 +11,8 @@ #define liblldb_Timeout_h_ #include "llvm/ADT/Optional.h" -#include <chrono> +#include "llvm/Support/Chrono.h" +#include "llvm/Support/FormatProviders.h" namespace lldb_private { @@ -52,4 +53,19 @@ public: } // namespace lldb_private +namespace llvm { +template<typename Ratio> +struct format_provider<lldb_private::Timeout<Ratio>, void> { + static void format(const lldb_private::Timeout<Ratio> &timeout, + raw_ostream &OS, StringRef Options) { + typedef typename lldb_private::Timeout<Ratio>::value_type Dur; + + if (!timeout) + OS << "<infinite>"; + else + format_provider<Dur>::format(*timeout, OS, Options); + } +}; +} + #endif // liblldb_Timeout_h_ |