31#include "neml2/misc/types.h"
94 virtual void print(std::ostream &)
const = 0;
100 virtual std::unique_ptr<OptionBase>
clone()
const = 0;
Definition OptionBase.h:44
OptionBase & operator=(const OptionBase &)=delete
virtual void print(std::ostream &) const =0
const std::string & name() const
A readonly reference to the option's name.
Definition OptionBase.h:61
FType & ftype()
A writable reference to the option's ftype.
Definition OptionBase.h:70
bool & user_specified()
A writable reference to the option's user_specified status.
Definition OptionBase.h:88
OptionBase(OptionBase &&)=delete
const std::string & type() const
A readonly reference to the option's type.
Definition OptionBase.h:64
virtual ~OptionBase()=default
const bool & user_specified() const
A readonly reference to the option's user_specified status.
Definition OptionBase.h:85
const bool & suppressed() const
A readonly reference to the option's suppression status.
Definition OptionBase.h:79
virtual bool operator==(const OptionBase &other) const =0
Test for option equality.
const std::string & doc() const
A readonly reference to the option's docstring.
Definition OptionBase.h:73
virtual std::unique_ptr< OptionBase > clone() const =0
OptionBase(const OptionBase &)=delete
std::string & doc()
A writable reference to the option's docstring.
Definition OptionBase.h:76
OptionBase & operator=(OptionBase &&)=delete
bool & suppressed()
A writable reference to the option's suppression status.
Definition OptionBase.h:82
struct neml2::OptionBase::Metadata _metadata
virtual bool operator!=(const OptionBase &other) const =0
Test for option inequality.
const FType & ftype() const
A readonly reference to the option's ftype.
Definition OptionBase.h:67
Definition DiagnosticsInterface.cxx:30
FType
Role in a function definition.
Definition types.h:91
@ NONE
Definition types.h:92
std::ostream & operator<<(std::ostream &os, const EnumSelection &es)
Definition EnumSelection.cxx:32