From 3a540f724f00a761d8cc769d316f78c0ff562d23 Mon Sep 17 00:00:00 2001 From: Nicholas Dudfield Date: Fri, 18 Sep 2026 11:27:33 +0700 Subject: [PATCH] fix(app): forward-declare Application before OverlayFactory The alias uses Application&; declare the class first so the header does not depend on a transitive declaration. --- src/xrpld/app/main/Application.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/xrpld/app/main/Application.h b/src/xrpld/app/main/Application.h index 8252641d01..24fd9df6bc 100644 --- a/src/xrpld/app/main/Application.h +++ b/src/xrpld/app/main/Application.h @@ -20,6 +20,7 @@ #ifndef RIPPLE_APP_MAIN_APPLICATION_H_INCLUDED #define RIPPLE_APP_MAIN_APPLICATION_H_INCLUDED #include +#include #include #include #include @@ -115,6 +116,7 @@ class RCLValidationsAdaptor; using RCLValidations = Validations; class TimeoutCounterTimer; +class Application; using TimeoutCounterTimerFactory = std::function()>; @@ -182,6 +184,15 @@ public: [[nodiscard]] virtual std::unique_ptr makePeerTimer() = 0; + virtual Stopwatch& + getStopwatch() = 0; + + virtual Stopwatch& + getPreciseStopwatch() = 0; + + virtual beast::xor_shift_engine& + getPrng() = 0; + virtual CollectorManager& getCollectorManager() = 0; virtual Family&