31#include "neml2/misc/types.h"
100 virtual void print(std::ostream &)
const = 0;
106 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:69
bool & user_specified()
A writable reference to the option's user_specified status.
Definition OptionBase.h:89
bool & required()
A writable reference to the option's required status.
Definition OptionBase.h:79
OptionBase(OptionBase &&)=delete
const std::string & type() const
A readonly reference to the option's type.
Definition OptionBase.h:64
virtual ~OptionBase()=default
bool defined() const
Whether this option is defined.
Definition OptionBase.h:92
virtual bool operator==(const OptionBase &other) const =0
Test for option equality.
bool user_specified() const
Whether this option is user-specified.
Definition OptionBase.h:87
const std::string & doc() const
A readonly reference to the option's docstring.
Definition OptionBase.h:72
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:74
OptionBase & operator=(OptionBase &&)=delete
bool & suppressed()
A writable reference to the option's suppression status.
Definition OptionBase.h:84
bool required() const
Whether this option is required.
Definition OptionBase.h:77
bool suppressed() const
Whether this option is suppressed.
Definition OptionBase.h:82
bool & defined()
A writable reference to the option's defined status.
Definition OptionBase.h:94
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.h:31
std::ostream & operator<<(std::ostream &, const EnumSelection &)
FType
Role in a function definition.
Definition types.h:90
@ NONE
Definition types.h:91