Rosetta
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Private Types | Friends | List of all members
utility::options::OptionKey Class Referenceabstract

Abstract automatic hidden index key for options. More...

#include <OptionKey.hh>

Inheritance diagram for utility::options::OptionKey:
Inheritance graph
[legend]

Public Types

typedef utility::keys::KeyLookup< OptionKeyLookup
 
- Public Types inherited from utility::keys::AutoKey< Option >
typedef utility::keys::Key Key
 
typedef Option object_type
 
typedef std::size_t index_type
 
typedef std::size_t size_type
 
typedef Option Object
 
typedef std::size_t Index
 
typedef std::size_t Size
 
- Public Types inherited from S
typedef struct S::_D D
 

Public Member Functions

OptionKeyclone () const override=0
 Clone this. More...
 
 ~OptionKey () override
 Destructor. More...
 
OptionKeyoperator= (Key const &key)
 Key assignment. More...
 
virtual bool scalar () const =0
 Scalar option key? More...
 
virtual bool vector () const =0
 Vector option key? More...
 
- Public Member Functions inherited from utility::keys::AutoKey< Option >
 ~AutoKey () override
 Destructor. More...
 
AutoKeyoperator= (AutoKey const &key)
 Copy assignment. More...
 
AutoKeyoperator= (Key const &key)
 Key assignment. More...
 
std::string const & id () const override
 ID. More...
 
std::string & id () override
 ID. More...
 
AutoKeyid (std::string const &id_a) override
 ID assignment. More...
 
std::string const & identifier () const override
 Identifier. More...
 
std::string & identifier () override
 Identifier. More...
 
AutoKeyidentifier (std::string const &identifier_a) override
 Identifier assignment. More...
 
std::string const & code () const override
 Code. More...
 
std::string & code () override
 Code. More...
 
AutoKeycode (std::string const &code_a) override
 Code assignment. More...
 
Index private_index () const override
 Index. More...
 

Protected Types

typedef utility::keys::Key Key
 

Protected Member Functions

 OptionKey ()
 Default constructor. More...
 
 OptionKey (OptionKey const &key, std::string const &id_a, std::string const &identifier_a=std::string(), std::string const &code_a=std::string())
 Copy + identifier constructor. More...
 
 OptionKey (Key const &key)
 Key constructor. More...
 
 OptionKey (Key const &key, std::string const &id_a, std::string const &identifier_a=std::string(), std::string const &code_a=std::string())
 Key + identifier constructor. More...
 
 OptionKey (std::string const &id_a, std::string const &identifier_a=std::string(), std::string const &code_a=std::string())
 Identifier constructor. More...
 
- Protected Member Functions inherited from utility::keys::AutoKey< Option >
 AutoKey ()
 Default constructor. More...
 
 AutoKey (AutoKey const &key)
 Copy constructor. More...
 
 AutoKey (AutoKey const &key, std::string const &id_a, std::string const &identifier_a=std::string(), std::string const &code_a=std::string())
 Copy + identifier constructor. More...
 
 AutoKey (Key const &key)
 Key constructor. More...
 
 AutoKey (Key const &key, std::string const &id_a, std::string const &identifier_a=std::string(), std::string const &code_a=std::string())
 Key + identifier constructor. More...
 
 AutoKey (std::string const &id_a, std::string const &identifier_a=std::string(), std::string const &code_a=std::string())
 Identifier constructor. More...
 
void assign_Key (Key const &key) override
 Key assignment. More...
 
 operator Index () const
 Index value conversion. More...
 
Index index () const override
 Index. More...
 
Indexindex () override
 Index. More...
 
AutoKeyindex (Index const index_a) override
 Index assignment. More...
 
bool equals (Key const &key) const override
 Equal to a Key? More...
 
bool less_than (Key const &key) const override
 Less than a Key? More...
 
bool comparable (Key const &key) const override
 Comparable to a Key? More...
 

Private Types

typedef utility::keys::AutoKey< OptionSuper
 

Friends

template<typename K , typename T >
class utility::keys::SmallKeyVector
 

Additional Inherited Members

- Static Public Member Functions inherited from utility::keys::AutoKey< Option >
static Size n_key ()
 Number of keys with distinct indexes. More...
 
- Public Attributes inherited from S
int a
 
struct {
   int   b
 
}; 
 
FL_not_binded fl
 
struct {
   float   b4
 
B_not_binded [4]
 
struct {
   int   c
 
C_not_binded
 

Detailed Description

Abstract automatic hidden index key for options.

Member Typedef Documentation

◆ Key

◆ Lookup

◆ Super

Constructor & Destructor Documentation

◆ OptionKey() [1/5]

utility::options::OptionKey::OptionKey ( )
inlineprotected

Default constructor.

◆ OptionKey() [2/5]

utility::options::OptionKey::OptionKey ( OptionKey const &  key,
std::string const &  id_a,
std::string const &  identifier_a = std::string(),
std::string const &  code_a = std::string() 
)
inlineprotected

Copy + identifier constructor.

◆ OptionKey() [3/5]

utility::options::OptionKey::OptionKey ( Key const &  key)
inlineexplicitprotected

Key constructor.

◆ OptionKey() [4/5]

utility::options::OptionKey::OptionKey ( Key const &  key,
std::string const &  id_a,
std::string const &  identifier_a = std::string(),
std::string const &  code_a = std::string() 
)
inlineprotected

Key + identifier constructor.

◆ OptionKey() [5/5]

utility::options::OptionKey::OptionKey ( std::string const &  id_a,
std::string const &  identifier_a = std::string(),
std::string const &  code_a = std::string() 
)
inlineexplicitprotected

Identifier constructor.

◆ ~OptionKey()

utility::options::OptionKey::~OptionKey ( )
inlineoverride

Destructor.

Member Function Documentation

◆ clone()

OptionKey* utility::options::OptionKey::clone ( ) const
overridepure virtual

◆ operator=()

OptionKey& utility::options::OptionKey::operator= ( Key const &  key)
inline

◆ scalar()

virtual bool utility::options::OptionKey::scalar ( ) const
pure virtual

◆ vector()

virtual bool utility::options::OptionKey::vector ( ) const
pure virtual

Friends And Related Function Documentation

◆ utility::keys::SmallKeyVector

template<typename K , typename T >
friend class utility::keys::SmallKeyVector
friend

The documentation for this class was generated from the following file: