alpaqa 1.0.0a19
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
params.tpp File Reference
#include <alpaqa/params/params.hpp>
#include <alpaqa/config/config.hpp>
#include <alpaqa/params/structs.hpp>
#include <alpaqa/util/demangled-typename.hpp>
#include <alpaqa/util/string-util.hpp>

Go to the source code of this file.

Classes

struct  attribute_accessor< ParamString >
 Function wrapper to set attributes of a struct, type-erasing the type of the attribute. More...
 
struct  enum_accessor< T, ParamString >
 

Namespaces

namespace  alpaqa
 
namespace  alpaqa::params
 
namespace  alpaqa::params::detail
 

Functions

template<class T >
void assert_key_empty (ParamString s)
 Throw a meaningful error when s.key is not empty, to indicate that the given type T is not of struct type and cannot be indexed into.
 
template<class T >
void unsupported_type (T &, ParamString s)
 Throw a meaningful error to indicate that parameters of type T are not supported or implemented.
 
template<class S >
auto find_param (const attribute_table_t< S > &m, std::string_view key, std::string &error_msg) -> std::optional< typename attribute_table_t< S >::const_iterator >
 
template<class T >
requires requires { attribute_table<T, ParamString>::table; }
void set_param_default (T &t, ParamString s)
 Use s to index into the struct type T and overwrite the attribute given by s.key.
 
template<class T >
requires requires { enum_table<T, ParamString>::table; }
void set_param_default (T &t, ParamString s)
 Set t to the value of s.value.