Sleipnir C++ API
Loading...
Searching...
No Matches
expression_type.hpp
1// Copyright (c) Sleipnir contributors
2
3#pragma once
4
5#include <stdint.h>
6
7#include <string_view>
8
9#include "sleipnir/util/symbol_exports.hpp"
10
11namespace slp {
12
18enum class ExpressionType : uint8_t {
20 NONE,
22 CONSTANT,
24 LINEAR,
26 QUADRATIC,
28 NONLINEAR
29};
30
36SLEIPNIR_DLLEXPORT constexpr std::string_view ToMessage(
37 const ExpressionType& type) {
38 using enum ExpressionType;
39
40 switch (type) {
41 case NONE:
42 return "none";
43 case CONSTANT:
44 return "constant";
45 case LINEAR:
46 return "linear";
47 case QUADRATIC:
48 return "quadratic";
49 case NONLINEAR:
50 return "nonlinear";
51 default:
52 return "unknown";
53 }
54}
55
56} // namespace slp