mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
56 lines
2.8 KiB
Diff
56 lines
2.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
From: Tyler Veness <calcmogul@gmail.com>
|
||
Date: Tue, 28 Jan 2025 22:19:31 -0800
|
||
Subject: [PATCH 4/8] Replace std::to_underlying()
|
||
|
||
---
|
||
include/sleipnir/optimization/problem.hpp | 8 ++++----
|
||
include/sleipnir/util/print_diagnostics.hpp | 6 +++---
|
||
2 files changed, 7 insertions(+), 7 deletions(-)
|
||
|
||
diff --git a/include/sleipnir/optimization/problem.hpp b/include/sleipnir/optimization/problem.hpp
|
||
index 95a33952a5a368c7c81491dbe849a8096357dc38..d20777a5b1912754dda5504313549197e867d34b 100644
|
||
--- a/include/sleipnir/optimization/problem.hpp
|
||
+++ b/include/sleipnir/optimization/problem.hpp
|
||
@@ -708,11 +708,11 @@ class Problem {
|
||
// Print problem structure
|
||
slp::println("\nProblem structure:");
|
||
slp::println(" ↳ {} cost function",
|
||
- types[std::to_underlying(cost_function_type())]);
|
||
+ types[static_cast<uint8_t>(cost_function_type())]);
|
||
slp::println(" ↳ {} equality constraints",
|
||
- types[std::to_underlying(equality_constraint_type())]);
|
||
+ types[static_cast<uint8_t>(equality_constraint_type())]);
|
||
slp::println(" ↳ {} inequality constraints",
|
||
- types[std::to_underlying(inequality_constraint_type())]);
|
||
+ types[static_cast<uint8_t>(inequality_constraint_type())]);
|
||
|
||
if (m_decision_variables.size() == 1) {
|
||
slp::print("\n1 decision variable\n");
|
||
@@ -724,7 +724,7 @@ class Problem {
|
||
[](const gch::small_vector<Variable<Scalar>>& constraints) {
|
||
std::array<size_t, 5> counts{};
|
||
for (const auto& constraint : constraints) {
|
||
- ++counts[std::to_underlying(constraint.type())];
|
||
+ ++counts[static_cast<uint8_t>(constraint.type())];
|
||
}
|
||
for (const auto& [count, name] :
|
||
std::views::zip(counts, std::array{"empty", "constant", "linear",
|
||
diff --git a/include/sleipnir/util/print_diagnostics.hpp b/include/sleipnir/util/print_diagnostics.hpp
|
||
index 9c1f9eb71b9417e138b95fd4d2d678cfb54595d1..032be8fb7b5e4196ff401c77ae9e91f1c966cde6 100644
|
||
--- a/include/sleipnir/util/print_diagnostics.hpp
|
||
+++ b/include/sleipnir/util/print_diagnostics.hpp
|
||
@@ -252,9 +252,9 @@ void print_iteration_diagnostics(int iterations, IterationType type,
|
||
slp::println(
|
||
"│{:4} {:4} {:9.3f} {:12e} {:13e} {:12e} {:12e} {:.2e} {:<5} {:.2e} "
|
||
"{:.2e} {:2d}│",
|
||
- iterations, ITERATION_TYPES[std::to_underlying(type)], to_ms(time), error,
|
||
- cost, infeasibility, complementarity, μ, power_of_10(δ), primal_α, dual_α,
|
||
- backtracks);
|
||
+ iterations, ITERATION_TYPES[static_cast<uint8_t>(type)], to_ms(time),
|
||
+ error, cost, infeasibility, complementarity, μ, power_of_10(δ), primal_α,
|
||
+ dual_α, backtracks);
|
||
}
|
||
#else
|
||
#define print_iteration_diagnostics(...)
|