Skip to content

Instantly share code, notes, and snippets.

@lingxd
lingxd / lam2fp.cpp
Created June 14, 2023 09:55 — forked from supplient/lam2fp.cpp
C++ lambda expression => C-style function pointer
// Source: https://stackoverflow.com/a/48368508/17132546
// Entry template
// extract the lambda's operaor() function signature
template <class F, class T=F>
struct lambda_traits: lambda_traits<decltype(&std::remove_reference<F>::type::operator()), F>
{};
// For mutable lambda, See https://en.cppreference.com/w/cpp/language/lambda
// mutable lambda's operator() is not const,
@lingxd
lingxd / enableNetworkSinker.cmake
Last active October 17, 2022 08:32 — forked from EvanLyu732/enableNetworkSinker.cmake
spdlog.hpp.in corresponding cmake macro
# Parameter:
# LOG MODULE: folder name
# BIND_PORT: network sinker register port
# SEND_PORT: network sinker publish port
macro(enable_logging LOG_MODULE BIND_PORT SEND_PORT)
if(NOT spdlog_FOUND)
find_package(spdlog REQUIRED)
endif()
if(NOT Boost_FOUND)