alpaqa sparse
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Typedefs | Functions | Variables
tag-invoke.hpp File Reference

Detailed Description

See also
https://wg21.link/P1895R0
https://wg21.link/P2547R0

Definition in file tag-invoke.hpp.

#include <type_traits>
#include <utility>
+ Include dependency graph for tag-invoke.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tag_invoke_fn
 

Namespaces

namespace  alpaqa
 
namespace  alpaqa::tag_invoke_fn_ns
 
namespace  alpaqa::tag_invoke_ns
 

Concepts

concept  alpaqa::tag_invocable
 
concept  alpaqa::nothrow_tag_invocable
 

Typedefs

template<typename Tag , typename... Args>
using tag_invoke_result = std::invoke_result< decltype(::alpaqa::alpaqa_tag_invoke), Tag, Args... >
 
template<typename Tag , typename... Args>
using tag_invoke_result_t = std::invoke_result_t< decltype(::alpaqa::alpaqa_tag_invoke), Tag, Args... >
 
template<auto & Tag>
using tag_t = std::decay_t< decltype(Tag)>
 

Functions

void alpaqa_tag_invoke ()=delete
 Poison pill to hide overloads of foo() that might be found in parent namespace.
 

Variables

constexpr tag_invoke_fn_ns::tag_invoke_fn alpaqa_tag_invoke = {}
 
template<typename Tag , typename... Args>
constexpr bool is_tag_invocable_v = tag_invocable<Tag, Args...>
 
template<typename Tag , typename... Args>
constexpr bool is_nothrow_tag_invocable_v