remove a use of toAppend in ChronoParse.h

Summary: We are migrating away from `folly::to`.

Reviewed By: xavierd

Differential Revision: D45935360

fbshipit-source-id: c33f0ecb0e7b2482dd7d49a8a00f3309c17caded
This commit is contained in:
Chad Austin 2023-07-11 18:41:45 -07:00 committed by Facebook GitHub Bot
parent f584155c67
commit b7f2e6f0d0
4 changed files with 15 additions and 25 deletions

View File

@ -106,7 +106,8 @@ FieldConverter<std::chrono::nanoseconds>::fromString(
if (result.hasValue()) {
return result.value();
}
return folly::makeUnexpected(chronoParseErrorToString(result.error()).str());
return folly::makeUnexpected(
std::string{chronoParseErrorToString(result.error())});
}
std::string FieldConverter<std::chrono::nanoseconds>::toDebugString(

View File

@ -143,29 +143,29 @@ ChronoParseError conversionCodeToParseError(ConversionCode code) {
namespace facebook::eden {
StringPiece chronoParseErrorToString(ChronoParseError error) {
std::string_view chronoParseErrorToString(ChronoParseError error) {
switch (error) {
case ChronoParseError::UnknownUnit:
return "unknown duration unit specifier"_sp;
return "unknown duration unit specifier";
case ChronoParseError::InvalidChronoUnitOrder:
return "duration units must be listed from largest to smallest"_sp;
return "duration units must be listed from largest to smallest";
case ChronoParseError::Overflow:
return "overflow"_sp;
return "overflow";
case ChronoParseError::EmptyInputString:
return "empty input string"_sp;
return "empty input string";
case ChronoParseError::InvalidLeadingChar:
return "invalid leading character"_sp;
return "invalid leading character";
case ChronoParseError::NoDigits:
return "no digits found in input string"_sp;
return "no digits found in input string";
case ChronoParseError::NonDigitChar:
return "non-digit character found"_sp;
return "non-digit character found";
case ChronoParseError::NonWhitespaceAfterEnd:
return "non-whitespace character found after end of input"_sp;
return "non-whitespace character found after end of input";
case ChronoParseError::OtherError:
return "other error"_sp;
return "other error";
}
return "unexpected error"_sp;
return "unexpected error";
}
Expected<std::chrono::nanoseconds, ChronoParseError> stringToDuration(

View File

@ -30,18 +30,7 @@ enum class ChronoParseError {
/**
* Get a human-readable string describing a ChronoParseError code.
*/
folly::StringPiece chronoParseErrorToString(ChronoParseError error);
/**
* Append the human-readable description of a ChronoParseError to a string.
*
* This allows ChronoParseError arguments to be used with
* folly::to<std::string>().
*/
template <typename String>
void toAppend(ChronoParseError error, String* result) {
toAppend(chronoParseErrorToString(error), result);
}
std::string_view chronoParseErrorToString(ChronoParseError error);
/**
* Parse a string to a std::chrono::nanoseconds duration.

View File

@ -18,7 +18,7 @@ using folly::StringPiece;
TEST(Chrono, chronoErrorToString) {
EXPECT_EQ(
"unknown duration unit specifier",
folly::to<std::string>(ChronoParseError::UnknownUnit));
chronoParseErrorToString(ChronoParseError::UnknownUnit));
EXPECT_EQ(
"duration units must be listed from largest to smallest",
chronoParseErrorToString(ChronoParseError::InvalidChronoUnitOrder));