0.5.4
C++ to UML diagram generator based on Clang
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Enumerations | Functions
config.h File Reference
#include "common/model/enums.h"
#include "common/types.h"
#include "option.h"
#include "util/util.h"
#include <spdlog/spdlog.h>
#include <yaml-cpp/yaml.h>
#include <map>
#include <memory>
#include <optional>
#include <regex>
#include <string>
#include <variant>
#include <vector>

Go to the source code of this file.

Classes

struct  clanguml::config::plantuml_keyword_mapping_t
 
struct  clanguml::config::plantuml
 PlantUML diagram config section. More...
 
struct  clanguml::config::mermaid
 MermaidJS diagram config section. More...
 
struct  clanguml::config::context_config
 
struct  clanguml::config::diagram_template
 Definition of diagram template. More...
 
struct  clanguml::config::filter
 
struct  clanguml::config::layout_hint
 
struct  clanguml::config::generate_links_config
 
struct  clanguml::config::git_config
 
struct  clanguml::config::relationship_hint_t
 
struct  clanguml::config::type_aliases_longer_first_comparator
 
struct  clanguml::config::source_location
 
struct  clanguml::config::inheritable_diagram_options
 Represents subset of inheritable configuration options. More...
 
struct  clanguml::config::diagram
 Common diagram configuration type. More...
 
struct  clanguml::config::class_diagram
 Class diagram configuration. More...
 
struct  clanguml::config::sequence_diagram
 Sequence diagram configuration. More...
 
struct  clanguml::config::package_diagram
 Package diagram configuration. More...
 
struct  clanguml::config::include_diagram
 Include diagram configuration. More...
 
struct  clanguml::config::config
 Represents entire configuration file. More...
 

Namespaces

namespace  clanguml
 
namespace  clanguml::cli
 
namespace  clanguml::config
 Configuration file related classes.
 
namespace  clanguml::common
 
namespace  clanguml::common::model
 

Typedefs

using clanguml::config::layout_hints = std::map< std::string, std::vector< layout_hint > >
 
using clanguml::config::relationship_hints_t = std::map< std::string, relationship_hint_t >
 
using clanguml::config::type_aliases_t = std::map< std::string, std::string >
 
using clanguml::config::type_aliases_longer_first_t = std::map< std::string, std::string, type_aliases_longer_first_comparator >
 
using clanguml::config::config_ptr = std::unique_ptr< config >
 

Enumerations

enum class  clanguml::config::method_arguments { clanguml::config::full , clanguml::config::abbreviated , clanguml::config::none }
 
enum class  clanguml::config::method_type {
  clanguml::config::constructor , clanguml::config::destructor , clanguml::config::assignment , clanguml::config::operator_ ,
  clanguml::config::defaulted , clanguml::config::deleted , clanguml::config::static_
}
 
enum class  clanguml::config::callee_type {
  clanguml::config::constructor , clanguml::config::assignment , clanguml::config::operator_ , clanguml::config::defaulted ,
  clanguml::config::static_ , clanguml::config::method , clanguml::config::function , clanguml::config::function_template ,
  clanguml::config::lambda , clanguml::config::cuda_kernel , clanguml::config::cuda_device
}
 
enum class  clanguml::config::package_type_t { clanguml::config::kNamespace , clanguml::config::kDirectory , clanguml::config::kModule }
 
enum class  clanguml::config::member_order_t { clanguml::config::lexical , clanguml::config::as_is }
 
enum class  clanguml::config::comment_parser_t { clanguml::config::plain , clanguml::config::clang }
 
enum class  clanguml::config::filter_mode_t { clanguml::config::basic , clanguml::config::advanced }
 
enum class  clanguml::config::context_direction_t { clanguml::config::inward , clanguml::config::outward , clanguml::config::any }
 
enum class  clanguml::config::hint_t {
  clanguml::config::up , clanguml::config::down , clanguml::config::left , clanguml::config::right ,
  clanguml::config::together , clanguml::config::row , clanguml::config::column
}
 
enum class  clanguml::config::location_t { clanguml::config::marker , clanguml::config::fileline , clanguml::config::function }
 

Functions

std::string clanguml::config::to_string (const method_arguments ma)
 
std::string clanguml::config::to_string (method_type mt)
 
std::string clanguml::config::to_string (callee_type mt)
 
std::string clanguml::config::to_string (package_type_t pt)
 
std::string clanguml::config::to_string (member_order_t mo)
 
std::string clanguml::config::to_string (const comment_parser_t cp)
 
std::string clanguml::config::to_string (filter_mode_t fm)
 
std::string clanguml::config::to_string (context_direction_t cd)
 
std::string clanguml::config::to_string (const hint_t t)
 
std::string clanguml::config::to_string (location_t cp)
 
config clanguml::config::load (const std::string &config_file, bool inherit=true, std::optional< bool > paths_relative_to_pwd={}, std::optional< bool > no_metadata={}, bool validate=true)
 Load and parse .clang-uml configuration file.
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const config &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const inheritable_diagram_options &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const filter &f)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const plantuml &p)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const method_arguments &ma)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const generate_links_config &glc)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const git_config &gc)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const relationship_hint_t &rh)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const comment_parser_t &cp)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const hint_t &h)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const class_diagram &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const sequence_diagram &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const include_diagram &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const package_diagram &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const layout_hint &c)
 
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const source_location &sc)
 
template<typename T >
YAML::Emitter & clanguml::config::operator<< (YAML::Emitter &out, const option< T > &o)
 
YAML::Emitter & clanguml::common::model::operator<< (YAML::Emitter &out, const namespace_ &n)
 
YAML::Emitter & clanguml::common::model::operator<< (YAML::Emitter &out, const relationship_t &r)
 
YAML::Emitter & clanguml::common::model::operator<< (YAML::Emitter &out, const access_t &r)
 
YAML::Emitter & clanguml::common::model::operator<< (YAML::Emitter &out, const diagram_t &d)