Inside Bitcoin
Opening the selected file…
Opening the selected file…
The code behind the network, with room to understand it.
Release published 2026-10-28 · Snapshot fetched 2026-11-01. Latest stable release at fetch time; development branches and Git history are excluded. Only the selected code window and visible folders load here.
1// Copyright (c) 2023-present The Bitcoin Core developers2// Distributed under the MIT software license, see the accompanying3// file COPYING or http://www.opensource.org/licenses/mit-license.php.5#ifndef BITCOIN_UTIL_ANY_H6#define BITCOIN_UTIL_ANY_H8#include <any>10namespace util {12/**13* Helper function to access the contained object of a std::any instance.14* Returns a pointer to the object if passed instance has a value and the type15* matches, nullptr otherwise.16*/17template<typename T>18T* AnyPtr(const std::any& any) noexcept19{20T* const* ptr = std::any_cast<T*>(&any);21return ptr ? *ptr : nullptr;22}24} // namespace util26#endif // BITCOIN_UTIL_ANY_H