aboutsummaryrefslogtreecommitdiff
path: root/include/lldb/Utility/Timeout.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/lldb/Utility/Timeout.h')
-rw-r--r--include/lldb/Utility/Timeout.h18
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_