a type-specific Option (e.g., a boolean –toggle or -m=SBuf) More...
#include <Options.h>
Public Types | |
enum | ValueExpectation { valueNone , valueOptional , valueRequired } |
Public Member Functions | |
TypedOption (const char *nameThatEnables, const char *nameThatDisables=nullptr, ValueExpectation vex=valueNone) | |
void | linkWith (Recipient *recipient) const |
who to tell when this option is enabled More... | |
bool | configured () const override |
bool | disabled () const override |
whether disable() has been called More... | |
bool | valued () const override |
void | unconfigure () const override |
clear enable(), configureWith(), or disable() effects More... | |
void | enable () const override |
called after parsing onName without a value (e.g., -x or –enable-x) More... | |
void | configureWith (const SBuf &rawValue) const override |
called after parsing onName and a value (e.g., -x=v or –enable-x=v) More... | |
void | disable () const override |
called after parsing offName (e.g., +i or –disable-x) More... | |
void | print (std::ostream &os) const override |
prints a configuration snippet (as an admin could have typed) More... | |
void | print (std::ostream &os) const |
prints a configuration snippet (as an admin could have typed) More... | |
Public Attributes | |
const char *const | onName = nullptr |
A name that must be used to explicitly enable this Option (required). More... | |
const char *const | offName = nullptr |
ValueExpectation | valueExpectation = valueNone |
expect "=value" part? More... | |
Private Member Functions | |
void | import (const SBuf &rawValue) const |
void | import (const SBuf &rawValue) const |
Private Attributes | |
Recipient * | recipient_ = nullptr |
parsing results storage More... | |
Detailed Description
class Acl::TypedOption< Recipient >
Member Enumeration Documentation
◆ ValueExpectation
|
inherited |
Constructor & Destructor Documentation
◆ TypedOption()
|
inlineexplicit |
Member Function Documentation
◆ configured()
|
inlineoverridevirtual |
whether the admin explicitly specified this option (i.e., whether enable(), configureWith(), or disable() has been called)
Implements Acl::Option.
Definition at line 145 of file Options.h.
References Acl::TypedOption< Recipient >::recipient_.
Referenced by Acl::TypedOption< Recipient >::print().
◆ configureWith()
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 163 of file Options.h.
References assert, and Acl::TypedOption< Recipient >::recipient_.
◆ disable()
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 172 of file Options.h.
References assert, and Acl::TypedOption< Recipient >::recipient_.
◆ disabled()
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 146 of file Options.h.
References Acl::Option::offName, and Acl::TypedOption< Recipient >::recipient_.
Referenced by Acl::TypedOption< Recipient >::print().
◆ enable()
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 154 of file Options.h.
References assert, and Acl::TypedOption< Recipient >::recipient_.
◆ import() [1/2]
|
inlineprivate |
Definition at line 25 of file CharacterSetOption.h.
References SBuf::c_str().
◆ import() [2/2]
|
inlineprivate |
Definition at line 192 of file Options.h.
References Acl::TypedOption< Recipient >::recipient_.
◆ linkWith()
|
inline |
Definition at line 137 of file Options.h.
References assert, and Acl::TypedOption< Recipient >::recipient_.
Referenced by Acl::DestinationDomainCheck::options(), ACLDestinationIP::options(), Acl::AnnotationCheck::options(), Acl::ServerNameCheck::options(), and ACLMaxUserIP::options().
◆ print() [1/2]
|
inlinevirtual |
Implements Acl::Option.
Definition at line 34 of file CharacterSetOption.h.
◆ print() [2/2]
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 181 of file Options.h.
References Acl::TypedOption< Recipient >::configured(), Acl::TypedOption< Recipient >::disabled(), Acl::Option::offName, Acl::Option::onName, Acl::TypedOption< Recipient >::recipient_, and Acl::TypedOption< Recipient >::valued().
◆ unconfigure()
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 149 of file Options.h.
References assert, and Acl::TypedOption< Recipient >::recipient_.
◆ valued()
|
inlineoverridevirtual |
Implements Acl::Option.
Definition at line 147 of file Options.h.
References Acl::TypedOption< Recipient >::recipient_.
Referenced by Acl::TypedOption< Recipient >::print().
Member Data Documentation
◆ offName
|
inherited |
A name that must be used to explicitly disable this Option (optional). Nil for (and only for) options that cannot be disabled().
Definition at line 92 of file Options.h.
Referenced by Acl::TypedOption< Recipient >::disabled(), and Acl::TypedOption< Recipient >::print().
◆ onName
|
inherited |
Definition at line 88 of file Options.h.
Referenced by Acl::Option::Option(), and Acl::TypedOption< Recipient >::print().
◆ recipient_
|
mutableprivate |
Definition at line 196 of file Options.h.
Referenced by Acl::TypedOption< Recipient >::configured(), Acl::TypedOption< Recipient >::configureWith(), Acl::TypedOption< Recipient >::disable(), Acl::TypedOption< Recipient >::disabled(), Acl::TypedOption< Recipient >::enable(), Acl::TypedOption< Recipient >::import(), Acl::TypedOption< Recipient >::linkWith(), Acl::TypedOption< Recipient >::print(), Acl::TypedOption< Recipient >::unconfigure(), and Acl::TypedOption< Recipient >::valued().
◆ valueExpectation
|
inherited |
The documentation for this class was generated from the following file:
- src/acl/Options.h