Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/Utils.cpp

Issue 29449592: Issue 5183 - Provide async interface for FileSystem (Closed) Base URL: https://hg.adblockplus.org/libadblockplus/
Patch Set: Rebased on https://codereview.adblockplus.org/29481704 Created July 6, 2017, 10:40 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/Utils.cpp
===================================================================
--- a/src/Utils.cpp
+++ b/src/Utils.cpp
@@ -30,22 +30,38 @@
{
v8::String::Utf8Value stringValue(value);
if (stringValue.length())
return std::string(*stringValue, stringValue.length());
else
return std::string();
}
+StringBuffer Utils::StringBufferFromV8String(const v8::Handle<v8::Value>& value)
+{
+ v8::String::Utf8Value stringValue(value);
+ if (stringValue.length())
+ return IFileSystem::IOBuffer(*stringValue, *stringValue + stringValue.length());
+ else
+ return IFileSystem::IOBuffer();
+}
+
v8::Local<v8::String> Utils::ToV8String(v8::Isolate* isolate, const std::string& str)
{
return v8::String::NewFromUtf8(isolate, str.c_str(),
v8::String::NewStringType::kNormalString, str.length());
}
+v8::Local<v8::String> Utils::StringBufferToV8String(v8::Isolate* isolate, const StringBuffer& str)
+{
+ return v8::String::NewFromUtf8(isolate,
+ reinterpret_cast<const char*>(str.data()),
+ v8::String::NewStringType::kNormalString, str.size());
+}
+
void Utils::ThrowExceptionInJS(v8::Isolate* isolate, const std::string& str)
{
isolate->ThrowException(Utils::ToV8String(isolate, str));
}
#ifdef _WIN32
std::wstring Utils::ToUtf16String(const std::string& str)
{
« src/DefaultFileSystem.cpp ('K') | « src/Utils.h ('k') | test/BaseJsTest.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld