printing: base::StringPiece -> std::string_view
Bug: 691162
Change-Id: I321595a3163d1f97e240284d898fa61c3f1f8d09
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5278186
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Benjamin Gordon <bmgordon@chromium.org>
Commit-Queue: Helmut Januschka <helmut@januschka.com>
Cr-Commit-Position: refs/heads/main@{#1258186}
diff --git a/printing/backend/PRESUBMIT.py b/printing/backend/PRESUBMIT.py
index 3e6f5558..5f46e65 100644
--- a/printing/backend/PRESUBMIT.py
+++ b/printing/backend/PRESUBMIT.py
@@ -11,17 +11,16 @@
def _CheckForStringViewFromNullableIppApi(input_api, output_api):
"""
- Looks for all affected lines in CL where one constructs either
- base::StringPiece or std::string_view from any ipp*() CUPS API call.
+ Looks for all affected lines in CL where one constructs
+ std::string_view from any ipp*() CUPS API call.
Assumes over-broadly that all ipp*() calls can return NULL.
Returns affected lines as a list of presubmit errors.
"""
# Attempts to detect source lines like:
- # * base::StringPiece foo = ippDoBar();
- # * base::StringPiece foo(ippDoBar());
- # and the same for std::string_view.
+ # * std::string_view foo = ippDoBar();
+ # * std::string_view foo(ippDoBar());
string_view_re = input_api.re.compile(
- r"^.+(base::StringPiece|std::string_view)\s+\w+( = |\()ipp[A-Z].+$")
+ r"^.+(std::string_view)\s+\w+( = |\()ipp[A-Z].+$")
violations = input_api.canned_checks._FindNewViolationsOfRule(
lambda extension, line:
not (extension in ("cc", "h") and string_view_re.search(line)),
@@ -30,7 +29,7 @@
if bulleted_violations:
return [output_api.PresubmitError(
- ("Possible construction of base::StringPiece or std::string_view "
+ ("Possible construction of std::string_view "
"from CUPS IPP API (that can probably return NULL):\n{}").format(
"\n".join(bulleted_violations))),]
return []
diff --git a/printing/backend/cups_helper.cc b/printing/backend/cups_helper.cc
index b9a407ae..027980c2 100644
--- a/printing/backend/cups_helper.cc
+++ b/printing/backend/cups_helper.cc
@@ -9,11 +9,12 @@
#include <stdio.h>
#include <unistd.h>
+#include <optional>
+#include <string_view>
#include <tuple>
#include <utility>
#include <vector>
-#include <optional>
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/files/scoped_file.h"
@@ -802,8 +803,8 @@
}
bool ParsePpdCapabilities(cups_dest_t* dest,
- base::StringPiece locale,
- base::StringPiece printer_capabilities,
+ std::string_view locale,
+ std::string_view printer_capabilities,
PrinterSemanticCapsAndDefaults* printer_info) {
// A file created while in a sandbox will be automatically deleted once all
// handles to it have been closed. This precludes the use of multiple
diff --git a/printing/backend/cups_helper.h b/printing/backend/cups_helper.h
index d1538598..79641937 100644
--- a/printing/backend/cups_helper.h
+++ b/printing/backend/cups_helper.h
@@ -7,9 +7,10 @@
#include <cups/cups.h>
+#include <string_view>
+
#include "base/component_export.h"
#include "base/memory/raw_ptr.h"
-#include "base/strings/string_piece.h"
class GURL;
@@ -49,8 +50,8 @@
// semantic options.
COMPONENT_EXPORT(PRINT_BACKEND)
bool ParsePpdCapabilities(cups_dest_t* dest,
- base::StringPiece locale,
- base::StringPiece printer_capabilities,
+ std::string_view locale,
+ std::string_view printer_capabilities,
PrinterSemanticCapsAndDefaults* printer_info);
} // namespace printing
diff --git a/printing/backend/cups_ipp_helper.cc b/printing/backend/cups_ipp_helper.cc
index c1c3f3d3..da63e195 100644
--- a/printing/backend/cups_ipp_helper.cc
+++ b/printing/backend/cups_ipp_helper.cc
@@ -8,17 +8,17 @@
#include <algorithm>
#include <map>
+#include <optional>
#include <string>
+#include <string_view>
#include <vector>
-#include <optional>
#include "base/containers/contains.h"
#include "base/containers/fixed_flat_set.h"
#include "base/containers/flat_map.h"
#include "base/logging.h"
#include "base/numerics/clamped_math.h"
#include "base/ranges/algorithm.h"
-#include "base/strings/string_piece.h"
#include "base/strings/string_util.h"
#include "build/build_config.h"
#include "printing/backend/cups_connection.h"
@@ -71,7 +71,7 @@
{CUPS_SIDES_TWO_SIDED_LANDSCAPE, mojom::DuplexMode::kShortEdge},
};
-mojom::ColorModel ColorModelFromIppColor(base::StringPiece ippColor) {
+mojom::ColorModel ColorModelFromIppColor(std::string_view ippColor) {
for (const ColorMap& color : kColorList) {
if (ippColor.compare(color.color) == 0) {
return color.model;
@@ -81,7 +81,7 @@
return mojom::ColorModel::kUnknownColorModel;
}
-mojom::DuplexMode DuplexModeFromIpp(base::StringPiece ipp_duplex) {
+mojom::DuplexMode DuplexModeFromIpp(std::string_view ipp_duplex) {
for (const DuplexMap& entry : kDuplexList) {
if (base::EqualsCaseInsensitiveASCII(ipp_duplex, entry.name))
return entry.mode;
@@ -104,9 +104,9 @@
const CupsOptionProvider& printer) {
std::vector<mojom::ColorModel> colors;
- std::vector<base::StringPiece> color_modes =
+ std::vector<std::string_view> color_modes =
printer.GetSupportedOptionValueStrings(kIppColor);
- for (base::StringPiece color : color_modes) {
+ for (std::string_view color : color_modes) {
mojom::ColorModel color_model = ColorModelFromIppColor(color);
if (color_model != mojom::ColorModel::kUnknownColorModel) {
colors.push_back(color_model);
@@ -149,9 +149,9 @@
void ExtractDuplexModes(const CupsOptionProvider& printer,
PrinterSemanticCapsAndDefaults* printer_info) {
- std::vector<base::StringPiece> duplex_modes =
+ std::vector<std::string_view> duplex_modes =
printer.GetSupportedOptionValueStrings(kIppDuplex);
- for (base::StringPiece duplex : duplex_modes) {
+ for (std::string_view duplex : duplex_modes) {
mojom::DuplexMode duplex_mode = DuplexModeFromIpp(duplex);
if (duplex_mode != mojom::DuplexMode::kUnknownDuplexMode)
printer_info->duplex_modes.push_back(duplex_mode);
@@ -382,14 +382,14 @@
void ExtractMediaTypes(const CupsOptionProvider& printer,
PrinterSemanticCapsAndDefaults* printer_info) {
- std::vector<base::StringPiece> names =
+ std::vector<std::string_view> names =
printer.GetSupportedOptionValueStrings(kIppMediaType);
if (names.empty()) {
return;
}
printer_info->media_types.reserve(names.size());
- for (base::StringPiece vendor_id : names) {
+ for (std::string_view vendor_id : names) {
PrinterSemanticCapsAndDefaults::MediaType type;
type.vendor_id = std::string(vendor_id);
@@ -430,7 +430,7 @@
}
bool CollateCapable(const CupsOptionProvider& printer) {
- std::vector<base::StringPiece> values =
+ std::vector<std::string_view> values =
printer.GetSupportedOptionValueStrings(kIppCollate);
return base::Contains(values, kCollated) &&
base::Contains(values, kUncollated);
@@ -442,7 +442,7 @@
return false;
const char* const name = ippGetString(attr, 0, nullptr);
- return name && !base::StringPiece(name).compare(kCollated);
+ return name && !std::string_view(name).compare(kCollated);
}
#if BUILDFLAG(IS_CHROMEOS)
@@ -454,7 +454,7 @@
if (password_maximum_length_supported < kPinMinimumLength)
return false;
- std::vector<base::StringPiece> values =
+ std::vector<std::string_view> values =
printer.GetSupportedOptionValueStrings(kIppPinEncryption);
return base::Contains(values, kPinEncryptionNone);
}
@@ -472,7 +472,7 @@
static const base::NoDestructor<HandlerMap> handlers(GenerateHandlers());
// The names of attributes that we know are not supported (b/266573545).
static constexpr auto kOptionsToIgnore =
- base::MakeFixedFlatSet<base::StringPiece>(
+ base::MakeFixedFlatSet<std::string_view>(
{"finishings-col", "ipp-attribute-fidelity", "job-name",
"number-up-layout"});
std::vector<std::string> unknown_options;
diff --git a/printing/backend/cups_ipp_helper_unittest.cc b/printing/backend/cups_ipp_helper_unittest.cc
index 3157168..c510efe 100644
--- a/printing/backend/cups_ipp_helper_unittest.cc
+++ b/printing/backend/cups_ipp_helper_unittest.cc
@@ -8,6 +8,7 @@
#include <map>
#include <memory>
+#include <string_view>
#include "base/memory/raw_ptr.h"
#include "base/notreached.h"
@@ -41,7 +42,7 @@
class MockCupsPrinterWithMarginsAndAttributes : public MockCupsPrinter {
public:
// name and value of IPP attribute; needed to fetch localized display name
- using LocalizationKey = std::pair<base::StringPiece, base::StringPiece>;
+ using LocalizationKey = std::pair<std::string_view, std::string_view>;
MockCupsPrinterWithMarginsAndAttributes() = default;
~MockCupsPrinterWithMarginsAndAttributes() override = default;
@@ -54,13 +55,13 @@
}
// CupsOptionProvider:
- std::vector<base::StringPiece> GetSupportedOptionValueStrings(
+ std::vector<std::string_view> GetSupportedOptionValueStrings(
const char* option_name) const override {
ipp_attribute_t* attr = GetSupportedOptionValues(option_name);
if (!attr)
- return std::vector<base::StringPiece>();
+ return std::vector<std::string_view>();
- std::vector<base::StringPiece> strings;
+ std::vector<std::string_view> strings;
const int size = ippGetCount(attr);
strings.reserve(size);
for (int i = 0; i < size; ++i) {
@@ -103,11 +104,11 @@
return localized_name->second.c_str();
}
- void SetSupportedOptions(base::StringPiece name, ipp_attribute_t* attribute) {
+ void SetSupportedOptions(std::string_view name, ipp_attribute_t* attribute) {
supported_attributes_[name] = attribute;
}
- void SetOptionDefault(base::StringPiece name, ipp_attribute_t* attribute) {
+ void SetOptionDefault(std::string_view name, ipp_attribute_t* attribute) {
default_attributes_[name] = attribute;
}
@@ -121,8 +122,8 @@
}
private:
- std::map<base::StringPiece, ipp_attribute_t*> supported_attributes_;
- std::map<base::StringPiece, ipp_attribute_t*> default_attributes_;
+ std::map<std::string_view, ipp_attribute_t*> supported_attributes_;
+ std::map<std::string_view, ipp_attribute_t*> default_attributes_;
std::map<LocalizationKey, std::string> localized_strings_;
raw_ptr<ipp_attribute_t, DanglingUntriaged> media_col_database_;
};
diff --git a/printing/backend/cups_jobs.cc b/printing/backend/cups_jobs.cc
index 94c188c..d235cdb 100644
--- a/printing/backend/cups_jobs.cc
+++ b/printing/backend/cups_jobs.cc
@@ -10,13 +10,13 @@
#include <cstring>
#include <memory>
#include <string>
+#include <string_view>
#include "base/containers/contains.h"
#include "base/containers/fixed_flat_map.h"
#include "base/logging.h"
#include "base/notreached.h"
#include "base/strings/string_number_conversions.h"
-#include "base/strings/string_piece.h"
#include "base/strings/stringprintf.h"
#include "base/threading/scoped_blocking_call.h"
#include "base/version.h"
@@ -36,14 +36,14 @@
constexpr char kPrinterStateReasons[] = "printer-state-reasons";
constexpr char kPrinterStateMessage[] = "printer-state-message";
-constexpr base::StringPiece kPrinterMakeAndModel = "printer-make-and-model";
-constexpr base::StringPiece kIppVersionsSupported = "ipp-versions-supported";
-constexpr base::StringPiece kIppFeaturesSupported = "ipp-features-supported";
-constexpr base::StringPiece kDocumentFormatSupported =
+constexpr std::string_view kPrinterMakeAndModel = "printer-make-and-model";
+constexpr std::string_view kIppVersionsSupported = "ipp-versions-supported";
+constexpr std::string_view kIppFeaturesSupported = "ipp-features-supported";
+constexpr std::string_view kDocumentFormatSupported =
"document-format-supported";
-constexpr base::StringPiece kOauthAuthorizationServerUri =
+constexpr std::string_view kOauthAuthorizationServerUri =
"oauth-authorization-server-uri";
-constexpr base::StringPiece kOauthAuthorizationScope =
+constexpr std::string_view kOauthAuthorizationScope =
"oauth-authorization-scope";
// job attributes
@@ -158,10 +158,10 @@
// Returns the Reason corresponding to the string `reason`. Returns
// `PReason::kUnknownReason` if the string is not recognized.
-PrinterStatus::PrinterReason::Reason ToReason(base::StringPiece reason) {
+PrinterStatus::PrinterReason::Reason ToReason(std::string_view reason) {
// Returns a lookup map from strings to PrinterReason::Reason.
static constexpr auto kLabelToReasonMap =
- base::MakeFixedFlatMap<base::StringPiece, PReason>({
+ base::MakeFixedFlatMap<std::string_view, PReason>({
{kNone, PReason::kNone},
{kMediaNeeded, PReason::kMediaNeeded},
{kMediaJam, PReason::kMediaJam},
@@ -206,7 +206,7 @@
// Returns the Severity corresponding to `severity`. Returns UNKNOWN_SEVERITY
// if the strin gis not recognized.
-PSeverity ToSeverity(base::StringPiece severity) {
+PSeverity ToSeverity(std::string_view severity) {
if (severity == kSeverityError)
return PSeverity::kError;
@@ -222,7 +222,7 @@
// Parses the `reason` string into a PrinterReason. Splits the string based on
// the last '-' to determine severity. If a recognized severity is not
// included, severity is assumed to be ERROR per RFC2911.
-PrinterStatus::PrinterReason ToPrinterReason(base::StringPiece reason) {
+PrinterStatus::PrinterReason ToPrinterReason(std::string_view reason) {
PrinterStatus::PrinterReason parsed;
if (reason == kNone) {
@@ -266,7 +266,7 @@
// Parse a field for the CupsJob `job` from IPP attribute `attr` using the
// attribute name `name`.
-void ParseField(ipp_attribute_t* attr, base::StringPiece name, CupsJob* job) {
+void ParseField(ipp_attribute_t* attr, std::string_view name, CupsJob* job) {
DCHECK(!name.empty());
if (name == kJobId) {
job->id = ippGetInteger(attr, 0);
@@ -328,7 +328,7 @@
if (!value) {
continue;
}
- base::StringPiece name(value);
+ std::string_view name(value);
if (name == kPrinterMakeAndModel) {
int tag = ippGetValueTag(attr);
if (tag != IPP_TAG_TEXT && tag != IPP_TAG_TEXTLANG) {
@@ -422,7 +422,7 @@
PrinterInfo::~PrinterInfo() = default;
-const base::StringPiece ToJobStateReasonString(
+const std::string_view ToJobStateReasonString(
CupsJob::JobStateReason state_reason) {
switch (state_reason) {
case CupsJob::JobStateReason::kJobCompletedWithErrors:
@@ -499,7 +499,7 @@
if (!value) {
continue;
}
- base::StringPiece name(value);
+ std::string_view name(value);
if (name == kPrinterState) {
DCHECK_EQ(IPP_TAG_ENUM, ippGetValueTag(attr));
diff --git a/printing/backend/cups_jobs.h b/printing/backend/cups_jobs.h
index 05b789b1..0cb3cf5 100644
--- a/printing/backend/cups_jobs.h
+++ b/printing/backend/cups_jobs.h
@@ -10,6 +10,7 @@
#include <cups/cups.h>
#include <string>
+#include <string_view>
#include <utility>
#include <vector>
@@ -101,7 +102,7 @@
};
// Converts a JobStateReason to the exact string returned by CUPS.
-const base::StringPiece COMPONENT_EXPORT(PRINT_BACKEND)
+const std::string_view COMPONENT_EXPORT(PRINT_BACKEND)
ToJobStateReasonString(CupsJob::JobStateReason stateReason);
// Returns the uri for printer with `id` as served by CUPS. Assumes that `id` is
diff --git a/printing/backend/cups_printer.cc b/printing/backend/cups_printer.cc
index 944db672c..80dd298 100644
--- a/printing/backend/cups_printer.cc
+++ b/printing/backend/cups_printer.cc
@@ -8,6 +8,7 @@
#include <cstring>
#include <string>
+#include <string_view>
#include <utility>
#include "base/memory/raw_ptr.h"
@@ -66,9 +67,9 @@
}
// CupsOptionProvider
- std::vector<base::StringPiece> GetSupportedOptionValueStrings(
+ std::vector<std::string_view> GetSupportedOptionValueStrings(
const char* option_name) const override {
- std::vector<base::StringPiece> values;
+ std::vector<std::string_view> values;
ipp_attribute_t* attr = GetSupportedOptionValues(option_name);
if (!attr)
return values;
diff --git a/printing/backend/cups_printer.h b/printing/backend/cups_printer.h
index 5c05b0d..a24a69b 100644
--- a/printing/backend/cups_printer.h
+++ b/printing/backend/cups_printer.h
@@ -9,6 +9,7 @@
#include <memory>
#include <string>
+#include <string_view>
#include <vector>
#include "base/component_export.h"
@@ -31,7 +32,7 @@
// Returns supported attribute values for `option_name` where the value can be
// converted to a string.
- virtual std::vector<base::StringPiece> GetSupportedOptionValueStrings(
+ virtual std::vector<std::string_view> GetSupportedOptionValueStrings(
const char* option_name) const = 0;
// Returns the default ipp attributes for the given `option_name`.
diff --git a/printing/backend/ipp_handler_map.h b/printing/backend/ipp_handler_map.h
index 0b887390..44642aa7 100644
--- a/printing/backend/ipp_handler_map.h
+++ b/printing/backend/ipp_handler_map.h
@@ -6,9 +6,9 @@
#define PRINTING_BACKEND_IPP_HANDLER_MAP_H_
#include <map>
+#include <string_view>
#include "base/functional/callback.h"
-#include "base/strings/string_piece.h"
#include "printing/backend/print_backend.h"
namespace printing {
@@ -21,7 +21,7 @@
const char* name,
AdvancedCapabilities* caps)>;
-using HandlerMap = std::map<base::StringPiece, AttributeHandler>;
+using HandlerMap = std::map<std::string_view, AttributeHandler>;
// Produces mapping from attribute names to handlers based on their type.
// Implementation is generated by //printing/backend/tools/code_generator.py
diff --git a/printing/backend/mock_cups_printer.h b/printing/backend/mock_cups_printer.h
index cc303d14..c83c451 100644
--- a/printing/backend/mock_cups_printer.h
+++ b/printing/backend/mock_cups_printer.h
@@ -5,6 +5,8 @@
#ifndef PRINTING_BACKEND_MOCK_CUPS_PRINTER_H_
#define PRINTING_BACKEND_MOCK_CUPS_PRINTER_H_
+#include <string_view>
+
#include "printing/backend/cups_printer.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -42,7 +44,7 @@
MOCK_CONST_METHOD1(GetSupportedOptionValues,
ipp_attribute_t*(const char* option_name));
MOCK_CONST_METHOD1(GetSupportedOptionValueStrings,
- std::vector<base::StringPiece>(const char* option_name));
+ std::vector<std::string_view>(const char* option_name));
MOCK_CONST_METHOD0(GetMediaColDatabase, ipp_attribute_t*());
MOCK_CONST_METHOD1(GetDefaultOptionValue,
ipp_attribute_t*(const char* option_name));
diff --git a/printing/backend/print_backend_cups.cc b/printing/backend/print_backend_cups.cc
index 96995d7f..76bec56e7 100644
--- a/printing/backend/print_backend_cups.cc
+++ b/printing/backend/print_backend_cups.cc
@@ -11,6 +11,7 @@
#include <pthread.h>
#include <string>
+#include <string_view>
#include "base/files/file_util.h"
#include "base/logging.h"
@@ -18,7 +19,6 @@
#include "base/memory/scoped_refptr.h"
#include "base/no_destructor.h"
#include "base/strings/string_number_conversions.h"
-#include "base/strings/string_piece.h"
#include "base/synchronization/lock.h"
#include "build/build_config.h"
#include "printing/backend/cups_helper.h"
@@ -125,9 +125,9 @@
// static
std::string PrintBackendCUPS::PrinterDriverInfoFromCUPS(
const cups_dest_t& printer) {
- // base::StringPiece will correctly handle nullptrs from cupsGetOption(),
+ // std::string_view will correctly handle nullptrs from cupsGetOption(),
// whereas std::string will not. Thus do not directly assign to `result`.
- base::StringPiece info(
+ std::string_view info(
cupsGetOption(kDriverNameTagName, printer.num_options, printer.options));
return std::string(info);
}
diff --git a/printing/backend/print_backend_utils.cc b/printing/backend/print_backend_utils.cc
index 1f6a059..bb357c2 100644
--- a/printing/backend/print_backend_utils.cc
+++ b/printing/backend/print_backend_utils.cc
@@ -4,11 +4,11 @@
#include "printing/backend/print_backend_utils.h"
+#include <string_view>
#include <vector>
#include "base/logging.h"
#include "base/strings/string_number_conversions.h"
-#include "base/strings/string_piece.h"
#include "base/strings/string_split.h"
#include "base/strings/string_util.h"
#include "printing/buildflags/buildflags.h"
@@ -32,11 +32,11 @@
// Defines two prefixes of a special breed of media sizes not meant for
// users' eyes. CUPS incidentally returns these IPP values to us, but
// we have no use for them.
-constexpr base::StringPiece kMediaCustomMinPrefix = "custom_min";
-constexpr base::StringPiece kMediaCustomMaxPrefix = "custom_max";
+constexpr std::string_view kMediaCustomMinPrefix = "custom_min";
+constexpr std::string_view kMediaCustomMaxPrefix = "custom_max";
-bool IsValidMediaName(base::StringPiece& value,
- std::vector<base::StringPiece>& pieces) {
+bool IsValidMediaName(std::string_view& value,
+ std::vector<std::string_view>& pieces) {
// We expect at least a display string and a dimension string.
// Additionally, we drop the "custom_min*" and "custom_max*" special
// "sizes" (not for users' eyes).
@@ -45,20 +45,20 @@
!base::StartsWith(value, kMediaCustomMaxPrefix);
}
-std::vector<base::StringPiece> GetStringPiecesIfValid(base::StringPiece value) {
+std::vector<std::string_view> GetStringPiecesIfValid(std::string_view value) {
// <name>_<width>x<height>{in,mm}
// e.g. na_letter_8.5x11in, iso_a4_210x297mm
- std::vector<base::StringPiece> pieces = base::SplitStringPiece(
+ std::vector<std::string_view> pieces = base::SplitStringPiece(
value, "_", base::TRIM_WHITESPACE, base::SPLIT_WANT_NONEMPTY);
if (!IsValidMediaName(value, pieces)) {
- return std::vector<base::StringPiece>();
+ return std::vector<std::string_view>();
}
return pieces;
}
-gfx::Size DimensionsToMicrons(base::StringPiece value) {
+gfx::Size DimensionsToMicrons(std::string_view value) {
Unit unit;
- base::StringPiece dims;
+ std::string_view dims;
size_t unit_position;
if ((unit_position = value.find("mm")) != base::StringPiece::npos) {
unit = Unit::kMillimeters;
@@ -95,13 +95,13 @@
} // namespace
-gfx::Size ParsePaperSize(base::StringPiece value) {
- std::vector<base::StringPiece> pieces = GetStringPiecesIfValid(value);
+gfx::Size ParsePaperSize(std::string_view value) {
+ std::vector<std::string_view> pieces = GetStringPiecesIfValid(value);
if (pieces.empty()) {
return gfx::Size();
}
- base::StringPiece dimensions = pieces.back();
+ std::string_view dimensions = pieces.back();
return DimensionsToMicrons(dimensions);
}
diff --git a/printing/backend/print_backend_utils.h b/printing/backend/print_backend_utils.h
index 2c4b66ab..f3f3c70a 100644
--- a/printing/backend/print_backend_utils.h
+++ b/printing/backend/print_backend_utils.h
@@ -5,8 +5,9 @@
#ifndef PRINTING_BACKEND_PRINT_BACKEND_UTILS_H_
#define PRINTING_BACKEND_PRINT_BACKEND_UTILS_H_
+#include <string_view>
+
#include "base/component_export.h"
-#include "base/strings/string_piece.h"
#include "printing/buildflags/buildflags.h"
#if BUILDFLAG(USE_CUPS)
@@ -30,7 +31,7 @@
// name nor the dimension, or if `value` contains a prefix of
// media sizes not meant for users' eyes.
COMPONENT_EXPORT(PRINT_BACKEND)
-gfx::Size ParsePaperSize(base::StringPiece value);
+gfx::Size ParsePaperSize(std::string_view value);
#if BUILDFLAG(USE_CUPS)
// Calculates a paper's printable area in microns from its size in microns and
diff --git a/printing/backend/tools/code_generator.py b/printing/backend/tools/code_generator.py
index 8f614f8..5bb87bd 100755
--- a/printing/backend/tools/code_generator.py
+++ b/printing/backend/tools/code_generator.py
@@ -41,6 +41,8 @@
#include "printing/backend/ipp_handler_map.h"
+#include <string_view>
+
#include "base/functional/bind.h"
#include "printing/backend/ipp_handlers.h"
@@ -64,8 +66,8 @@
#include "base/no_destructor.h"
#include "components/strings/grit/components_strings.h"
-const std::map<base::StringPiece, int>& CapabilityLocalizationMap() {
- static const base::NoDestructor<std::map<base::StringPiece, int>> l10n_map({
+const std::map<std::string_view, int>& CapabilityLocalizationMap() {
+ static const base::NoDestructor<std::map<std::string_view, int>> l10n_map({
"""
L10N_FOOTER = """ });
diff --git a/printing/print_job_constants_cups.h b/printing/print_job_constants_cups.h
index cdd2619..0d2c5c2 100644
--- a/printing/print_job_constants_cups.h
+++ b/printing/print_job_constants_cups.h
@@ -5,13 +5,15 @@
#ifndef PRINTING_PRINT_JOB_CONSTANTS_CUPS_H_
#define PRINTING_PRINT_JOB_CONSTANTS_CUPS_H_
+#include <string_view>
+
#include "base/component_export.h"
#include "build/build_config.h"
#include "printing/buildflags/buildflags.h"
#if BUILDFLAG(IS_MAC)
#include "base/containers/span.h"
-#include "base/strings/string_piece.h"
+
#endif
#if !BUILDFLAG(USE_CUPS)
@@ -87,14 +89,14 @@
// particular printer manufacturer, and the corresponding names used with that
// to choose either black and white or color printing.
struct COMPONENT_EXPORT(PRINTING_BASE) PpdColorSetting {
- constexpr PpdColorSetting(base::StringPiece name,
- base::StringPiece bw,
- base::StringPiece color)
+ constexpr PpdColorSetting(std::string_view name,
+ std::string_view bw,
+ std::string_view color)
: name(name), bw(bw), color(color) {}
- base::StringPiece name;
- base::StringPiece bw;
- base::StringPiece color;
+ std::string_view name;
+ std::string_view bw;
+ std::string_view color;
};
COMPONENT_EXPORT(PRINTING_BASE)
diff --git a/printing/print_settings_conversion.cc b/printing/print_settings_conversion.cc
index 9878e55..72cd440 100644
--- a/printing/print_settings_conversion.cc
+++ b/printing/print_settings_conversion.cc
@@ -9,14 +9,14 @@
#include <algorithm>
#include <cmath>
#include <memory>
+#include <optional>
#include <string>
+#include <string_view>
#include <utility>
-#include <optional>
#include "base/containers/contains.h"
#include "base/containers/fixed_flat_set.h"
#include "base/strings/string_number_conversions.h"
-#include "base/strings/string_piece.h"
#include "base/strings/utf_string_conversions.h"
#include "base/time/time.h"
#include "base/values.h"
@@ -293,7 +293,7 @@
if (advanced_settings) {
for (const auto item : *advanced_settings) {
static constexpr auto kNonJobAttributes =
- base::MakeFixedFlatSet<base::StringPiece>(
+ base::MakeFixedFlatSet<std::string_view>(
{"printer-info", "printer-make-and-model", "system_driverinfo"});
if (!base::Contains(kNonJobAttributes, item.first)) {
settings->advanced_settings().emplace(item.first, item.second.Clone());
diff --git a/printing/printing_context_chromeos.cc b/printing/printing_context_chromeos.cc
index 90c741a..cfe5d309 100644
--- a/printing/printing_context_chromeos.cc
+++ b/printing/printing_context_chromeos.cc
@@ -10,6 +10,7 @@
#include <map>
#include <memory>
+#include <string_view>
#include <utility>
#include <vector>
@@ -42,7 +43,7 @@
// We only support sending document name for secure printers.
const char kDocumentNamePlaceholder[] = "-";
-bool IsUriSecure(base::StringPiece uri) {
+bool IsUriSecure(std::string_view uri) {
return base::StartsWith(uri, "ipps:") || base::StartsWith(uri, "https:") ||
base::StartsWith(uri, "usb:") || base::StartsWith(uri, "ippusb:");
}
diff --git a/printing/printing_context_mac.h b/printing/printing_context_mac.h
index 0b21e70..5b469b3 100644
--- a/printing/printing_context_mac.h
+++ b/printing/printing_context_mac.h
@@ -8,9 +8,9 @@
#include <ApplicationServices/ApplicationServices.h>
#include <string>
+#include <string_view>
#include "base/memory/raw_ptr_exclusion.h"
-#include "base/strings/string_piece.h"
#include "printing/mojom/print.mojom.h"
#include "printing/print_job_constants.h"
#include "printing/printing_context.h"
@@ -98,7 +98,7 @@
// Sets key-value pair in PMPrintSettings.
// Returns true is the pair is set.
- bool SetKeyValue(base::StringPiece key, base::StringPiece value);
+ bool SetKeyValue(std::string_view key, std::string_view value);
// Starts a new page.
mojom::ResultCode NewPage();
diff --git a/printing/printing_context_mac.mm b/printing/printing_context_mac.mm
index f402566..0b3e9d6 100644
--- a/printing/printing_context_mac.mm
+++ b/printing/printing_context_mac.mm
@@ -11,6 +11,7 @@
#import <iomanip>
#import <numeric>
+#include <string_view>
#include "base/apple/bridging.h"
#include "base/apple/foundation_util.h"
@@ -18,7 +19,6 @@
#include "base/apple/scoped_cftyperef.h"
#include "base/apple/scoped_typeref.h"
#include "base/check_op.h"
-#include "base/strings/string_piece.h"
#include "base/strings/sys_string_conversions.h"
#include "base/strings/utf_string_conversions.h"
#include "base/values.h"
@@ -706,9 +706,8 @@
// set every single known PPD color setting and hope that one of them sticks.
const bool is_color = IsIppColorModelColorful(color_model);
for (const auto& setting : GetKnownPpdColorSettings()) {
- const base::StringPiece& color_setting_name = setting.name;
- const base::StringPiece& color_value =
- is_color ? setting.color : setting.bw;
+ std::string_view color_setting_name = setting.name;
+ std::string_view color_value = is_color ? setting.color : setting.bw;
if (!SetKeyValue(color_setting_name, color_value))
return false;
}
@@ -736,8 +735,8 @@
&resolution) == noErr;
}
-bool PrintingContextMac::SetKeyValue(base::StringPiece key,
- base::StringPiece value) {
+bool PrintingContextMac::SetKeyValue(std::string_view key,
+ std::string_view value) {
PMPrintSettings print_settings =
static_cast<PMPrintSettings>([print_info_ PMPrintSettings]);
base::apple::ScopedCFTypeRef<CFStringRef> cf_key =
diff --git a/printing/printing_utils.cc b/printing/printing_utils.cc
index da35cac..48b3233 100644
--- a/printing/printing_utils.cc
+++ b/printing/printing_utils.cc
@@ -7,6 +7,7 @@
#include <algorithm>
#include <cstring>
#include <string>
+#include <string_view>
#include "base/logging.h"
#include "base/strings/string_util.h"
@@ -22,7 +23,6 @@
#include <cmath>
-#include "base/strings/string_piece.h"
#include "printing/units.h"
#include "ui/gfx/geometry/size.h"
#endif
@@ -93,7 +93,7 @@
}
#if BUILDFLAG(USE_CUPS) && !BUILDFLAG(IS_CHROMEOS_ASH)
-gfx::Size GetDefaultPaperSizeFromLocaleMicrons(base::StringPiece locale) {
+gfx::Size GetDefaultPaperSizeFromLocaleMicrons(std::string_view locale) {
if (locale.empty())
return kIsoA4Microns;
diff --git a/printing/printing_utils.h b/printing/printing_utils.h
index 3e8af24..de63bc8 100644
--- a/printing/printing_utils.h
+++ b/printing/printing_utils.h
@@ -8,6 +8,7 @@
#include <stddef.h>
#include <string>
+#include <string_view>
#include "base/component_export.h"
#include "base/containers/span.h"
@@ -17,7 +18,7 @@
#include "printing/mojom/print.mojom-forward.h"
#if BUILDFLAG(USE_CUPS) && !BUILDFLAG(IS_CHROMEOS_ASH)
-#include "base/strings/string_piece.h"
+
#endif
#if BUILDFLAG(IS_WIN)
@@ -53,7 +54,7 @@
// Returns the paper size (microns) most common in the locale to the nearest
// millimeter. Defaults to ISO A4 for an empty or invalid locale.
COMPONENT_EXPORT(PRINTING_BASE)
-gfx::Size GetDefaultPaperSizeFromLocaleMicrons(base::StringPiece locale);
+gfx::Size GetDefaultPaperSizeFromLocaleMicrons(std::string_view locale);
// Returns true if both dimensions of the sizes have a delta less than or equal
// to the epsilon value.