Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(64)

Unified Diff: url/origin.cc

Issue 2561363002: Add std::string constructors for Origin/SchemeHostPort to reduce copies (Closed)
Patch Set: fix content_unittests Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « url/origin.h ('k') | url/origin_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: url/origin.cc
diff --git a/url/origin.cc b/url/origin.cc
index 0cb4c10ced723b0db85567d3a4ffddeb1ba1b28b..53600b1dc96f6c5b2736cb2eb0988b3b34fb715b 100644
--- a/url/origin.cc
+++ b/url/origin.cc
@@ -85,11 +85,21 @@ Origin::Origin(base::StringPiece scheme,
uint16_t port,
base::StringPiece suborigin,
SchemeHostPort::ConstructPolicy policy)
- : tuple_(scheme, host, port, policy) {
+ : tuple_(scheme.as_string(), host.as_string(), port, policy) {
unique_ = tuple_.IsInvalid();
suborigin_ = suborigin.as_string();
}
+Origin::Origin(std::string scheme,
+ std::string host,
+ uint16_t port,
+ std::string suborigin,
+ SchemeHostPort::ConstructPolicy policy)
+ : tuple_(std::move(scheme), std::move(host), port, policy) {
+ unique_ = tuple_.IsInvalid();
+ suborigin_ = std::move(suborigin);
+}
+
Origin::~Origin() {
}
@@ -101,18 +111,12 @@ Origin Origin::UnsafelyCreateOriginWithoutNormalization(
return Origin(scheme, host, port, "", SchemeHostPort::CHECK_CANONICALIZATION);
}
-Origin Origin::CreateFromNormalizedTuple(base::StringPiece scheme,
- base::StringPiece host,
- uint16_t port) {
- return CreateFromNormalizedTupleWithSuborigin(scheme, host, port, "");
-}
-
Origin Origin::CreateFromNormalizedTupleWithSuborigin(
- base::StringPiece scheme,
- base::StringPiece host,
+ std::string scheme,
+ std::string host,
uint16_t port,
- base::StringPiece suborigin) {
- return Origin(scheme, host, port, suborigin,
+ std::string suborigin) {
+ return Origin(std::move(scheme), std::move(host), port, std::move(suborigin),
SchemeHostPort::ALREADY_CANONICALIZED);
}
« no previous file with comments | « url/origin.h ('k') | url/origin_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698