Further reduce the use of std::bind()
And also avoid deprecated ndn-cxx type aliases
Change-Id: I87e903b9671a3cf1c1b9ab30d4594d595c3c6da9
diff --git a/daemon/rib/rib.cpp b/daemon/rib/rib.cpp
index 1d002a1..952cc9a 100644
--- a/daemon/rib/rib.cpp
+++ b/daemon/rib/rib.cpp
@@ -1,6 +1,6 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/*
- * Copyright (c) 2014-2022, Regents of the University of California,
+ * Copyright (c) 2014-2023, Regents of the University of California,
* Arizona Board of Regents,
* Colorado State University,
* University Pierre & Marie Curie, Sorbonne University,
@@ -410,14 +410,16 @@
UpdateQueueItem item = std::move(m_updateBatches.front());
m_updateBatches.pop_front();
- RibUpdateBatch& batch = item.batch;
-
// Until task #1698, each RibUpdateBatch contains exactly one RIB update
- BOOST_ASSERT(batch.size() == 1);
+ BOOST_ASSERT(item.batch.size() == 1);
- auto fibSuccessCb = std::bind(&Rib::onFibUpdateSuccess, this, batch, _1, item.managerSuccessCallback);
- auto fibFailureCb = std::bind(&Rib::onFibUpdateFailure, this, item.managerFailureCallback, _1, _2);
- m_fibUpdater->computeAndSendFibUpdates(batch, fibSuccessCb, fibFailureCb);
+ m_fibUpdater->computeAndSendFibUpdates(item.batch,
+ [this, batch = item.batch, successCb = item.managerSuccessCallback] (const auto& routes) {
+ onFibUpdateSuccess(batch, routes, successCb);
+ },
+ [this, failureCb = item.managerFailureCallback] (const auto& code, const auto& error) {
+ onFibUpdateFailure(failureCb, code, error);
+ });
}
void