SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
result.hpp File Reference
#include <concepts>
#include <expected>
#include <memory>
#include <type_traits>
#include <utility>
#include "serif/utils/types/type_list.hpp"
Include dependency graph for result.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  serif::utils::dependencies::detail::Result< T >
 Computations publish owned, movable values, either directly or through std::expected. More...
 
struct  serif::utils::dependencies::detail::Result< std::expected< ValueT, ErrorT > >
 
struct  serif::utils::dependencies::detail::Invocation< ComputationT, ArgumentsT, typename >
 Ill-formed calls fail the graph concept instead of producing a hard instantiation error. More...
 
struct  serif::utils::dependencies::detail::Invocation< ComputationT, types::TypeList< Arguments... >, std::void_t< InvocationResult< ComputationT, Arguments... > > >
 

Namespaces

namespace  serif
 
namespace  serif::utils
 
namespace  serif::utils::dependencies
 
namespace  serif::utils::dependencies::detail
 

Typedefs

template<typename ComputationT, typename TargetT>
using serif::utils::dependencies::detail::ComputationArgument = std::conditional_t<ComputationT::owns_inputs, std::shared_ptr<const TargetT>, TargetT>
 Owning computations receive the cache handle; ordinary computations receive the value.
 
template<typename ComputationT, typename... Arguments>
using serif::utils::dependencies::detail::InvocationResult
 Match the const argument access used by the runtime cache without constructing any values.