mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-22 01:11:42 +00:00
Replace SFINAE with concepts (#5361)
Concepts are cleaner to use and result in much better error messages for incorrect template use.
This commit is contained in:
@@ -4,9 +4,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <type_traits>
|
||||
|
||||
#include <fmt/format.h>
|
||||
#include <wpi/concepts.h>
|
||||
|
||||
#include "Eigen/Core"
|
||||
#include "Eigen/SparseCore"
|
||||
@@ -16,12 +15,9 @@
|
||||
* Eigen::SparseCompressedBase<Derived>.
|
||||
*/
|
||||
template <typename Derived, typename CharT>
|
||||
struct fmt::formatter<
|
||||
Derived, CharT,
|
||||
std::enable_if_t<
|
||||
std::is_base_of_v<Eigen::MatrixBase<Derived>, Derived> ||
|
||||
std::is_base_of_v<Eigen::SparseCompressedBase<Derived>, Derived>,
|
||||
void>> {
|
||||
requires std::derived_from<Derived, Eigen::MatrixBase<Derived>> ||
|
||||
std::derived_from<Derived, Eigen::SparseCompressedBase<Derived>>
|
||||
struct fmt::formatter<Derived, CharT> {
|
||||
constexpr auto parse(fmt::format_parse_context& ctx) {
|
||||
return m_underlying.parse(ctx);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user