Added generate_method_arguments handling in class diagram generator

This commit is contained in:
Bartek Kryza
2022-02-06 18:37:48 +01:00
parent 786ecbdd1d
commit fcfe2bcab2
4 changed files with 44 additions and 2 deletions

View File

@@ -150,13 +150,19 @@ void generator::generate(const class_ &c, std::ostream &ostr) const
ostr << to_string(m.scope()) << m.name();
ostr << "(";
if (true) { // TODO: add option to disable parameter generation
if (m_config.generate_method_arguments() !=
config::method_arguments::none) {
std::vector<std::string> params;
std::transform(m.parameters().cbegin(), m.parameters().cend(),
std::back_inserter(params), [this](const auto &mp) {
return mp.to_string(m_config.using_namespace());
});
ostr << fmt::format("{}", fmt::join(params, ", "));
auto args_string = fmt::format("{}", fmt::join(params, ", "));
if (m_config.generate_method_arguments() !=
config::method_arguments::abbreviated) {
args_string = clanguml::util::abbreviate(args_string, 10);
}
ostr << args_string;
}
ostr << ")";