proxsuite 0.7.2
The Advanced Proximal Optimization Toolbox
Loading...
Searching...
No Matches
proxsuite::linalg::veg::concepts Namespace Reference

Namespaces

namespace  alloc
namespace  aux
namespace  tuple

Classes

struct  conjunction
struct  disjunction

Functions

 VEG_DEF_CONCEPT (typename T, index, VEG_CONCEPT(same< T, Dyn >)||_detail::_meta::is_fix< T >::value)
 VEG_DEF_CONCEPT (typename... Ts, all_same, _detail::_meta::all_same_impl< meta::make_index_sequence< sizeof...(Ts)>, Ts... >::value)
 VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL ((typename T, typename U), same, T, U)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD ((typename T, typename U), assignable, T, U)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD ((typename T, typename U), nothrow_assignable, T &&, U &&)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT (typename T, trivially_copy_assignable, is_trivially_assignable, T &, T const &)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT (typename T, trivially_move_assignable, is_trivially_assignable, T &, T &&)
 VEG_DEF_CONCEPT (typename T, move_assignable, VEG_CONCEPT(assignable< T &, T && >))
 VEG_DEF_CONCEPT (typename T, nothrow_move_assignable, VEG_CONCEPT(nothrow_assignable< T &, T && >))
 VEG_DEF_CONCEPT (typename T, copy_assignable, VEG_CONCEPT(assignable< T &, T const & >))
 VEG_DEF_CONCEPT (typename T, nothrow_copy_assignable, VEG_CONCEPT(nothrow_assignable< T &, T const & >))
 VEG_DEF_CONCEPT (typename T, final,(sizeof(T)< 0))
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD (typename T, empty, T)
 VEG_DEF_CONCEPT (typename T, nothrow_destructible, noexcept(static_cast< T * >(nullptr) ->~T()))
 VEG_DEF_CONCEPT (typename T, trivially_destructible, std::is_trivially_destructible< T >::value)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD (typename T, trivially_copyable, T)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT (typename T, trivially_default_constructible, is_trivially_constructible, T)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT (typename T, trivially_copy_constructible, is_trivially_constructible, T, T const &)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT (typename T, trivially_move_constructible, is_trivially_constructible, T, T &&)
 VEG_CONCEPT_EXPR ((typename T, typename... Ts),(T, Ts...), inplace_constructible, new(static_cast< void * >(nullptr)) T(VEG_DECLVAL(Ts &&)...), true)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD ((typename T, typename... Ts), constructible, T, Ts &&...)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD ((typename T, typename... Ts), nothrow_constructible, T, Ts &&...)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD ((typename From, typename To), convertible, From &&, To)
 VEG_DEF_CONCEPT ((typename T, typename U), implicitly_constructible, VEG_CONCEPT(convertible< U &&, T >))
 VEG_DEF_CONCEPT (typename T, movable, VEG_HAS_BUILTIN_OR(__is_constructiblex, __is_constructible(T, T &&),(VEG_CONCEPT(constructible< T, T && >))))
 VEG_DEF_CONCEPT (typename T, nothrow_movable, VEG_HAS_BUILTIN_OR(__is_nothrow_constructiblex, __is_nothrow_constructible(T, T &&),(VEG_CONCEPT(nothrow_constructible< T, T && >))))
 VEG_DEF_CONCEPT (typename T, copyable, VEG_CONCEPT(constructible< T, T const & >))
 VEG_DEF_CONCEPT (typename T, nothrow_copyable, VEG_CONCEPT(nothrow_constructible< T, T const & >))
 VEG_DEF_CONCEPT ((template< typename... > class Op, typename... Args), detected, _detail::_meta::is_detected< Op, Args... >::value)
 VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL ((typename T, typename U), base_of, T, U)
 VEG_DEF_CONCEPT (typename T, const_type, VEG_HAS_BUILTIN_OR(__is_const, __is_const(T),(_detail::_meta::is_const< T >::value)))
 VEG_DEF_CONCEPT (typename T, void_type, VEG_CONCEPT(same< void const volatile, T const volatile >))
 VEG_DEF_CONCEPT (typename T, pointer, _detail::_meta::is_pointer< T >::value)
 VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL (typename T, lvalue_reference, T)
 VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL (typename T, rvalue_reference, T)
 VEG_DEF_CONCEPT (typename T, reference,(VEG_CONCEPT(lvalue_reference< T >)||VEG_CONCEPT(rvalue_reference< T >)))
 VEG_DEF_CONCEPT (typename T, complete, _detail::_meta::is_complete< T >::value)
 VEG_CONCEPT_EXPR ((typename Fn, typename Ret, typename... Args),(Fn, Ret, Args...), fn_once, VEG_DECLVAL(Fn &&)(VEG_DECLVAL(Args &&)...), VEG_CONCEPT(same< ExprType, Ret >))
 VEG_CONCEPT_EXPR ((typename Fn, typename Ret, typename... Args),(Fn, Ret, Args...), fn_mut, VEG_DECLVAL(Fn &)(VEG_DECLVAL(Args &&)...), VEG_CONCEPT(same< ExprType, Ret >))
 VEG_CONCEPT_EXPR ((typename Fn, typename Ret, typename... Args),(Fn, Ret, Args...), fn, VEG_DECLVAL(Fn const &)(VEG_DECLVAL(Args &&)...), VEG_CONCEPT(same< ExprType, Ret >))
 VEG_DEF_CONCEPT (typename T, enum_type, VEG_HAS_BUILTIN_OR(__is_enum, __is_enum(T), std::is_enum< T >::value))
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD (typename T, integral, T)
 VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD (typename T, floating_point, T)
 VEG_DEF_CONCEPT_DISJUNCTION (typename T, arithmetic,((, integral< T >),(, floating_point< T >)))
 VEG_DEF_CONCEPT_CONJUNCTION (typename T, signed_integral,((, integral< T >),(aux::, no_wraps_around< T >)))
 VEG_DEF_CONCEPT_CONJUNCTION (typename T, unsigned_integral,((, integral< T >),(aux::, wraps_around< T >)))
 VEG_DEF_CONCEPT_CONJUNCTION ((usize I, typename T), array_gettable,((aux::, bounded_array< uncvref_t< T > >),(aux::, less_than< I, meta::array_extent< uncvref_t< T > >::value >)))
 VEG_DEF_CONCEPT ((usize I, typename T), member_gettable, VEG_CONCEPT(detected< _detail::_meta::member_get_expr, meta::constant< usize, I >, T >))
 VEG_DEF_CONCEPT ((usize I, typename T), adl_gettable, VEG_CONCEPT(detected< _detail::_meta::adl_get_expr, meta::constant< usize, I >, T >))
 VEG_DEF_CONCEPT_DISJUNCTION ((usize I, typename T), gettable,((, array_gettable< I, T >),(, member_gettable< I, T >),(, adl_gettable< I, T >)))

Function Documentation

◆ VEG_DEF_CONCEPT() [1/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
index,
VEG_CONCEPT(same< T, Dyn >)||_detail::_meta::is_fix< T >::value )

◆ VEG_DEF_CONCEPT() [2/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename...Ts,
all_same,
_detail::_meta::all_same_impl< meta::make_index_sequence< sizeof...(Ts)>, Ts... >::value )

◆ VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL() [1/4]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL((typename T, typename U),
same,
T,
U )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [1/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD((typename T, typename U),
assignable,
T,
U )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [2/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD((typename T, typename U),
nothrow_assignable,
T &&,
U && )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT() [1/5]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT(typename T,
trivially_copy_assignable,
is_trivially_assignable,
T &,
T const & )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT() [2/5]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT(typename T,
trivially_move_assignable,
is_trivially_assignable,
T &,
T && )

◆ VEG_DEF_CONCEPT() [3/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
move_assignable,
VEG_CONCEPT(assignable< T &, T && >) )

◆ VEG_DEF_CONCEPT() [4/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
nothrow_move_assignable,
VEG_CONCEPT(nothrow_assignable< T &, T && >) )

◆ VEG_DEF_CONCEPT() [5/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
copy_assignable,
VEG_CONCEPT(assignable< T &, T const & >) )

◆ VEG_DEF_CONCEPT() [6/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
nothrow_copy_assignable,
VEG_CONCEPT(nothrow_assignable< T &, T const & >) )

◆ VEG_DEF_CONCEPT() [7/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
final,
(sizeof(T)< 0) )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [3/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD(typename T,
empty,
T )

◆ VEG_DEF_CONCEPT() [8/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
nothrow_destructible,
noexcept(static_cast< T * >(nullptr) ->~T()) )

◆ VEG_DEF_CONCEPT() [9/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
trivially_destructible,
std::is_trivially_destructible< T >::value )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [4/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD(typename T,
trivially_copyable,
T )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT() [3/5]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT(typename T,
trivially_default_constructible,
is_trivially_constructible,
T )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT() [4/5]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT(typename T,
trivially_copy_constructible,
is_trivially_constructible,
T,
T const & )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT() [5/5]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_TRAIT(typename T,
trivially_move_constructible,
is_trivially_constructible,
T,
T && )

◆ VEG_CONCEPT_EXPR() [1/4]

proxsuite::linalg::veg::concepts::VEG_CONCEPT_EXPR((typename T, typename... Ts),
(T, Ts...),
inplace_constructible,
new(static_cast< void * >(nullptr)) T(VEG_DECLVAL(Ts &&)...),
true )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [5/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD((typename T, typename... Ts),
constructible,
T,
Ts &&... )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [6/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD((typename T, typename... Ts),
nothrow_constructible,
T,
Ts &&... )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [7/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD((typename From, typename To),
convertible,
From &&,
To )

◆ VEG_DEF_CONCEPT() [10/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT((typename T, typename U),
implicitly_constructible,
VEG_CONCEPT(convertible< U &&, T >) )

◆ VEG_DEF_CONCEPT() [11/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
movable,
VEG_HAS_BUILTIN_OR(__is_constructiblex, __is_constructible(T, T &&),(VEG_CONCEPT(constructible< T, T && >))) )

◆ VEG_DEF_CONCEPT() [12/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
nothrow_movable,
VEG_HAS_BUILTIN_OR(__is_nothrow_constructiblex, __is_nothrow_constructible(T, T &&),(VEG_CONCEPT(nothrow_constructible< T, T && >))) )

◆ VEG_DEF_CONCEPT() [13/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
copyable,
VEG_CONCEPT(constructible< T, T const & >) )

◆ VEG_DEF_CONCEPT() [14/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
nothrow_copyable,
VEG_CONCEPT(nothrow_constructible< T, T const & >) )

◆ VEG_DEF_CONCEPT() [15/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT((template< typename... > class Op, typename... Args),
detected,
_detail::_meta::is_detected< Op, Args... >::value )

◆ VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL() [2/4]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL((typename T, typename U),
base_of,
T,
U )

◆ VEG_DEF_CONCEPT() [16/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
const_type,
VEG_HAS_BUILTIN_OR(__is_const, __is_const(T),(_detail::_meta::is_const< T >::value)) )

◆ VEG_DEF_CONCEPT() [17/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
void_type,
VEG_CONCEPT(same< void const volatile, T const volatile >) )

◆ VEG_DEF_CONCEPT() [18/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
pointer,
_detail::_meta::is_pointer< T >::value )

◆ VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL() [3/4]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL(typename T,
lvalue_reference,
T )

◆ VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL() [4/4]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_BUILTIN_OR_INTERNAL(typename T,
rvalue_reference,
T )

◆ VEG_DEF_CONCEPT() [19/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
reference,
(VEG_CONCEPT(lvalue_reference< T >)||VEG_CONCEPT(rvalue_reference< T >)) )

◆ VEG_DEF_CONCEPT() [20/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
complete,
_detail::_meta::is_complete< T >::value )

◆ VEG_CONCEPT_EXPR() [2/4]

proxsuite::linalg::veg::concepts::VEG_CONCEPT_EXPR((typename Fn, typename Ret, typename... Args),
(Fn, Ret, Args...),
fn_once,
VEG_DECLVAL(Fn &&)(VEG_DECLVAL(Args &&)...),
VEG_CONCEPT(same< ExprType, Ret >) )

◆ VEG_CONCEPT_EXPR() [3/4]

proxsuite::linalg::veg::concepts::VEG_CONCEPT_EXPR((typename Fn, typename Ret, typename... Args),
(Fn, Ret, Args...),
fn_mut,
VEG_DECLVAL(Fn &)(VEG_DECLVAL(Args &&)...),
VEG_CONCEPT(same< ExprType, Ret >) )

◆ VEG_CONCEPT_EXPR() [4/4]

proxsuite::linalg::veg::concepts::VEG_CONCEPT_EXPR((typename Fn, typename Ret, typename... Args),
(Fn, Ret, Args...),
fn,
VEG_DECLVAL(Fn const &)(VEG_DECLVAL(Args &&)...),
VEG_CONCEPT(same< ExprType, Ret >) )

◆ VEG_DEF_CONCEPT() [21/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT(typename T,
enum_type,
VEG_HAS_BUILTIN_OR(__is_enum, __is_enum(T), std::is_enum< T >::value) )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [8/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD(typename T,
integral,
T )

◆ VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD() [9/9]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_FROM_BUILTIN_OR_STD(typename T,
floating_point,
T )

◆ VEG_DEF_CONCEPT_DISJUNCTION() [1/2]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_DISJUNCTION(typename T,
arithmetic,
((, integral< T >),(, floating_point< T >)) )

◆ VEG_DEF_CONCEPT_CONJUNCTION() [1/3]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_CONJUNCTION(typename T,
signed_integral,
((, integral< T >),(aux::, no_wraps_around< T >)) )

◆ VEG_DEF_CONCEPT_CONJUNCTION() [2/3]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_CONJUNCTION(typename T,
unsigned_integral,
((, integral< T >),(aux::, wraps_around< T >)) )

◆ VEG_DEF_CONCEPT_CONJUNCTION() [3/3]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_CONJUNCTION((usize I, typename T),
array_gettable,
((aux::, bounded_array< uncvref_t< T > >),(aux::, less_than< I, meta::array_extent< uncvref_t< T > >::value >)) )

◆ VEG_DEF_CONCEPT() [22/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT((usize I, typename T),
member_gettable,
VEG_CONCEPT(detected< _detail::_meta::member_get_expr, meta::constant< usize, I >, T >) )

◆ VEG_DEF_CONCEPT() [23/23]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT((usize I, typename T),
adl_gettable,
VEG_CONCEPT(detected< _detail::_meta::adl_get_expr, meta::constant< usize, I >, T >) )

◆ VEG_DEF_CONCEPT_DISJUNCTION() [2/2]

proxsuite::linalg::veg::concepts::VEG_DEF_CONCEPT_DISJUNCTION((usize I, typename T),
gettable,
((, array_gettable< I, T >),(, member_gettable< I, T >),(, adl_gettable< I, T >)) )