diff --git a/include/xrpl/basics/Logger.h b/include/xrpl/basics/Logger.h index 9efbe355d5..dfa7ce782a 100644 --- a/include/xrpl/basics/Logger.h +++ b/include/xrpl/basics/Logger.h @@ -217,12 +217,13 @@ class Logger } else { - fmt::format_to(fmt::appender(stream_), "{}", p.value()); + fmt::format_to(fmt::appender(stream_), "{}", std::move(p.value())); } if (jsonMode_) { - detail::appendJsonField(messageParams_, p.name(), std::move(p).value()); + detail::appendJsonField( + messageParams_, std::move(p.name()), std::move(p.value())); } } diff --git a/include/xrpl/basics/StructuredLogging.h b/include/xrpl/basics/StructuredLogging.h index b0717cfa3c..cf4d4a3888 100644 --- a/include/xrpl/basics/StructuredLogging.h +++ b/include/xrpl/basics/StructuredLogging.h @@ -184,6 +184,13 @@ public: return value_; } + /** @brief Get the parameter value. */ + [[nodiscard]] T& + value() & + { + return value_; + } + /** @brief Get the parameter value. */ [[nodiscard]] T&& value() && diff --git a/src/tests/libxrpl/basics/Logger.cpp b/src/tests/libxrpl/basics/Logger.cpp index 9e5194bc75..cc8e0456f2 100644 --- a/src/tests/libxrpl/basics/Logger.cpp +++ b/src/tests/libxrpl/basics/Logger.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include