27#include <opm/input/eclipse/Units/Dimension.hpp>
35 explicit UDAValue(
const std::string&);
47 UDAValue& operator=(
double value) =
delete;
48 UDAValue& operator=(
const std::string& value) =
delete;
49 void update(
double d);
50 void update(
const std::string& s);
51 void update_value(
const UDAValue& other);
53 static UDAValue serializationTestObject();
58 double raw_value_or(
const double raw_default_value)
const;
59 double SI_value_or(
const double SI_default_value)
const;
76 double epsilonLimit()
const;
78 bool is_defined()
const;
82 void assert_numeric()
const;
83 void assert_numeric(
const std::string& error_msg)
const;
84 void assert_maybe_numeric()
const;
88 bool operator==(
const UDAValue& other)
const;
89 bool operator!=(
const UDAValue& other)
const;
91 bool is_numeric()
const {
return double_value.has_value(); }
93 template<
class Serializer>
96 serializer(double_value);
97 serializer(string_value);
101 void operator*=(
double rhs);
105 std::optional<double> double_value;
106 std::string string_value;
111std::ostream& operator<<( std::ostream& stream,
const UDAValue& uda_value );
Definition Dimension.hpp:27
Class for (de-)serializing.
Definition Serializer.hpp:94
Definition UDAValue.hpp:31
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30