Chrysalis - Pattern
Toggle main menu visibility
Loading...
Searching...
No Matches
BaseNamedElement.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_BASENAMEDINPUT_H
2
#define CHRYSALIS_BASENAMEDINPUT_H
3
4
#include "
serialization.h
"
5
6
#include <string>
7
#include <boost/optional/optional.hpp>
8
9
namespace
Chrysalis
{
10
class
BaseNamedElement
{
11
protected
:
12
SERIALIZE
(name_, alias_)
13
PROVIDE_DEFAULT_SERIALIZATION_ACCESS
(
BaseNamedElement
)
14
explicit
BaseNamedElement
(const std::
string
& name);
15
public:
16
[[nodiscard]]
bool
hasAlias
() const;
17
18
[[nodiscard]] const std::
string
&
getName
() const;
19
[[nodiscard]] const std::
string
&
getAlias
() const;
20
21
void
setName
(const std::
string
& name);
22
void
setAlias
(const std::
string
& alias);
23
private:
24
std::
string
name_;
25
boost::optional<std::
string
> alias_;
26
};
27
}
28
29
#endif
//CHRYSALIS_BASENAMEDINPUT_H
Chrysalis::BaseNamedElement::getAlias
const std::string & getAlias() const
Definition
BaseNamedElement.cpp:15
Chrysalis::BaseNamedElement::setAlias
void setAlias(const std::string &alias)
Definition
BaseNamedElement.cpp:23
Chrysalis::BaseNamedElement::BaseNamedElement
BaseNamedElement()=default
Chrysalis::BaseNamedElement::getName
const std::string & getName() const
Definition
BaseNamedElement.cpp:11
Chrysalis::BaseNamedElement::hasAlias
bool hasAlias() const
Definition
BaseNamedElement.cpp:7
Chrysalis::BaseNamedElement::setName
void setName(const std::string &name)
Definition
BaseNamedElement.cpp:19
Chrysalis
Definition
Argument.h:9
serialization.h
PROVIDE_DEFAULT_SERIALIZATION_ACCESS
#define PROVIDE_DEFAULT_SERIALIZATION_ACCESS(Class)
Definition
serialization.h:45
SERIALIZE
#define SERIALIZE(...)
Definition
serialization.h:62
pattern
include
BaseNamedElement.h
Generated by
1.17.0