summaryrefslogtreecommitdiffstats
path: root/Source/WTF/wtf/StringPrintStream.h
diff options
context:
space:
mode:
authorKonstantin Tokarev <annulen@yandex.ru>2016-08-25 19:20:41 +0300
committerKonstantin Tokarev <annulen@yandex.ru>2017-02-02 12:30:55 +0000
commit6882a04fb36642862b11efe514251d32070c3d65 (patch)
treeb7959826000b061fd5ccc7512035c7478742f7b0 /Source/WTF/wtf/StringPrintStream.h
parentab6df191029eeeb0b0f16f127d553265659f739e (diff)
Imported QtWebKit TP3 (git b57bc6801f1876c3220d5a4bfea33d620d477443)
Change-Id: I3b1d8a2808782c9f34d50240000e20cb38d3680f Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
Diffstat (limited to 'Source/WTF/wtf/StringPrintStream.h')
-rw-r--r--Source/WTF/wtf/StringPrintStream.h21
1 files changed, 12 insertions, 9 deletions
diff --git a/Source/WTF/wtf/StringPrintStream.h b/Source/WTF/wtf/StringPrintStream.h
index c6ed3ddc6..18eecb208 100644
--- a/Source/WTF/wtf/StringPrintStream.h
+++ b/Source/WTF/wtf/StringPrintStream.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2012 Apple Inc. All rights reserved.
+ * Copyright (C) 2012, 2016 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -35,9 +35,11 @@ namespace WTF {
class StringPrintStream : public PrintStream {
public:
WTF_EXPORT_PRIVATE StringPrintStream();
- WTF_EXPORT_PRIVATE ~StringPrintStream();
+ WTF_EXPORT_PRIVATE virtual ~StringPrintStream();
- virtual void vprintf(const char* format, va_list) WTF_ATTRIBUTE_PRINTF(2, 0);
+ WTF_EXPORT_PRIVATE virtual void vprintf(const char* format, va_list) override WTF_ATTRIBUTE_PRINTF(2, 0);
+
+ size_t length() const { return m_next; }
WTF_EXPORT_PRIVATE CString toCString();
WTF_EXPORT_PRIVATE String toString();
@@ -53,19 +55,20 @@ private:
};
// Stringify any type T that has a WTF::printInternal(PrintStream&, const T&)
-template<typename T>
-CString toCString(const T& value)
+
+template<typename... Types>
+CString toCString(const Types&... values)
{
StringPrintStream stream;
- stream.print(value);
+ stream.print(values...);
return stream.toCString();
}
-template<typename T>
-String toString(const T& value)
+template<typename... Types>
+String toString(const Types&... values)
{
StringPrintStream stream;
- stream.print(value);
+ stream.print(values...);
return stream.toString();
}