summaryrefslogtreecommitdiffstats
path: root/Tools/WebKitTestRunner/StringFunctions.h
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/WebKitTestRunner/StringFunctions.h')
-rw-r--r--Tools/WebKitTestRunner/StringFunctions.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/Tools/WebKitTestRunner/StringFunctions.h b/Tools/WebKitTestRunner/StringFunctions.h
index 2d0ca72..33e391d 100644
--- a/Tools/WebKitTestRunner/StringFunctions.h
+++ b/Tools/WebKitTestRunner/StringFunctions.h
@@ -44,9 +44,14 @@ namespace WTR {
// Conversion functions
+template<typename T> static inline WKRetainPtr<T> adoptWK(const T item)
+{
+ return WKRetainPtr<T>(AdoptWK, item);
+}
+
inline WKRetainPtr<WKStringRef> toWK(JSStringRef string)
{
- return WKRetainPtr<WKStringRef>(AdoptWK, WKStringCreateWithJSString(string));
+ return adoptWK(WKStringCreateWithJSString(string));
}
inline WKRetainPtr<WKStringRef> toWK(JSRetainPtr<JSStringRef> string)
@@ -92,6 +97,19 @@ inline std::ostream& operator<<(std::ostream& out, const WKRetainPtr<WKStringRef
return out << stringRef.get();
}
+inline std::ostream& operator<<(std::ostream& out, WKURLRef urlRef)
+{
+ if (!urlRef)
+ return out;
+
+ return out << toSTD(adoptWK(WKURLCopyString(urlRef)));
+}
+
+inline std::ostream& operator<<(std::ostream& out, const WKRetainPtr<WKURLRef>& urlRef)
+{
+ return out << urlRef.get();
+}
+
} // namespace WTR
#endif // StringFunctions_h