mirror of
https://github.com/ZmnSCPxj/clboss.git
synced 2026-08-13 12:33:20 +02:00
Add clang build configuration to catch C++20 compatibility issues early. Changes: - Add build-clang job to .github/workflows/build.yml - Add missing #include<cstdint> for std::uint* types (clang strict mode) - Add -lexecinfo for FreeBSD in configure.ac (backtrace_symbols) - Fix pessimizing-move warning in test_earningsrebalancer.cpp - Fix CHANGELOG.md formatting 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
37 lines
925 B
C++
37 lines
925 B
C++
#ifndef BOSS_MSG_PROVIDECHANNELFEEMODIFIER_HPP
|
|
#define BOSS_MSG_PROVIDECHANNELFEEMODIFIER_HPP
|
|
|
|
#include<cstdint>
|
|
#include<functional>
|
|
|
|
namespace Ev { template<typename a> class Io; }
|
|
namespace Ln { class NodeId; }
|
|
|
|
namespace Boss { namespace Msg {
|
|
|
|
/** Boss::Msg::ProvideChannelFeeModifier
|
|
*
|
|
* @brief emitted in response to the
|
|
* `Boss::Msg::SolicitChannelFeeModifier`
|
|
* message.
|
|
*
|
|
* @desc the function you put into this
|
|
* message is given the node ID, plus the
|
|
* raw base median feerate and raw
|
|
* proportional median feerate.
|
|
*
|
|
* The given function must then return a
|
|
* `double` that is multiplied, together
|
|
* with the results from other modifiers.
|
|
*/
|
|
struct ProvideChannelFeeModifier {
|
|
std::function< Ev::Io<double>( Ln::NodeId
|
|
, std::uint32_t /* base */
|
|
, std::uint32_t /* proportional */
|
|
)
|
|
> modifier;
|
|
};
|
|
|
|
}}
|
|
|
|
#endif /* !defined(BOSS_MSG_PROVIDECHANNELFEEMODIFIER_HPP) */
|