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

Unified Diff: src/FilterEngine.cpp

Issue 5598762307158016: Issue 1550 - Get rid of V8ValueHolder.h (Closed)
Patch Set: Created Nov. 10, 2014, 9:18 a.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
« no previous file with comments | « include/AdblockPlus/V8ValueHolder.h ('k') | src/JsContext.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/FilterEngine.cpp
===================================================================
--- a/src/FilterEngine.cpp
+++ b/src/FilterEngine.cpp
@@ -28,8 +28,8 @@
extern std::string jsSources[];
-Filter::Filter(JsValuePtr value)
- : JsValue(value)
+Filter::Filter(JsValue&& value)
+ : JsValue(std::move(value))
{
if (!IsObject())
throw std::runtime_error("JavaScript value is not an object");
@@ -81,8 +81,8 @@
return GetProperty("text")->AsString() == filter.GetProperty("text")->AsString();
}
-Subscription::Subscription(JsValuePtr value)
- : JsValue(value)
+Subscription::Subscription(JsValue&& value)
+ : JsValue(std::move(value))
{
if (!IsObject())
throw std::runtime_error("JavaScript value is not an object");
@@ -215,7 +215,7 @@
JsValuePtr func = jsEngine->Evaluate("API.getFilterFromText");
JsValueList params;
params.push_back(jsEngine->NewValue(text));
- return FilterPtr(new Filter(func->Call(params)));
+ return FilterPtr(new Filter(std::move(*func->Call(params))));
}
SubscriptionPtr FilterEngine::GetSubscription(const std::string& url)
@@ -223,7 +223,7 @@
JsValuePtr func = jsEngine->Evaluate("API.getSubscriptionFromUrl");
JsValueList params;
params.push_back(jsEngine->NewValue(url));
- return SubscriptionPtr(new Subscription(func->Call(params)));
+ return SubscriptionPtr(new Subscription(std::move(*func->Call(params))));
}
std::vector<FilterPtr> FilterEngine::GetListedFilters() const
@@ -232,7 +232,7 @@
JsValueList values = func->Call()->AsList();
std::vector<FilterPtr> result;
for (JsValueList::iterator it = values.begin(); it != values.end(); it++)
- result.push_back(FilterPtr(new Filter(*it)));
+ result.push_back(FilterPtr(new Filter(std::move(**it))));
return result;
}
@@ -242,7 +242,7 @@
JsValueList values = func->Call()->AsList();
std::vector<SubscriptionPtr> result;
for (JsValueList::iterator it = values.begin(); it != values.end(); it++)
- result.push_back(SubscriptionPtr(new Subscription(*it)));
+ result.push_back(SubscriptionPtr(new Subscription(std::move(**it))));
return result;
}
@@ -252,7 +252,7 @@
JsValueList values = func->Call()->AsList();
std::vector<SubscriptionPtr> result;
for (JsValueList::iterator it = values.begin(); it != values.end(); it++)
- result.push_back(SubscriptionPtr(new Subscription(*it)));
+ result.push_back(SubscriptionPtr(new Subscription(std::move(**it))));
return result;
}
@@ -298,7 +298,7 @@
params.push_back(jsEngine->NewValue(documentUrl));
JsValuePtr result = func->Call(params);
if (!result->IsNull())
- return FilterPtr(new Filter(result));
+ return FilterPtr(new Filter(std::move(*result)));
else
return FilterPtr();
}
« no previous file with comments | « include/AdblockPlus/V8ValueHolder.h ('k') | src/JsContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld