|
SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
|
#include <concepts>#include <cstddef>#include <tuple>#include <type_traits>#include <utility>#include "serif/utils/dependencies/computation.hpp"#include "serif/utils/dependencies/key_list_operations.hpp"#include "serif/utils/dependencies/detail/graph.hpp"Classes | |
| class | serif::utils::dependencies::ComputationGraph< Computations > |
Namespaces | |
| namespace | serif |
| namespace | serif::utils |
| namespace | serif::utils::dependencies |
| namespace | serif::utils::dependencies::detail |
Concepts | |
| concept | serif::utils::dependencies::CompatibleComputations |
| A computational graph needs unique producers, valid input ownership, and no cycles. | |
| concept | serif::utils::dependencies::IsComputationGraph |
Functions | |
| template<typename... Computations> requires CompatibleComputations<Computations...> && (std::constructible_from<std::remove_cvref_t<Computations>, Computations> && ...) | |
| auto | serif::utils::dependencies::make_computation_graph (Computations &&... computations) |
| Reject duplicate producers and cyclic computational graphs at the declaration site. | |
Variables | |
| template<typename ComputationT, typename ResultKeysT> | |
| constexpr bool | serif::utils::dependencies::detail::valid_input_ownership_v |
| Owning nodes can retain computed inputs; context resources remain borrowed. | |
| template<typename T> | |
| constexpr bool | serif::utils::dependencies::is_computation_graph_v = false |
| template<typename... Computations> | |
| constexpr bool | serif::utils::dependencies::is_computation_graph_v< ComputationGraph< Computations... > > = true |