Diagram element representing a class or class template. More...
#include <class.h>
Public Member Functions | |
class_ (const common::model::namespace_ &using_namespace) | |
class_ (const class_ &)=delete | |
class_ (class_ &&) noexcept=delete | |
class_ & | operator= (const class_ &)=delete |
class_ & | operator= (class_ &&)=delete |
std::string | type_name () const override |
bool | is_struct () const |
void | is_struct (bool is_struct) |
bool | is_union () const |
void | is_union (bool is_union) |
void | add_member (class_member &&member) |
void | add_method (class_method &&method) |
void | add_parent (class_parent &&parent) |
const std::vector< class_member > & | members () const |
const std::vector< class_method > & | methods () const |
const std::vector< class_parent > & | parents () const |
std::vector< class_parent > & | parents () |
std::string | full_name (bool relative=true) const override |
Get class full name. | |
std::string | full_name_no_ns () const override |
Get unqualified class ful name. | |
bool | is_abstract () const |
std::optional< std::string > | doxygen_link () const override |
Generate Doxygen style HTML link for the class. | |
void | apply_filter (const common::model::diagram_filter &filter, const std::set< eid_t > &removed) override |
Public Member Functions inherited from clanguml::common::model::template_element | |
~template_element () override=default | |
bool | is_template () const |
void | is_template (bool is_template) |
int | calculate_template_specialization_match (const template_element &other) const |
Calculate template specialization match with other class. | |
bool | template_specialization_found () const |
void | template_specialization_found (bool found) |
element (namespace_ using_namespace, path_type pt=path_type::kNamespace) | |
Public Member Functions inherited from clanguml::common::model::element | |
element (namespace_ using_namespace, path_type pt=path_type::kNamespace) | |
~element () override=default | |
std::string | name_and_ns () const |
void | set_namespace (const namespace_ &ns) |
namespace_ | get_namespace () const |
namespace_ | get_relative_namespace () const |
const namespace_ & | path () const |
void | set_module (const std::string &module) |
std::optional< std::string > | module () const |
void | set_module_private (const bool module_private) |
bool | module_private () const |
std::string | full_name (bool relative) const override |
virtual std::string | full_name_no_ns () const |
const namespace_ & | using_namespace () const |
inja::json | context () const override |
Public Member Functions inherited from clanguml::common::model::diagram_element | |
diagram_element () | |
~diagram_element () override=default | |
const eid_t & | id () const |
Returns diagram element id. | |
void | set_id (eid_t id) |
std::optional< eid_t > | parent_element_id () const |
void | set_parent_element_id (eid_t id) |
virtual std::string | alias () const |
Return elements' diagram alias. | |
void | set_name (const std::string &name) |
std::string | name () const |
virtual std::string | type_name () const |
virtual std::string | full_name (bool) const |
Return the elements fully qualified name. | |
std::vector< relationship > & | relationships () |
const std::vector< relationship > & | relationships () const |
void | add_relationship (relationship &&cr) |
void | append (const decorated_element &e) |
virtual inja::json | context () const |
bool | is_nested () const |
void | nested (bool nested) |
bool | complete () const |
void | complete (bool completed) |
virtual void | apply_filter (const diagram_filter &filter, const std::set< eid_t > &removed) |
Public Member Functions inherited from clanguml::common::model::decorated_element | |
virtual | ~decorated_element ()=default |
bool | skip () const |
bool | skip_relationship () const |
std::pair< relationship_t, std::string > | get_relationship () const |
std::string | style_spec () const |
const std::vector< std::shared_ptr< decorators::decorator > > & | decorators () const |
void | add_decorators (const std::vector< std::shared_ptr< decorators::decorator > > &decorators) |
void | append (const decorated_element &de) |
std::optional< comment_t > | comment () const |
void | set_comment (const comment_t &c) |
virtual std::optional< std::string > | doxygen_link () const |
Public Member Functions inherited from clanguml::common::model::source_location | |
source_location ()=default | |
source_location (std::string f, unsigned int l) | |
const std::string & | file () const |
void | set_file (const std::string &file) |
const std::string & | file_relative () const |
void | set_file_relative (const std::string &file) |
const std::string & | translation_unit () const |
void | set_translation_unit (const std::string &translation_unit) |
unsigned int | line () const |
void | set_line (const unsigned line) |
unsigned int | column () const |
void | set_column (const unsigned column) |
unsigned int | location_id () const |
void | set_location_id (unsigned int h) |
Public Member Functions inherited from clanguml::common::model::template_trait | |
std::ostream & | render_template_params (std::ostream &ostr, const common::model::namespace_ &using_namespace, bool relative) const |
void | add_template (template_parameter &&tmplt) |
const std::vector< template_parameter > & | template_params () const |
int | calculate_template_specialization_match (const template_trait &other) const |
Wrapper around calculate_template_params_specialization_match() | |
Public Member Functions inherited from clanguml::common::model::stylable_element | |
void | set_style (const std::string &style) |
std::optional< std::string > | style () const |
Private Attributes | |
bool | is_struct_ {false} |
bool | is_union_ {false} |
std::vector< class_member > | members_ |
std::vector< class_method > | methods_ |
std::vector< class_parent > | bases_ |
std::string | base_template_full_name_ |
std::string | full_name_ |
Friends | |
bool | operator== (const class_ &l, const class_ &r) |
clanguml::class_diagram::model::class_::class_ | ( | const common::model::namespace_ & | using_namespace | ) |
|
delete |
|
deletenoexcept |
void clanguml::class_diagram::model::class_::add_member | ( | class_member && | member | ) |
void clanguml::class_diagram::model::class_::add_method | ( | class_method && | method | ) |
void clanguml::class_diagram::model::class_::add_parent | ( | class_parent && | parent | ) |
Add class parent (inheritance relationship).
parent | Class parent. |
|
overridevirtual |
Reimplemented from clanguml::common::model::diagram_element.
Definition at line 116 of file class.cc.
|
overridevirtual |
Generate Doxygen style HTML link for the class.
This method generates a link, which can be used in SVG diagrams to create links from classes to Doxygen documentation pages.
Reimplemented from clanguml::common::model::decorated_element.
Definition at line 131 of file class.cc.
|
overridevirtual |
Get class full name.
This method renders the entire class name including all template parameters and/or arguments.
relative | Whether the class name should be relative to using_namespace |
Reimplemented from clanguml::common::model::diagram_element.
Definition at line 84 of file class.cc.
|
overridevirtual |
Get unqualified class ful name.
This method returns the class full name but without any namespace qualifier.
Reimplemented from clanguml::common::model::element.
bool clanguml::class_diagram::model::class_::is_abstract | ( | ) | const |
Whether the class is abstract.
bool clanguml::class_diagram::model::class_::is_struct | ( | ) | const |
void clanguml::class_diagram::model::class_::is_struct | ( | bool | is_struct | ) |
bool clanguml::class_diagram::model::class_::is_union | ( | ) | const |
void clanguml::class_diagram::model::class_::is_union | ( | bool | is_union | ) |
const std::vector< class_member > & clanguml::class_diagram::model::class_::members | ( | ) | const |
const std::vector< class_method > & clanguml::class_diagram::model::class_::methods | ( | ) | const |
std::vector< class_parent > & clanguml::class_diagram::model::class_::parents | ( | ) |
const std::vector< class_parent > & clanguml::class_diagram::model::class_::parents | ( | ) | const |
|
inlineoverridevirtual |
Get the type name of the diagram element.
Reimplemented from clanguml::common::model::diagram_element.
Definition at line 59 of file class.h.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |