alpaqa cmake-targets
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Namespaces | Macros | Typedefs
structs.hpp File Reference
#include <map>
#include <string_view>
+ Include dependency graph for structs.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  alpaqa
 
namespace  alpaqa::params
 

Macros

#define PARAMS_TABLE(type_, ...)
 Helper macro to easily specialize alpaqa::params::attribute_table.
 
#define PARAMS_MEMBER(name)    { #name, &type::name }
 Helper macro to easily initialize a alpaqa::params::attribute_table_t.
 
#define PARAMS_ALIAS_TABLE(type_, ...)
 Helper macro to easily specialize alpaqa::params::attribute_alias_table.
 
#define PARAMS_MEMBER_ALIAS(alias, name)    { #alias, #name }
 Helper macro to easily initialize a alpaqa::params::attribute_alias_table_t.
 

Typedefs

template<class T , class S >
using attribute_table_t = std::map< std::string_view, attribute_accessor< T, S > >
 Dictionary that maps struct attribute names to type-erased functions that set those attributes.
 
template<class T , class S >
using attribute_alias_table_t = std::map< std::string_view, std::string_view >
 Dictionary that maps struct attribute names to type-erased functions that set those attributes.
 

Macro Definition Documentation

◆ PARAMS_TABLE

#define PARAMS_TABLE (   type_,
  ... 
)
Value:
template <class S> \
struct attribute_table<type_, S> { \
using type = type_; \
inline static const attribute_table_t<type, S> table{__VA_ARGS__}; \
}

Helper macro to easily specialize alpaqa::params::attribute_table.

Definition at line 22 of file structs.hpp.

◆ PARAMS_MEMBER

#define PARAMS_MEMBER (   name)     { #name, &type::name }

Helper macro to easily initialize a alpaqa::params::attribute_table_t.

Definition at line 31 of file structs.hpp.

◆ PARAMS_ALIAS_TABLE

#define PARAMS_ALIAS_TABLE (   type_,
  ... 
)
Value:
template <class S> \
struct attribute_alias_table<type_, S> { \
using type = type_; \
inline static const attribute_alias_table_t<type, S> table{ \
__VA_ARGS__}; \
}

Helper macro to easily specialize alpaqa::params::attribute_alias_table.

Definition at line 45 of file structs.hpp.

◆ PARAMS_MEMBER_ALIAS

#define PARAMS_MEMBER_ALIAS (   alias,
  name 
)     { #alias, #name }

Helper macro to easily initialize a alpaqa::params::attribute_alias_table_t.

Definition at line 55 of file structs.hpp.