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

@@ -2,18 +2,20 @@
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include <string_view>
#include <wpi/SmallString.h>
#include <wpi/StringRef.h>
#include <wpi/StringExtras.h>
#include <wpi/raw_ostream.h>
#include "frc/ScopedTracer.h"
#include "frc/simulation/SimHooks.h"
#include "gtest/gtest.h"
wpi::SmallString<128> buf;
wpi::raw_svector_ostream os(buf);
TEST(ScopedTracerTest, Timing) {
wpi::SmallString<128> buf;
wpi::raw_svector_ostream os(buf);
frc::sim::PauseTiming();
{
frc::ScopedTracer tracer("timing_test", os);
@@ -21,6 +23,6 @@ TEST(ScopedTracerTest, Timing) {
}
frc::sim::ResumeTiming();
wpi::StringRef out = os.str();
EXPECT_TRUE(out.startswith(" timing_test: 1.5"));
std::string_view out = os.str();
EXPECT_TRUE(wpi::starts_with(out, " timing_test: 1.5"));
}

View File

@@ -6,10 +6,12 @@
#include "frc/smartdashboard/SendableRegistry.h"
using namespace frc;
MockActuatorSendable::MockActuatorSendable(std::string_view name) {
frc::SendableRegistry::GetInstance().Add(this, name);
SendableRegistry::GetInstance().Add(this, name);
}
void MockActuatorSendable::InitSendable(frc::SendableBuilder& builder) {
void MockActuatorSendable::InitSendable(SendableBuilder& builder) {
builder.SetActuator(true);
}

View File

@@ -97,7 +97,7 @@ TEST_F(SuppliedValueWidgetTest, AddBooleanArray) {
}
TEST_F(SuppliedValueWidgetTest, AddRaw) {
wpi::StringRef bytes = "\1\2\3";
std::string_view bytes = "\1\2\3";
m_tab->AddRaw("Raw", [&bytes]() { return bytes; });
auto entry = m_ntInst.inst.GetEntry("/Shuffleboard/Tab/Raw");

View File

@@ -22,7 +22,7 @@ TEST(AcclerometerSimTests, TestActiveCallback) {
bool lastValue = false;
auto cb = sim.RegisterActiveCallback(
[&](wpi::StringRef name, const HAL_Value* value) {
[&](std::string_view name, const HAL_Value* value) {
wasTriggered = true;
lastValue = value->data.v_boolean;
},

View File

@@ -2,8 +2,9 @@
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include <string_view>
#include <hal/SimDevice.h>
#include <wpi/StringRef.h>
#include "frc/simulation/SimDeviceSim.h"
#include "gtest/gtest.h"
@@ -27,7 +28,7 @@ TEST(SimDeviceSimTests, TestEnumerateDevices) {
bool foundit = false;
SimDeviceSim::EnumerateDevices(
"te", [&](const char* name, HAL_SimDeviceHandle handle) {
if (wpi::StringRef(name) == "test") {
if (std::string_view(name) == "test") {
foundit = true;
}
});