Ultra 0.9.4
Loading...
Searching...
No Matches
hga/problem.h
Go to the documentation of this file.
1
12
13#if !defined(ULTRA_HGA_PROBLEM_H)
14#define ULTRA_HGA_PROBLEM_H
15
16#include "kernel/problem.h"
18
19namespace ultra::hga
20{
21
29class problem : public ultra::problem
30{
31public:
32 // ---- Constructors ----
33 problem() = default;
34
35 [[nodiscard]] std::size_t parameters() const noexcept;
36
37 template<Terminal T, symbol_set::weight_t = symbol_set::default_weight,
38 class ...Args>
39 std::add_pointer_t<T> insert(Args &&...);
40};
41
50template<Terminal T, symbol_set::weight_t W, class ...Args>
51std::add_pointer_t<T> problem::insert(Args &&... args)
52{
53 return sset.insert<T, W>(std::forward<Args>(args)...);
54}
55
56} // namespace ultra::hga
57
58#endif // include guard
std::size_t parameters() const noexcept
Definition hga/problem.cc:21
Definition terminal.h:71
Definition problem.h:26