16 #include "libmesh/enum_order.h" 17 #include "libmesh/enum_quadrature_type.h" 18 #include "libmesh/enum_fe_family.h" 19 #include "libmesh/enum_elem_type.h" 40 libMesh::Order stringToEnum<libMesh::Order>(
const std::string & s);
66 std::ostringstream
os;
75 return v ?
"true" :
"false";
82 return std::to_string(v);
87 return std::to_string(v);
92 return std::to_string(v);
97 return std::to_string(v);
102 return std::to_string(v);
107 return std::to_string(v);
112 template <
typename T,
typename V>
120 template <
typename... T>
124 return (internal::stringify_variant<T>(v) + ...);
137 std::string
stringify(
const std::string & s);
152 template <
typename T,
typename U>
154 stringify(
const std::pair<T, U> & p,
const std::string & delim =
":")
172 template <
template <
typename...>
class T,
typename... U>
175 const std::string & delim =
", ",
176 const std::string & elem_encl =
"",
177 bool enclose_list_in_curly_braces =
false)
180 if (enclose_list_in_curly_braces)
182 const auto begin = c.begin();
183 const auto end = c.end();
184 for (
auto i = begin; i != end; ++i)
185 str += (i != begin ? delim :
"") + elem_encl +
stringify(*i) + elem_encl;
186 if (enclose_list_in_curly_braces)
198 template <
typename T1,
typename T2>
202 std::vector<T2>
out(in.begin(), in.end());
211 Point
toPoint(
const std::vector<Real> & pos);
std::string stringify_variant(const V &value)
EigenSolveType
Type of the eigen solve.
RelationshipManagerType
Main types of Relationship Managers.
T stringToEnum(const std::string &s)
CoordinateSystemType stringToEnum< CoordinateSystemType >(const std::string &s)
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
std::basic_ostream< charT, traits > * os
TimeIntegratorType stringToEnum< TimeIntegratorType >(const std::string &s)
std::string stringifyExact(Real)
Stringify Reals with enough precision to guarantee lossless Real -> string -> Real roundtrips...
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
LineSearchType
Type of the line search.
Point toPoint(const std::vector< Real > &pos)
Convert point represented as std::vector into Point.
std::string stringify(const T &t)
conversion to string
LineSearchType stringToEnum< LineSearchType >(const std::string &s)
SolveType stringToEnum< SolveType >(const std::string &s)
std::vector< T2 > vectorCast(std::vector< T2 > in)
std::vector< T > vectorStringsToEnum(const MultiMooseEnum &v)
TimeIntegratorType
Time integrators.
RelationshipManagerType stringToEnum< RelationshipManagerType >(const std::string &s)
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...
SolveType
Type of the solve.