27#include "neml2/misc/types.h"
28#include "neml2/tensors/tensors.h"
52 : _raw_str(std::move(
raw))
74 const T &
resolve(
Model * caller,
const std::string & pname)
const;
84 std::string &
raw() {
return _raw_str; }
85 const std::string &
raw()
const {
return _raw_str; }
89 T resolve_number(
double val)
const;
98 mutable std::shared_ptr<T> _tensor =
nullptr;
102#define EXPORT_TENSORNAME(T) extern template struct TensorName<T>
103FOR_ALL_TENSORBASE(EXPORT_TENSORNAME);
104#undef EXPORT_TENSORNAME
The base class for all constitutive models.
Definition Model.h:70
Definition DiagnosticsInterface.cxx:30
std::ostream & operator<<(std::ostream &os, const EnumSelection &es)
Definition EnumSelection.cxx:31
std::stringstream & operator>>(std::stringstream &ss, EnumSelection &es)
Definition EnumSelection.cxx:38
The name of a tensor object that can be referenced in the input files.
Definition VariableStore.h:43
const T & resolve(Model *caller, const std::string &pname) const
std::string & raw()
Get the raw string literal.
Definition TensorName.h:84
TensorName(std::string raw)
Definition TensorName.h:51
TensorName & operator=(const std::string &other)
Assignment operator.
Definition TensorName.h:61
bool operator==(const TensorName &other) const
Test equality.
Definition TensorName.h:77
const std::string & raw() const
Definition TensorName.h:85
const T & resolve(Factory *factory=nullptr) const
Resolve the TensorName to a Tensor object.
Definition TensorName.cxx:36