1 #ifndef CASM_Named_impl
2 #define CASM_Named_impl
10 template <
typename Base>
13 template <
typename Base>
23 template <
typename Base>
25 return derived().primclex().template db<MostDerived>().alias(
name());
29 template <
typename Base>
35 template <
typename Base>
37 m_name = derived().generate_name_impl();
41 template <
typename Base>
46 template <
typename _Base>
49 template <
typename _Base>
55 template <
typename _Base>
58 this->regenerate_name();
64 template <
typename _Base>
75 template <
typename _Base>
85 template <
typename _Base>
void clear_name() const
Unset "id" and "name", if object is modified.
void set_id(Index _id) const
Set id.
void regenerate_name() const
Regenerate "name".
std::string alias() const
Return "alias" if object stored in database and alias exists, return empty string otherwise.
void set_name(std::string _name) const
Set "name", explicity.
void clear_name() const
Unset "name", if object is modified.
std::string to_string(ENUM val)
Return string representation of enum class.
GenericDatumFormatter< std::string, DataObject > name()
INDEX_TYPE Index
For long integer indexing: