Use std::string_view and fmtlib across all libraries (#3402)

- Twine, StringRef, Format, and NativeFormatting have been removed
- Logging now uses fmtlib style formatting
- Nearly all uses of wpi::outs/errs have been replaced with fmt::print() or
std::puts()/std::fputs() (for unformatted strings).
- A wpi/fmt/raw_ostream.h header has been added to enable
fmt::print() with wpi::raw_ostream
This commit is contained in:
Peter Johnson
2021-06-06 16:13:58 -07:00
committed by GitHub
parent 4f1cecb8e7
commit b2c3b2dd8e
441 changed files with 5061 additions and 9749 deletions

View File

@@ -7,26 +7,26 @@
#include <cstddef>
#include <string>
#include "wpi/StringRef.h"
#include <string_view>
namespace wpi {
template <typename T>
class SmallVectorImpl;
class raw_ostream;
size_t Base64Decode(raw_ostream& os, StringRef encoded);
size_t Base64Decode(raw_ostream& os, std::string_view encoded);
size_t Base64Decode(StringRef encoded, std::string* plain);
size_t Base64Decode(std::string_view encoded, std::string* plain);
StringRef Base64Decode(StringRef encoded, size_t* num_read,
SmallVectorImpl<char>& buf);
std::string_view Base64Decode(std::string_view encoded, size_t* num_read,
SmallVectorImpl<char>& buf);
void Base64Encode(raw_ostream& os, StringRef plain);
void Base64Encode(raw_ostream& os, std::string_view plain);
void Base64Encode(StringRef plain, std::string* encoded);
void Base64Encode(std::string_view plain, std::string* encoded);
StringRef Base64Encode(StringRef plain, SmallVectorImpl<char>& buf);
std::string_view Base64Encode(std::string_view plain,
SmallVectorImpl<char>& buf);
} // namespace wpi