diff --git a/docs/test_cases.md b/docs/test_cases.md index 4229cddc1..91f72426c 100644 --- a/docs/test_cases.md +++ b/docs/test_cases.md @@ -73,6 +73,9 @@ * [t00066](./test_cases/t00066.md) - Class fields and methods without grouping and sorting * [t00067](./test_cases/t00067.md) - Class method type filter test case * [t00068](./test_cases/t00068.md) - Context filter radius parameter test case + * [t00069](./test_cases/t00069.md) - Coroutine methods in class diagrams + * [t00070](./test_cases/t00070.md) - Diagram filter based on C++20 modules + * [t00071](./test_cases/t00071.md) - Class diagram with C++20 modules generated as packages ## Sequence diagrams * [t20001](./test_cases/t20001.md) - Basic sequence diagram test case * [t20002](./test_cases/t20002.md) - Free function sequence diagram test case @@ -124,6 +127,8 @@ * [t30009](./test_cases/t30009.md) - Together layout hint test * [t30010](./test_cases/t30010.md) - Package diagram with packages from directory structure * [t30011](./test_cases/t30011.md) - Package diagram with packages from directory structure for plain C + * [t30012](./test_cases/t30012.md) - C++20 modules package diagram test + * [t30013](./test_cases/t30013.md) - C++20 modules package dependencies diagram test ## Include diagrams * [t40001](./test_cases/t40001.md) - Basic include graph diagram test case * [t40002](./test_cases/t40002.md) - Cyclic include graph diagram test case diff --git a/docs/test_cases/t00002.md b/docs/test_cases/t00002.md index f7be2f219..5c0f210d2 100644 --- a/docs/test_cases/t00002.md +++ b/docs/test_cases/t00002.md @@ -163,6 +163,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -196,6 +197,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -262,6 +264,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -337,6 +340,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -435,6 +439,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -468,6 +473,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -558,6 +564,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -591,6 +598,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00002_class.svg b/docs/test_cases/t00002_class.svg index 9457a4892..82f998048 100644 --- a/docs/test_cases/t00002_class.svg +++ b/docs/test_cases/t00002_class.svg @@ -1,157 +1,183 @@ - + - - - - - - - Basic class diagram example - - - - - A - - - - - - - - foo_a() = 0 : void - - - - - - - foo_c() = 0 : void - - - - - - - B - - - - - - - - foo_a() : void - - - - - - - C - - - - - - - - foo_c() : void - - - - - - - D - - - - - - - - foo_a() : void - - - - - - - foo_c() : void - - - - - - - - as : std::vector<A *> - - - - - - E - - - - - - - - foo_a() : void - - - - - - - foo_c() : void - - - - - - - - as : std::vector<A *> - - - - This is class A - - - This is class B - - - - This is class D - which is a little like B - and a little like C - - - - - - - - - as - - - - - - - - as - - - - + Basic class diagram example + + + + + + A + + + + + + + foo_a() = 0 : void + + + + + + + foo_c() = 0 : void + + + + + + + + + + B + + + + + + + foo_a() : void + + + + + + + + + + C + + + + + + + foo_c() : void + + + + + + + + + + D + + + + + + + foo_a() : void + + + + + + + foo_c() : void + + + + + + + + as : std::vector<A *> + + + + + + + + + E + + + + + + + foo_a() : void + + + + + + + foo_c() : void + + + + + + + + as : std::vector<A *> + + + + + + + This is class A + + + + + This is class B + + + + +     + This is class D + which is a little like B + and a little like C +   + + + + + + + + + + + + + + as + + + + + + + + + + + + + + as + + + + + + + + + diff --git a/docs/test_cases/t00002_class_mermaid.svg b/docs/test_cases/t00002_class_mermaid.svg index e9eacc3d4..3e3011b2e 100644 --- a/docs/test_cases/t00002_class_mermaid.svg +++ b/docs/test_cases/t00002_class_mermaid.svg @@ -1,67 +1,71 @@ - - Basic class diagram example - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -111,7 +115,7 @@ - + - +
- +foo_a() : void + +foo_a() : : void
- +
- +foo_c() : void + +foo_c() : : void
- + @@ -301,20 +305,20 @@ -as : std::vector<A *> - +
- +foo_a() : void + +foo_a() : : void
- +
- +foo_c() : void + +foo_c() : : void
- + @@ -325,7 +329,7 @@ - + @@ -350,5 +354,5 @@ - Basic class diagram example + Basic class diagram example diff --git a/docs/test_cases/t00003.md b/docs/test_cases/t00003.md index 1c86ff733..1e0bb5e9a 100644 --- a/docs/test_cases/t00003.md +++ b/docs/test_cases/t00003.md @@ -240,6 +240,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -265,6 +266,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -295,6 +297,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -325,6 +328,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": true, "is_move_assignment": false, @@ -355,6 +359,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -380,6 +385,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -405,6 +411,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -430,6 +437,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -455,6 +463,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -480,6 +489,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -505,6 +515,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": true, @@ -535,6 +546,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": true, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -565,6 +577,7 @@ int A::static_int = 1; "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -590,6 +603,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -620,6 +634,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -654,6 +669,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -685,6 +701,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -720,6 +737,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -750,6 +768,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -775,6 +794,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -800,6 +820,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00003_class.svg b/docs/test_cases/t00003_class.svg index 9c902a683..7b1549e8b 100644 --- a/docs/test_cases/t00003_class.svg +++ b/docs/test_cases/t00003_class.svg @@ -1,236 +1,232 @@ - + - - - - - - - - - - - A - - - - - - - - A() = default : void - - - - - - - A(int i) : void - - - - - - - A(A &&) = default : void - - - - - - - A(const A &) = deleted : void - - - A<T>(T t) : void - - - - - - ~A() = default : void - - - - - - - - operator=(A && other) noexcept : A & - - - - - - - operator=(A & other) noexcept : A & - - - - - - - - operator++() : A & - - - - - - - - auto_method() : int - - - - - - - basic_method() : void - - - - - - - const_method() const : void - - - - - - - create_from_int(int i) : A - - - - - - - default_int(int i = 12) : int - - - - - - - default_string(int i, std::string s = "abc") : std::string - - - - - - - double_int(const int i) : int - - - - - - - private_method() : void - - - - - - - protected_method() : void - - - - - - - size() constexpr const : std::size_t - - - - - - - static_method() : int - - - - - - - sum(const double a, const double b) : int - - - - - - - - a_ : int - - - - - - - auto_member : const unsigned long - - - - - - - b_ : int - - - - - - - c_ : int - - - - - - - compare : std::function<bool (const int)> - - - - - - - private_member : int - - - - - - - protected_member : int - - - - - - - public_member : int - - - - - - - static_const_int : const int - - - - - - - static_int : int + + + + + + A + + + + + + + A() = default : void + + + + + + + A(int i) : void + + + + + + + A(A &&) = default : void + + + + + + + A(const A &) = deleted : void + + + A<T>(T t) : void + + + + + + ~A() = default : void + + + + + + + + operator=(A && other) noexcept : A & + + + + + + + operator=(A & other) noexcept : A & + + + + + + + + operator++() : A & + + + + + + + + auto_method() : int + + + + + + + basic_method() : void + + + + + + + const_method() const : void + + + + + + + create_from_int(int i) : A + + + + + + + default_int(int i = 12) : int + + + + + + + default_string(int i, std::string s = "abc") : std::string + + + + + + + double_int(const int i) : int + + + + + + + private_method() : void + + + + + + + protected_method() : void + + + + + + + size() constexpr const : std::size_t + + + + + + + static_method() : int + + + + + + + sum(const double a, const double b) : int + + + + + + + + a_ : int + + + + + + + auto_member : const unsigned long + + + + + + + b_ : int + + + + + + + c_ : int + + + + + + + compare : std::function<bool (const int)> + + + + + + + private_member : int + + + + + + + protected_member : int + + + + + + + public_member : int + + + + + + + static_const_int : const int + + + + + + + static_int : int + + diff --git a/docs/test_cases/t00003_class_mermaid.svg b/docs/test_cases/t00003_class_mermaid.svg index f2e3c3cbb..b18a9852b 100644 --- a/docs/test_cases/t00003_class_mermaid.svg +++ b/docs/test_cases/t00003_class_mermaid.svg @@ -1,50 +1,55 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,11 +57,11 @@ - + - - - + + +
@@ -68,159 +73,159 @@ A
- +
-a_ : int
- +
+auto_member : const unsigned long
- +
-b_ : int
- +
-c_ : int
- +
#compare : std::function<bool (const int)>
- +
-private_member : int
- +
#protected_member : int
- +
+public_member : int
- +
+static_const_int : const int
- +
+static_int : int
- +
- +A() : [default] void + +A() : : [default] void
- +
- +A(int i) : void + +A(int i) : : void
- +
- +A(A &&) : [default] void + +A(A &&) : : [default] void
- +
- +A(const A &) : void + +A(const A &) : : void
- +
- +A(T t) : void + +A(T t) : : void
- +
- +~A() : [default] void + +~A() : : [default] void
- +
- +operator=(A && other) : A & + +operator=(A && other) : : A &
- +
- +operator=(A & other) : A & + +operator=(A & other) : : A &
- +
- +operator++() : A & + +operator++() : : A &
- +
- +auto_method() : int + +auto_method() : : int
- +
- +basic_method() : void + +basic_method() : : void
- +
- +const_method() : [const] void + +const_method() : : [const] void
- +
- +create_from_int(int i) : A + +create_from_int(int i) : : A
- +
- +default_int(int i = 12) : int + +default_int(int i = 12) : : int
- +
- +default_string(int i, std::string s = "abc") : std::string + +default_string(int i, std::string s = "abc") : : std::string
- +
- +double_int(const int i) : int + +double_int(const int i) : : int
- +
- -private_method() : void + -private_method() : : void
- +
- #protected_method() : void + #protected_method() : : void
- +
- +size() : [const,constexpr] std::size_t + +size() : : [const,constexpr] std::size_t
- +
- +static_method() : int + +static_method() : : int
- +
- +sum(const double a, const double b) : int + +sum(const double a, const double b) : : int
diff --git a/docs/test_cases/t00004.md b/docs/test_cases/t00004.md index 4b7b036b8..85d2fe66a 100644 --- a/docs/test_cases/t00004.md +++ b/docs/test_cases/t00004.md @@ -137,6 +137,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -162,6 +163,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00004_class.svg b/docs/test_cases/t00004_class.svg index f81433536..99f141d55 100644 --- a/docs/test_cases/t00004_class.svg +++ b/docs/test_cases/t00004_class.svg @@ -1,245 +1,297 @@ - + - - - - - - - - - - - B - - - - - - - - B::AA - - AA_1 - AA_2 - AA_3 - - - - - - - A - - - - - - - - foo() const : void - - - - - - - foo2() const : void - - - - - - - A::AA - - - - - - - - A::AA::Lights - - Green - Yellow - Red - - - - - - - A::AA::AAA - - - - - - - - C::B - - int - - - - - - - - C - - T - - - - - - - - - b_int : B<int> - - - - - - - t : T - - - - - - C::AA - - - - - - - - C::AA::AAA - - - - - - - - C::AA::CCC - - CCC_1 - CCC_2 - - - - - - - C::B - - V - - - - - - - - - b : V - - - - - - C::CC - - CC_1 - CC_2 - - - - - - - detail::D - - - - - - - - detail::D::AA - - AA_1 - AA_2 - AA_3 - - - - - - - detail::D::DD - - - - - - - - - - - - - - - - - - - - - - - - - b_int - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + B + + + + + + + + + + B::AA + + AA_1 + AA_2 + AA_3 + + + + + + + + + A + + + + + + + foo() const : void + + + + + + + foo2() const : void + + + + + + + + + + A::AA + + + + + + + + + + A::AA::Lights + + Green + Yellow + Red + + + + + + + + + A::AA::AAA + + + + + + + + + + C::B + + int + + + + + + + + + + C + + T + + + + + + + + b_int : B<int> + + + + + + + t : T + + + + + + + + + C::AA + + + + + + + + + + C::AA::AAA + + + + + + + + + + C::AA::CCC + + CCC_1 + CCC_2 + + + + + + + + + C::B + + V + + + + + + + + b : V + + + + + + + + + C::CC + + CC_1 + CC_2 + + + + + + + + + detail::D + + + + + + + + + + detail::D::AA + + AA_1 + AA_2 + AA_3 + + + + + + + + + detail::D::DD + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + b_int + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00004_class_mermaid.svg b/docs/test_cases/t00004_class_mermaid.svg index 51589e805..1b4ae22db 100644 --- a/docs/test_cases/t00004_class_mermaid.svg +++ b/docs/test_cases/t00004_class_mermaid.svg @@ -1,68 +1,73 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -120,7 +125,7 @@
- +
@@ -210,7 +215,7 @@ - + @@ -229,7 +234,7 @@ - + @@ -263,11 +268,11 @@ - + - - - + + +
@@ -279,20 +284,20 @@ A
- +
- +foo() : [const] void + +foo() : : [const] void
- +
- +foo2() : [const] void + +foo2() : : [const] void
- + @@ -311,7 +316,7 @@ - + @@ -345,7 +350,7 @@ - + @@ -364,7 +369,7 @@ - + @@ -383,7 +388,7 @@ - + @@ -412,7 +417,7 @@ - + @@ -431,7 +436,7 @@ - + @@ -450,7 +455,7 @@ - + @@ -479,7 +484,7 @@ - + @@ -503,7 +508,7 @@ - + @@ -532,7 +537,7 @@ - + @@ -551,7 +556,7 @@ - + @@ -585,7 +590,7 @@ - + diff --git a/docs/test_cases/t00005_class.svg b/docs/test_cases/t00005_class.svg index dff1eb8f3..1b66ecacf 100644 --- a/docs/test_cases/t00005_class.svg +++ b/docs/test_cases/t00005_class.svg @@ -1,247 +1,287 @@ - + - - - - - - - - - - - A - - - - - - - - B - - - - - - - - C - - - - - - - - D - - - - - - - - E - - - - - - - - F - - - - - - - - G - - - - - - - - H - - - - - - - - I - - - - - - - - J - - - - - - - - K - - - - - - - - R - - - - - - - - - a : A - - - - - - - b : B * - - - - - - - c : C & - - - - - - - d : const D * - - - - - - - e : const E & - - - - - - - f : F && - - - - - - - g : G ** - - - - - - - h : H *** - - - - - - - i : I *& - - - - - - - j : volatile J * - - - - - - - k : K * - - - - - - - some_int : int - - - - - - - some_int_pointer : int * - - - - - - - some_int_pointer_pointer : int ** - - - - - - - some_int_reference : int & - - - - +a - - - +b - - - +c - - - +d - - - +e - - - +f - - - +g - - - +h - - - +i - - - +j - - - +k + + + + + + A + + + + + + + + + + B + + + + + + + + + + C + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + F + + + + + + + + + + G + + + + + + + + + + H + + + + + + + + + + I + + + + + + + + + + J + + + + + + + + + + K + + + + + + + + + + R + + + + + + + + a : A + + + + + + + b : B * + + + + + + + c : C & + + + + + + + d : const D * + + + + + + + e : const E & + + + + + + + f : F && + + + + + + + g : G ** + + + + + + + h : H *** + + + + + + + i : I *& + + + + + + + j : volatile J * + + + + + + + k : K * + + + + + + + some_int : int + + + + + + + some_int_pointer : int * + + + + + + + some_int_pointer_pointer : int ** + + + + + + + some_int_reference : int & + + + + + + + +a + + + + + +b + + + + + +c + + + + + +d + + + + + +e + + + + + +f + + + + + +g + + + + + +h + + + + + +i + + + + + +j + + + + + +k + diff --git a/docs/test_cases/t00005_class_mermaid.svg b/docs/test_cases/t00005_class_mermaid.svg index 4ccee16d8..a60f3583b 100644 --- a/docs/test_cases/t00005_class_mermaid.svg +++ b/docs/test_cases/t00005_class_mermaid.svg @@ -1,66 +1,71 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -186,7 +191,7 @@ - + @@ -205,7 +210,7 @@ - + @@ -224,7 +229,7 @@ - + @@ -243,7 +248,7 @@ - + @@ -262,7 +267,7 @@ - + @@ -281,7 +286,7 @@ - + @@ -300,7 +305,7 @@ - + @@ -319,7 +324,7 @@ - + @@ -338,7 +343,7 @@ - + @@ -357,7 +362,7 @@ - + @@ -376,7 +381,7 @@ - + @@ -395,7 +400,7 @@ - + @@ -418,7 +423,7 @@
- +b : B + +b : B
@@ -428,7 +433,7 @@
- +d : const D + +d : const D
@@ -458,12 +463,12 @@
- +j : volatile J + +j : volatile J
- +k : K + +k : K
@@ -473,7 +478,7 @@
- +some_int_pointer : int + +some_int_pointer : int
diff --git a/docs/test_cases/t00006_class.svg b/docs/test_cases/t00006_class.svg index 554d0cf4f..6c7ff7783 100644 --- a/docs/test_cases/t00006_class.svg +++ b/docs/test_cases/t00006_class.svg @@ -1,324 +1,392 @@ - + - - - - - - - - - - - A - - - - - - - - B - - - - - - - - C - - - - - - - - D - - - - - - - - E - - - - - - - - F - - - - - - - - G - - - - - - - - H - - - - - - - - I - - - - - - - - J - - - - - - - - K - - - - - - - - L - - - - - - - - M - - - - - - - - N - - - - - - - - NN - - - - - - - - NNN - - - - - - - - custom_container - - T - - - - - - - - - data : std::vector<T> - - - - - - custom_container - - E - - - - - - - - R - - - - - - - - - a : std::vector<A> - - - - - - - b : std::vector<B *> - - - - - - - c : std::map<int,C> - - - - - - - d : std::map<int,D *> - - - - - - - e : custom_container<E> - - - - - - - f : std::vector<std::vector<F>> - - - - - - - g : std::map<int,std::vector<G *>> - - - - - - - h : std::array<H,10> - - - - - - - i : std::array<I *,5> - - - - - - - j : J[10] - - - - - - - k : K *[20] - - - - - - - lm : std::vector<std::pair<L,M>> - - - - - - - ns : std::tuple<N,NN,NNN> - - - - - - - - +a - - - +b - - - +c - - - +d - - - +e - - - +f - - - +g - - - +h - - - +i - - - +j - - - +k - - - - lm - - - - lm - - - - ns - - - - ns - - - - ns + + + + + + A + + + + + + + + + + B + + + + + + + + + + C + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + F + + + + + + + + + + G + + + + + + + + + + H + + + + + + + + + + I + + + + + + + + + + J + + + + + + + + + + K + + + + + + + + + + L + + + + + + + + + + M + + + + + + + + + + N + + + + + + + + + + NN + + + + + + + + + + NNN + + + + + + + + + + custom_container + + T + + + + + + + + data : std::vector<T> + + + + + + + + + custom_container + + E + + + + + + + + + + R + + + + + + + + a : std::vector<A> + + + + + + + b : std::vector<B *> + + + + + + + c : std::map<int,C> + + + + + + + d : std::map<int,D *> + + + + + + + e : custom_container<E> + + + + + + + f : std::vector<std::vector<F>> + + + + + + + g : std::map<int,std::vector<G *>> + + + + + + + h : std::array<H,10> + + + + + + + i : std::array<I *,5> + + + + + + + j : J[10] + + + + + + + k : K *[20] + + + + + + + lm : std::vector<std::pair<L,M>> + + + + + + + ns : std::tuple<N,NN,NNN> + + + + + + + + + + + + + + + +a + + + + + +b + + + + + +c + + + + + +d + + + + + +e + + + + + +f + + + + + +g + + + + + +h + + + + + +i + + + + + +j + + + + + +k + + + + + + lm + + + + + + lm + + + + + + ns + + + + + + ns + + + + + + ns + diff --git a/docs/test_cases/t00006_class_mermaid.svg b/docs/test_cases/t00006_class_mermaid.svg index 6476f4a63..96913509e 100644 --- a/docs/test_cases/t00006_class_mermaid.svg +++ b/docs/test_cases/t00006_class_mermaid.svg @@ -1,73 +1,78 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -270,7 +275,7 @@ - + @@ -289,7 +294,7 @@
- + @@ -308,7 +313,7 @@ - + @@ -327,7 +332,7 @@ - + @@ -346,7 +351,7 @@ - + @@ -365,7 +370,7 @@ - + @@ -384,7 +389,7 @@ - + @@ -403,7 +408,7 @@ - + @@ -422,7 +427,7 @@ - + @@ -441,7 +446,7 @@ - + @@ -460,7 +465,7 @@ - + @@ -479,7 +484,7 @@ - + @@ -498,7 +503,7 @@ - + @@ -517,7 +522,7 @@ - + @@ -536,7 +541,7 @@ - + @@ -555,7 +560,7 @@ - + @@ -574,7 +579,7 @@ - + @@ -598,7 +603,7 @@ - + @@ -617,7 +622,7 @@ - + diff --git a/docs/test_cases/t00007_class.svg b/docs/test_cases/t00007_class.svg index fd6b90578..e6ac5fe8d 100644 --- a/docs/test_cases/t00007_class.svg +++ b/docs/test_cases/t00007_class.svg @@ -1,75 +1,83 @@ - + - - - - - - - - - - - A - - + + + + + + A + + + - - - - - B - - + + + + + + B + + + - - - - - C - - + + + + + + C + + + - - - - - R - - + + + + + + R + + + + + + + + a : std::unique_ptr<A> + + + + + + + b : std::shared_ptr<B> + + + + + + + c : std::weak_ptr<C> + + - - - - - - a : std::unique_ptr<A> - - - - - - - b : std::shared_ptr<B> - - - - - - - c : std::weak_ptr<C> - - - - +a - - - +b - - - +c + + + + +a + + + + + +b + + + + + +c + diff --git a/docs/test_cases/t00007_class_mermaid.svg b/docs/test_cases/t00007_class_mermaid.svg index 5a68b373a..9fd57fec3 100644 --- a/docs/test_cases/t00007_class_mermaid.svg +++ b/docs/test_cases/t00007_class_mermaid.svg @@ -1,58 +1,63 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - + + + @@ -90,7 +95,7 @@ - + @@ -109,7 +114,7 @@ - + @@ -128,7 +133,7 @@ - + @@ -147,7 +152,7 @@ - + diff --git a/docs/test_cases/t00008.md b/docs/test_cases/t00008.md index 9ee1aa146..b74fa3346 100644 --- a/docs/test_cases/t00008.md +++ b/docs/test_cases/t00008.md @@ -357,6 +357,7 @@ template <> struct E::nested_template { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -387,6 +388,7 @@ template <> struct E::nested_template { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -456,6 +458,7 @@ template <> struct E::nested_template { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -516,6 +519,7 @@ template <> struct E::nested_template { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00008_class.svg b/docs/test_cases/t00008_class.svg index b42615685..b90160bf2 100644 --- a/docs/test_cases/t00008_class.svg +++ b/docs/test_cases/t00008_class.svg @@ -1,192 +1,212 @@ - + - - - - - - - - - - - A - - T,P=T,CMP=nullptr,int N=3 - - - - - - - - - comparator : CMP - - - - - - - ints : std::array<int,N> - - - - - - - pointer : T * - - - - - - - reference : T & - - - - - - - value : T - - - - - - - values : std::vector<P> - - - - - - Vector - - T - - - - - - - - - values : std::vector<T> - - - - - - B - - T,C<> - - - - - - - - - template_template : C<T> - - - - - - B - - int,Vector - - - - - - - - D - - - D<Items...>(std::tuple<Items...> *) : void - - - - - - - - add(int i) : void - - - - - - - - ints : B<int,Vector> - - - - - - E - - - - - - - - E::nested_template - - ET - - - - - - - - get(ET * d) : DT * - - - - - - - E::nested_template - - char - - - - - - - - getDecl(char * c) : DeclType * - - - - - - - - ints - - - - - - - - - - + + + + + + A + + T,P=T,CMP=nullptr,int N=3 + + + + + + + + comparator : CMP + + + + + + + ints : std::array<int,N> + + + + + + + pointer : T * + + + + + + + reference : T & + + + + + + + value : T + + + + + + + values : std::vector<P> + + + + + + + + + Vector + + T + + + + + + + + values : std::vector<T> + + + + + + + + + B + + T,C<> + + + + + + + + template_template : C<T> + + + + + + + + + B + + int,Vector + + + + + + + + + + D + + + D<Items...>(std::tuple<Items...> *) : void + + + + + + + add(int i) : void + + + + + + + + ints : B<int,Vector> + + + + + + + + + E + + + + + + + + + + E::nested_template + + ET + + + + + + + get(ET * d) : DT * + + + + + + + + + + E::nested_template + + char + + + + + + + getDecl(char * c) : DeclType * + + + + + + + + + + + + + ints + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00008_class_mermaid.svg b/docs/test_cases/t00008_class_mermaid.svg index 9d2c95496..0501de58e 100644 --- a/docs/test_cases/t00008_class_mermaid.svg +++ b/docs/test_cases/t00008_class_mermaid.svg @@ -1,60 +1,65 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - + + + + + @@ -68,7 +73,7 @@ - + - +
- +get(ET * d) : DT * + +get(ET * d) : : DT *
- + - - - + + +
@@ -323,9 +328,9 @@ E::nested_template<char>
- +
- +getDecl(char * c) : DeclType * + +getDecl(char * c) : : DeclType *
diff --git a/docs/test_cases/t00009_class.svg b/docs/test_cases/t00009_class.svg index 18770a6ea..f2984a87e 100644 --- a/docs/test_cases/t00009_class.svg +++ b/docs/test_cases/t00009_class.svg @@ -1,107 +1,123 @@ - + - - - - - - - - - - - A - - T - - + + + + + + A + + T + + + + + + + + value : T + + - - - + + + + + + A + + int + + + - - value : T + + + + + + A + + std::string + + + - - - - - A - - int - - + + + + + + A + + std::vector<std::string> + + + - - - - - A - - std::string - - + + + + + + B + + + + + + + + aint : A<int> + + + + + + + astring : A<std::string> * + + + + + + + avector : A<std::vector<std::string>> & + + - - - - - A - - std::vector<std::string> - - - - - - - - B - - - - - - - - - aint : A<int> - - - - - - - astring : A<std::string> * - - - - - - - avector : A<std::vector<std::string>> & - - - - - - - - - - - aint - - - - astring - - - - avector + + + + + + + + + + + + + + + + + aint + + + + + + astring + + + + + + avector + diff --git a/docs/test_cases/t00009_class_mermaid.svg b/docs/test_cases/t00009_class_mermaid.svg index ddebcaf17..173ad8e74 100644 --- a/docs/test_cases/t00009_class_mermaid.svg +++ b/docs/test_cases/t00009_class_mermaid.svg @@ -1,61 +1,66 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - + + + + + + @@ -126,7 +131,7 @@ - + @@ -150,7 +155,7 @@
- + @@ -169,7 +174,7 @@ - + @@ -188,7 +193,7 @@ - + @@ -207,7 +212,7 @@ - + @@ -230,7 +235,7 @@
- +astring : A<std::string> + +astring : A<std::string>
diff --git a/docs/test_cases/t00010_class.svg b/docs/test_cases/t00010_class.svg index 0b253b806..284381aab 100644 --- a/docs/test_cases/t00010_class.svg +++ b/docs/test_cases/t00010_class.svg @@ -1,101 +1,113 @@ - + - - - - - - - - - - - A - - T,P - - + + + + + + A + + T,P + + + + + + + + first : T + + + + + + + second : P + + - - - + + + + + + A + + T,std::string + + + - - first : T + + + + + + B + + T + + + + + + + + astring : A<T,std::string> + + - - - + + + + + + B + + int + + + - - second : P + + + + + + C + + + + + + + + aintstring : B<int> + + - - - - - A - - T,std::string - - - - - - - - B - - T - - - - - - - - - astring : A<T,std::string> - - - - - - B - - int - - - - - - - - C - - - - - - - - - aintstring : B<int> - - - - - - - astring - - - - - - aintstring + + + + + + + + + astring + + + + + + + + + + aintstring + diff --git a/docs/test_cases/t00010_class_mermaid.svg b/docs/test_cases/t00010_class_mermaid.svg index c70fed3e0..4666ee8cd 100644 --- a/docs/test_cases/t00010_class_mermaid.svg +++ b/docs/test_cases/t00010_class_mermaid.svg @@ -1,59 +1,64 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -102,7 +107,7 @@ - + @@ -131,7 +136,7 @@
- + @@ -150,7 +155,7 @@ - + @@ -174,7 +179,7 @@ - + @@ -193,7 +198,7 @@ - + diff --git a/docs/test_cases/t00011.md b/docs/test_cases/t00011.md index 8b361e802..4009358b9 100644 --- a/docs/test_cases/t00011.md +++ b/docs/test_cases/t00011.md @@ -118,6 +118,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -179,6 +180,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00011_class.svg b/docs/test_cases/t00011_class.svg index e2dc0aca9..dd7c82f85 100644 --- a/docs/test_cases/t00011_class.svg +++ b/docs/test_cases/t00011_class.svg @@ -1,75 +1,79 @@ - + - - - - - - - - - - - D - - T - - + + + + + + D + + T + + + + + + + + value : T + + - - - + + + + + + A + + + + + + + foo() : void + + + - - value : T + + + + + + B + + + + + + + foo() : void + + + + + + + + m_a : A * + + - - - - - A - - - - - - - - foo() : void - - - - - - - B - - - - - - - - foo() : void - - - - - - - - m_a : A * - - - - - «friend» - - - - m_a + + + + + «friend» + + + + + + m_a + diff --git a/docs/test_cases/t00011_class_mermaid.svg b/docs/test_cases/t00011_class_mermaid.svg index 615a4d81b..41788d4a2 100644 --- a/docs/test_cases/t00011_class_mermaid.svg +++ b/docs/test_cases/t00011_class_mermaid.svg @@ -1,60 +1,65 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - + + - +
@@ -65,7 +70,7 @@ - +
@@ -78,7 +83,7 @@ - + @@ -102,11 +107,11 @@ - + - - - + + +
@@ -118,19 +123,19 @@ A
- +
- +foo() : void + +foo() : : void
- + - - - + + +
@@ -142,14 +147,14 @@ B
- +
- +m_a : A + +m_a : A
- +
- +foo() : void + +foo() : : void
diff --git a/docs/test_cases/t00012_class.svg b/docs/test_cases/t00012_class.svg index dac2df084..39701bd73 100644 --- a/docs/test_cases/t00012_class.svg +++ b/docs/test_cases/t00012_class.svg @@ -1,197 +1,231 @@ - + - - - - - - - - - - - A - - T,Ts... - - - - - - - - - value : T - - - - - - - values : std::variant<Ts...> - - - - - - B - - int... Is - - - - - - - - - ints : std::array<int,sizeof...(Is)> - - - - - - C - - T,int... Is - - - - - - - - - ints : std::array<T,sizeof...(Is)> - - - - - - A - - int,std::string,float - - - - - - - - A - - int,std::string,bool - - - - - - - - B - - 3,2,1 - - - - - - - - B - - 1,1,1,1 - - - - - - - - C - - std::map<int,std::vector<std::vector<std::vector<std::string>>>>,3,3,3 - - - - - - - - R - - - - - - - - - a1 : A<int,std::string,float> - - - - - - - a2 : A<int,std::string,bool> - - - - - - - b1 : B<3,2,1> - - - - - - - b2 : B<1,1,1,1> - - - - - - - c1 : C<std::map<int,std::vector<std::vector<std::vector<std::string>>>>,3,3,3> - - - - Long template annotation - - - - - - - - - - - - - - a1 - - - - a2 - - - - b1 - - - - b2 - - - - c1 + + + + + + A + + T,Ts... + + + + + + + + value : T + + + + + + + values : std::variant<Ts...> + + + + + + + + + B + + int... Is + + + + + + + + ints : std::array<int,sizeof...(Is)> + + + + + + + + + C + + T,int... Is + + + + + + + + ints : std::array<T,sizeof...(Is)> + + + + + + + + + A + + int,std::string,float + + + + + + + + + + A + + int,std::string,bool + + + + + + + + + + B + + 3,2,1 + + + + + + + + + + B + + 1,1,1,1 + + + + + + + + + + C + + std::map<int,std::vector<std::vector<std::vector<std::string>>>>,3,3,3 + + + + + + + + + + R + + + + + + + + a1 : A<int,std::string,float> + + + + + + + a2 : A<int,std::string,bool> + + + + + + + b1 : B<3,2,1> + + + + + + + b2 : B<1,1,1,1> + + + + + + + c1 : C<std::map<int,std::vector<std::vector<std::vector<std::string>>>>,3,3,3> + + + + + + + Long template annotation + + + + + + + + + + + + + + + + + + + + + + + + + + a1 + + + + + + a2 + + + + + + b1 + + + + + + b2 + + + + + + c1 + diff --git a/docs/test_cases/t00012_class_mermaid.svg b/docs/test_cases/t00012_class_mermaid.svg index 76d79a4a2..e3d6ad8e5 100644 --- a/docs/test_cases/t00012_class_mermaid.svg +++ b/docs/test_cases/t00012_class_mermaid.svg @@ -1,65 +1,70 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -174,7 +179,7 @@ - + @@ -203,7 +208,7 @@
- + @@ -227,7 +232,7 @@ - + @@ -251,7 +256,7 @@ - + @@ -270,7 +275,7 @@ - + @@ -289,7 +294,7 @@ - + @@ -308,7 +313,7 @@ - + @@ -327,7 +332,7 @@ - + @@ -346,7 +351,7 @@ - + diff --git a/docs/test_cases/t00013.md b/docs/test_cases/t00013.md index 02ca593a6..e17f7ef04 100644 --- a/docs/test_cases/t00013.md +++ b/docs/test_cases/t00013.md @@ -300,6 +300,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -579,6 +580,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -609,6 +611,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -639,6 +642,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -669,6 +673,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -699,6 +704,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -729,6 +735,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -759,6 +766,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -789,6 +797,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -819,6 +828,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -849,6 +859,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -873,6 +884,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00013_class.svg b/docs/test_cases/t00013_class.svg index e9da2fca7..a7740d28a 100644 --- a/docs/test_cases/t00013_class.svg +++ b/docs/test_cases/t00013_class.svg @@ -1,301 +1,349 @@ - + - - - - - - - - - - - ABCD::F - - T - - - - - - - - - f : T - - - - - - ABCD::F - - int - - - - - - - - A - - - - - - - - - a : int - - - - - - B - - - - - - - - - b : int - - - - - - C - - - - - - - - - c : int - - - - - - D - - - - - - - - print(R * r) : void - - - - - - - - d : int - - - - - - E - - T - - - - - - - - - e : T - - - - - - G - - T,Args... - - - - - - - - - args : std::tuple<Args...> - - - - - - - g : T - - - - - - E - - int - - - - - - - - G - - int,float,std::string - - - - - - - - E - - std::string - - - - - - - - R - - - - - - - - get_a(A * a) : int - - - - - - - get_b(B & b) : int - - - - - - - get_c(C c) : int - - - - - - - get_const_b(const B & b) : int - - - - - - - get_d(D && d) : int - - - - - - - get_d2(D && d) : int - - - get_e<T>(E<T> e) : T - - get_f<T>(const F<T> & f) : T - - - - - - get_int_e(const E<int> & e) : int - - - - - - - get_int_e2(E<int> & e) : int - - - - - - - get_int_f(const ABCD::F<int> & f) : int - - - - - - - - estring : E<std::string> - - - - - - - gintstring : G<int,float,std::string> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - gintstring - - - - estring + + + + + + ABCD::F + + T + + + + + + + + f : T + + + + + + + + + ABCD::F + + int + + + + + + + + + + A + + + + + + + + a : int + + + + + + + + + B + + + + + + + + b : int + + + + + + + + + C + + + + + + + + c : int + + + + + + + + + D + + + + + + + print(R * r) : void + + + + + + + + d : int + + + + + + + + + E + + T + + + + + + + + e : T + + + + + + + + + G + + T,Args... + + + + + + + + args : std::tuple<Args...> + + + + + + + g : T + + + + + + + + + E + + int + + + + + + + + + + G + + int,float,std::string + + + + + + + + + + E + + std::string + + + + + + + + + + R + + + + + + + get_a(A * a) : int + + + + + + + get_b(B & b) : int + + + + + + + get_c(C c) : int + + + + + + + get_const_b(const B & b) : int + + + + + + + get_d(D && d) : int + + + + + + + get_d2(D && d) : int + + + get_e<T>(E<T> e) : T + + get_f<T>(const F<T> & f) : T + + + + + + get_int_e(const E<int> & e) : int + + + + + + + get_int_e2(E<int> & e) : int + + + + + + + get_int_f(const ABCD::F<int> & f) : int + + + + + + + + estring : E<std::string> + + + + + + + gintstring : G<int,float,std::string> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + gintstring + + + + + + estring + diff --git a/docs/test_cases/t00013_class_mermaid.svg b/docs/test_cases/t00013_class_mermaid.svg index ad396bb66..cbd01999a 100644 --- a/docs/test_cases/t00013_class_mermaid.svg +++ b/docs/test_cases/t00013_class_mermaid.svg @@ -1,70 +1,75 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -234,7 +239,7 @@ - + @@ -258,7 +263,7 @@ - + @@ -277,7 +282,7 @@ - + @@ -301,7 +306,7 @@ - + @@ -325,7 +330,7 @@ - + @@ -349,11 +354,11 @@ - + - - - + + +
@@ -365,20 +370,20 @@ D
- +
+d : int
- +
- +print(R * r) : void + +print(R * r) : : void
- + @@ -402,7 +407,7 @@ - + @@ -431,7 +436,7 @@ - + @@ -450,7 +455,7 @@ - + @@ -469,7 +474,7 @@ - + @@ -488,11 +493,11 @@ - + - - - + + +
@@ -504,69 +509,69 @@ R
- +
-estring : E<std::string>
- +
+gintstring : G<int,float,std::string>
- +
- +get_a(A * a) : int + +get_a(A * a) : : int
- +
- +get_b(B & b) : int + +get_b(B & b) : : int
- +
- +get_c(C c) : int + +get_c(C c) : : int
- +
- +get_const_b(const B & b) : int + +get_const_b(const B & b) : : int
- +
- +get_d(D && d) : int + +get_d(D && d) : : int
- +
- +get_d2(D && d) : int + +get_d2(D && d) : : int
- +
- +get_e(E e) : T + +get_e(E e) : : T
- +
- +get_f(const F & f) : T + +get_f(const F & f) : : T
- +
- +get_int_e(const E & e) : int + +get_int_e(const E & e) : : int
- +
- +get_int_e2(E & e) : int + +get_int_e2(E & e) : : int
- +
- +get_int_f(const ABCD::F & f) : int + +get_int_f(const ABCD::F & f) : : int
diff --git a/docs/test_cases/t00014_class.svg b/docs/test_cases/t00014_class.svg index 7c9d4b366..a5a43d1d4 100644 --- a/docs/test_cases/t00014_class.svg +++ b/docs/test_cases/t00014_class.svg @@ -1,426 +1,526 @@ - + - - - - - - - - - - - A - - T,P - - - - - - - - - p : P - - - - - - - t : T - - - - - - B - - - - - - - - - value : std::string - - - - - - A - - T,std::string - - - - - - - - A - - T,std::unique_ptr<std::string> - - - - - - - - A - - long,T - - - - - - - - A - - double,T - - - - - - - - A - - long,U - - - - - - - - A - - long,bool - - - - - - - - A - - double,bool - - - - - - - - A - - long,float - - - - - - - - A - - double,float - - - - - - - - A - - bool,std::string - - - - - - - - A - - float,std::unique_ptr<std::string> - - - - - - - - A - - int,std::string - - - - - - - - A - - std::string,std::string - - - - - - - A - - char,std::string - - - - - - A - - wchar_t,std::string - - - - - - - R - - T - - - - - - - - - abool : APtr<bool> - - - - - - - aboolfloat : AAPtr<bool,float> - - - - - - - afloat : ASharedPtr<float> - - - - - - - atfloat : AAPtr<T,float> - - - - - - - bapair : PairPairBA<bool> - - - - - - - boolstring : A<bool,std::string> - - - - - - - bs : BVector - - - - - - - bs2 : BVector2 - - - - - - - bstringstring : BStringString - - - - - - - cb : SimpleCallback<ACharString> - - - - - - - floatstring : AStringPtr<float> - - - - - - - gcb : GenericCallback<AWCharString> - - - - - - - intstring : AIntString - - - - - - - stringstring : AStringString - - - - - - - vcb : VoidCallback - - - - - - - vps : VectorPtr<B> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bapair - - - - bs - - - - bs2 - - - - vps - - - - bapair - - - - abool - - - - aboolfloat - - - - aboolfloat - - - - atfloat - - - - afloat - - - - boolstring - - - - floatstring - - - - intstring - - - - stringstring - - - - bstringstring - - - - atfloat - - - - - - cb - - - - - - gcb + + + + + + A + + T,P + + + + + + + + p : P + + + + + + + t : T + + + + + + + + + B + + + + + + + + value : std::string + + + + + + + + + A + + T,std::string + + + + + + + + + + A + + T,std::unique_ptr<std::string> + + + + + + + + + + A + + long,T + + + + + + + + + + A + + double,T + + + + + + + + + + A + + long,U + + + + + + + + + + A + + long,bool + + + + + + + + + + A + + double,bool + + + + + + + + + + A + + long,float + + + + + + + + + + A + + double,float + + + + + + + + + + A + + bool,std::string + + + + + + + + + + A + + float,std::unique_ptr<std::string> + + + + + + + + + + A + + int,std::string + + + + + + + + + + A + + std::string,std::string + + + + + + + + + A + + char,std::string + + + + + + + + A + + wchar_t,std::string + + + + + + + + + R + + T + + + + + + + + abool : APtr<bool> + + + + + + + aboolfloat : AAPtr<bool,float> + + + + + + + afloat : ASharedPtr<float> + + + + + + + atfloat : AAPtr<T,float> + + + + + + + bapair : PairPairBA<bool> + + + + + + + boolstring : A<bool,std::string> + + + + + + + bs : BVector + + + + + + + bs2 : BVector2 + + + + + + + bstringstring : BStringString + + + + + + + cb : SimpleCallback<ACharString> + + + + + + + floatstring : AStringPtr<float> + + + + + + + gcb : GenericCallback<AWCharString> + + + + + + + intstring : AIntString + + + + + + + stringstring : AStringString + + + + + + + vcb : VoidCallback + + + + + + + vps : VectorPtr<B> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bapair + + + + + + bs + + + + + + bs2 + + + + + + vps + + + + + + bapair + + + + + + abool + + + + + + aboolfloat + + + + + + aboolfloat + + + + + + atfloat + + + + + + afloat + + + + + + boolstring + + + + + + floatstring + + + + + + intstring + + + + + + stringstring + + + + + + bstringstring + + + + + + atfloat + + + + + + + + + + cb + + + + + + + + + + gcb + diff --git a/docs/test_cases/t00014_class_mermaid.svg b/docs/test_cases/t00014_class_mermaid.svg index 69548c78a..251ff1e00 100644 --- a/docs/test_cases/t00014_class_mermaid.svg +++ b/docs/test_cases/t00014_class_mermaid.svg @@ -1,90 +1,95 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -474,7 +479,7 @@ - + @@ -503,7 +508,7 @@
- + @@ -527,7 +532,7 @@ - + @@ -546,7 +551,7 @@ - + @@ -565,7 +570,7 @@ - + @@ -584,7 +589,7 @@ - + @@ -603,7 +608,7 @@ - + @@ -622,7 +627,7 @@ - + @@ -641,7 +646,7 @@ - + @@ -660,7 +665,7 @@ - + @@ -679,7 +684,7 @@ - + @@ -698,7 +703,7 @@ - + @@ -717,7 +722,7 @@ - + @@ -736,7 +741,7 @@ - + @@ -755,7 +760,7 @@ - + @@ -774,7 +779,7 @@ - + @@ -793,7 +798,7 @@ - + @@ -812,7 +817,7 @@ - + diff --git a/docs/test_cases/t00015_class.svg b/docs/test_cases/t00015_class.svg index 54f7793df..e59e6d2e6 100644 --- a/docs/test_cases/t00015_class.svg +++ b/docs/test_cases/t00015_class.svg @@ -1,59 +1,69 @@ - + - - - - - - - - - - - ns1::A - - + + + + + + ns1::A + + + - - - - - ns1::ns2_v0_9_0::A - - + + + + + + ns1::ns2_v0_9_0::A + + + - - - - - ns1::Anon - - + + + + + + ns1::Anon + + + - - - - - ns3::ns1::ns2::Anon - - + + + + + + ns3::ns1::ns2::Anon + + + - - - - - ns3::B - - + + + + + + ns3::B + + + - - - - - - + + + + + + + + + + + + diff --git a/docs/test_cases/t00015_class_mermaid.svg b/docs/test_cases/t00015_class_mermaid.svg index a9900acc8..43c64766d 100644 --- a/docs/test_cases/t00015_class_mermaid.svg +++ b/docs/test_cases/t00015_class_mermaid.svg @@ -1,58 +1,63 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - + + + @@ -84,7 +89,7 @@ - + @@ -103,7 +108,7 @@ - + @@ -122,7 +127,7 @@ - + @@ -141,7 +146,7 @@ - + @@ -160,7 +165,7 @@ - + diff --git a/docs/test_cases/t00016_class.svg b/docs/test_cases/t00016_class.svg index b6ed14724..bfcdbcb50 100644 --- a/docs/test_cases/t00016_class.svg +++ b/docs/test_cases/t00016_class.svg @@ -1,95 +1,111 @@ - + - - - - - - - - - - - is_numeric - - typename - - - - value : enum + + + + + + is_numeric + + typename + + + + value : enum + - - - - - is_numeric - - float - - - - value : enum + + + + + + is_numeric + + float + + + + value : enum + - - - - - is_numeric - - char - - - - value : enum + + + + + + is_numeric + + char + + + + value : enum + - - - - - is_numeric - - unsigned int - - - - value : enum + + + + + + is_numeric + + unsigned int + + + + value : enum + - - - - - is_numeric - - int - - - - value : enum + + + + + + is_numeric + + int + + + + value : enum + - - - - - is_numeric - - bool - - - - value : enum + + + + + + is_numeric + + bool + + + + value : enum + - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00016_class_mermaid.svg b/docs/test_cases/t00016_class_mermaid.svg index 4e03e3ed3..57f3b71d4 100644 --- a/docs/test_cases/t00016_class_mermaid.svg +++ b/docs/test_cases/t00016_class_mermaid.svg @@ -1,60 +1,65 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - + + + + + @@ -114,7 +119,7 @@ - + @@ -138,7 +143,7 @@ - + @@ -162,7 +167,7 @@ - + @@ -186,7 +191,7 @@ - + @@ -210,7 +215,7 @@ - + @@ -234,7 +239,7 @@ - + diff --git a/docs/test_cases/t00017.md b/docs/test_cases/t00017.md index 85e1593ce..86149a14b 100644 --- a/docs/test_cases/t00017.md +++ b/docs/test_cases/t00017.md @@ -523,6 +523,7 @@ private: "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00017_class.svg b/docs/test_cases/t00017_class.svg index 014a08a85..ccda8a1a3 100644 --- a/docs/test_cases/t00017_class.svg +++ b/docs/test_cases/t00017_class.svg @@ -1,177 +1,217 @@ - + - - - - - - - - - - - A - - - - - - - - B - - - - - - - - C - - - - - - - - D - - - - - - - - E - - - - - - - - F - - - - - - - - G - - - - - - - - H - - - - - - - - I - - - - - - - - J - - - - - - - - K - - - - - - - - R - - - - - - - - R(int & some_int, C & cc, const E & ee, F && ff, I *& ii) : void - - - - - - - - some_int : int - - - - - - - some_int_pointer : int * - - - - - - - some_int_pointer_pointer : int ** - - - - - - - some_int_reference : int & - - - - -a - - - -b - - - -c - - - -d - - - -e - - - -f - - - -g - - - -h - - - -i - - - -j - - - -k + + + + + + A + + + + + + + + + + B + + + + + + + + + + C + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + F + + + + + + + + + + G + + + + + + + + + + H + + + + + + + + + + I + + + + + + + + + + J + + + + + + + + + + K + + + + + + + + + + R + + + + + + + R(int & some_int, C & cc, const E & ee, F && ff, I *& ii) : void + + + + + + + + some_int : int + + + + + + + some_int_pointer : int * + + + + + + + some_int_pointer_pointer : int ** + + + + + + + some_int_reference : int & + + + + + + + -a + + + + + -b + + + + + -c + + + + + -d + + + + + -e + + + + + -f + + + + + -g + + + + + -h + + + + + -i + + + + + -j + + + + + -k + diff --git a/docs/test_cases/t00017_class_mermaid.svg b/docs/test_cases/t00017_class_mermaid.svg index b7b1f113c..7743d85d9 100644 --- a/docs/test_cases/t00017_class_mermaid.svg +++ b/docs/test_cases/t00017_class_mermaid.svg @@ -1,66 +1,71 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -186,7 +191,7 @@ - + @@ -205,7 +210,7 @@ - + @@ -224,7 +229,7 @@ - + @@ -243,7 +248,7 @@ - + @@ -262,7 +267,7 @@ - + @@ -281,7 +286,7 @@ - + @@ -300,7 +305,7 @@ - + @@ -319,7 +324,7 @@ - + @@ -338,7 +343,7 @@ - + @@ -357,7 +362,7 @@ - + @@ -376,7 +381,7 @@ - + @@ -395,11 +400,11 @@ - + - - - + + +
@@ -411,29 +416,29 @@ R
- +
-some_int : int
- +
- -some_int_pointer : int + -some_int_pointer : int
- +
-some_int_pointer_pointer : int *
- +
-some_int_reference : int &
- +
- -R(int & some_int, C & cc, const E & ee, F && ff, I *& ii) : void + -R(int & some_int, C & cc, const E & ee, F && ff, I *& ii) : : void
diff --git a/docs/test_cases/t00018.md b/docs/test_cases/t00018.md index 228c03a7a..77a0b82e8 100644 --- a/docs/test_cases/t00018.md +++ b/docs/test_cases/t00018.md @@ -170,6 +170,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -200,6 +201,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -230,6 +232,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -296,6 +299,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -321,6 +325,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -346,6 +351,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -371,6 +377,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -401,6 +408,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -426,6 +434,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -456,6 +465,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": true, "is_move_assignment": false, @@ -486,6 +496,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": true, @@ -516,6 +527,7 @@ void widget::draw(const clanguml::t00018::widget &w) "is_constexpr": false, "is_constructor": false, "is_copy_assignment": true, + "is_coroutine": false, "is_defaulted": false, "is_deleted": true, "is_move_assignment": false, diff --git a/docs/test_cases/t00018_class.svg b/docs/test_cases/t00018_class.svg index d335d19c3..75a8e274f 100644 --- a/docs/test_cases/t00018_class.svg +++ b/docs/test_cases/t00018_class.svg @@ -1,136 +1,138 @@ - + - - - - - - - - - - - impl::widget - - - - - - - - widget(int n) : void - - - - - - - - draw(const widget & w) const : void - - - - - - - draw(const widget & w) : void - - - - - - - - n : int - - - - - - widget - - - - - - - - widget(int) : void - - - - - - - widget(widget &&) : void - - - - - - - widget(const widget &) = deleted : void - - - - - - - ~widget() : void - - - - - - - - operator=(widget &&) : widget & - - - - - - - operator=(const widget &) = deleted : widget & - - - - - - - - draw() const : void - - - - - - - draw() : void - - - - - - - shown() const : bool - - - - - - - - pImpl : std::unique_ptr<impl::widget> - - - - - - - pImpl + + + + + + impl::widget + + + + + + + widget(int n) : void + + + + + + + + draw(const widget & w) const : void + + + + + + + draw(const widget & w) : void + + + + + + + + n : int + + + + + + + + + widget + + + + + + + widget(int) : void + + + + + + + widget(widget &&) : void + + + + + + + widget(const widget &) = deleted : void + + + + + + + ~widget() : void + + + + + + + + operator=(widget &&) : widget & + + + + + + + operator=(const widget &) = deleted : widget & + + + + + + + + draw() const : void + + + + + + + draw() : void + + + + + + + shown() const : bool + + + + + + + + pImpl : std::unique_ptr<impl::widget> + + + + + + + + + + + + pImpl + diff --git a/docs/test_cases/t00018_class_mermaid.svg b/docs/test_cases/t00018_class_mermaid.svg index 4658f5936..7480a0d0c 100644 --- a/docs/test_cases/t00018_class_mermaid.svg +++ b/docs/test_cases/t00018_class_mermaid.svg @@ -1,57 +1,62 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - + + @@ -65,7 +70,7 @@ - +
@@ -78,11 +83,11 @@ - + - - - + + +
@@ -94,34 +99,34 @@ impl::widget
- +
-n : int
- +
- +widget(int n) : void + +widget(int n) : : void
- +
- +draw(const widget & w) : [const] void + +draw(const widget & w) : : [const] void
- +
- +draw(const widget & w) : void + +draw(const widget & w) : : void
- + - - - + + +
@@ -133,54 +138,54 @@ widget
- +
-pImpl : std::unique_ptr<impl::widget>
- +
- +widget(int) : void + +widget(int) : : void
- +
- +widget(widget &&) : void + +widget(widget &&) : : void
- +
- +widget(const widget &) : void + +widget(const widget &) : : void
- +
- +~widget() : void + +~widget() : : void
- +
- +operator=(widget &&) : widget & + +operator=(widget &&) : : widget &
- +
- +operator=(const widget &) : widget & + +operator=(const widget &) : : widget &
- +
- +draw() : [const] void + +draw() : : [const] void
- +
- +draw() : void + +draw() : : void
- +
- +shown() : [const] bool + +shown() : : [const] bool
diff --git a/docs/test_cases/t00019.md b/docs/test_cases/t00019.md index 5bf5e1007..094f3c5d4 100644 --- a/docs/test_cases/t00019.md +++ b/docs/test_cases/t00019.md @@ -14,6 +14,43 @@ diagrams: ``` ## Source code +File t00019_layer3.h +```cpp +#pragma once + +#include + +namespace clanguml { +namespace t00019 { + +template class Layer3 : public LowerLayer { + + using LowerLayer::LowerLayer; + + virtual int m1() override + { + m_m1_calls++; + return LowerLayer::m1(); + } + + virtual std::string m2() override + { + m_m2_calls++; + return LowerLayer::m2(); + } + + int m1_calls() const { return m_m1_calls; } + + int m2_calls() const { return m_m2_calls; } + +private: + int m_m1_calls{}; + int m_m2_calls{}; +}; +} +} + +``` File t00019_layer1.h ```cpp #pragma once @@ -64,31 +101,7 @@ public: } ``` -File t00019_layer2.h -```cpp -#pragma once - -namespace clanguml { -namespace t00019 { - -template class Layer2 : public LowerLayer { - - using LowerLayer::LowerLayer; - - using LowerLayer::m1; - - using LowerLayer::m2; - - int all_calls_count() const - { - return LowerLayer::m1_calls() + LowerLayer::m2_calls(); - } -}; -} -} - -``` -File t00019_layer3.h +File t00019_base.h ```cpp #pragma once @@ -97,52 +110,39 @@ File t00019_layer3.h namespace clanguml { namespace t00019 { -template class Layer3 : public LowerLayer { - - using LowerLayer::LowerLayer; - - virtual int m1() override - { - m_m1_calls++; - return LowerLayer::m1(); - } +class Base { - virtual std::string m2() override - { - m_m2_calls++; - return LowerLayer::m2(); - } + Base() = default; - int m1_calls() const { return m_m1_calls; } + virtual ~Base() = default; - int m2_calls() const { return m_m2_calls; } + virtual int m1() { return 2; } -private: - int m_m1_calls{}; - int m_m2_calls{}; + virtual std::string m2() { return "two"; } }; } } ``` -File t00019_base.h +File t00019_layer2.h ```cpp #pragma once -#include - namespace clanguml { namespace t00019 { -class Base { +template class Layer2 : public LowerLayer { - Base() = default; + using LowerLayer::LowerLayer; - virtual ~Base() = default; + using LowerLayer::m1; - virtual int m1() { return 2; } + using LowerLayer::m2; - virtual std::string m2() { return "two"; } + int all_calls_count() const + { + return LowerLayer::m1_calls() + LowerLayer::m2_calls(); + } }; } } @@ -175,6 +175,7 @@ class Base { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -200,6 +201,7 @@ class Base { "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -225,6 +227,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -250,6 +253,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -298,6 +302,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -323,6 +328,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -378,6 +384,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -458,6 +465,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -483,6 +491,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -508,6 +517,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -533,6 +543,7 @@ class Base { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -593,7 +604,7 @@ class Base { "source_location": { "column": 11, "file": "", - "line": 242, + "line": 277, "translation_unit": "t00019.cc" }, "template_parameters": [ @@ -629,7 +640,7 @@ class Base { "source_location": { "column": 11, "file": "", - "line": 242, + "line": 277, "translation_unit": "t00019.cc" }, "template_parameters": [ @@ -672,7 +683,7 @@ class Base { "source_location": { "column": 11, "file": "", - "line": 242, + "line": 277, "translation_unit": "t00019.cc" }, "template_parameters": [ diff --git a/docs/test_cases/t00019_class.svg b/docs/test_cases/t00019_class.svg index bf9dc0b9c..f410b4dd2 100644 --- a/docs/test_cases/t00019_class.svg +++ b/docs/test_cases/t00019_class.svg @@ -1,198 +1,222 @@ - + - - - - - - - - - - - Base - - - - - - - - Base() = default : void - - - - - - - ~Base() constexpr = default : void - - - - - - - - m1() : int - - - - - - - m2() : std::string - - - - - - - Layer1 - - LowerLayer - - - - - - - - m1() : int - - - - - - - m2() : std::string - - - - - - - Layer2 - - LowerLayer - - - - - - - - all_calls_count() const : int - - - - - - - Layer3 - - LowerLayer - - - - - - - - m1() : int - - - - - - - m1_calls() const : int - - - - - - - m2() : std::string - - - - - - - m2_calls() const : int - - - - - - - - m_m1_calls : int - - - - - - - m_m2_calls : int - - - - - Layer3 - - Base - - - - - - Layer2 - - Layer3<Base> - - - - - - Layer1 - - Layer2<Layer3<Base>> - - - - - - - A - - - - - - - - - layers : std::unique_ptr<Layer1<Layer2<Layer3<Base>>>> - - - - - - - - - - - - - - - - - layers + + + + + + Base + + + + + + + Base() = default : void + + + + + + + ~Base() constexpr = default : void + + + + + + + + m1() : int + + + + + + + m2() : std::string + + + + + + + + + + Layer1 + + LowerLayer + + + + + + + m1() : int + + + + + + + m2() : std::string + + + + + + + + + + Layer2 + + LowerLayer + + + + + + + all_calls_count() const : int + + + + + + + + + + Layer3 + + LowerLayer + + + + + + + m1() : int + + + + + + + m1_calls() const : int + + + + + + + m2() : std::string + + + + + + + m2_calls() const : int + + + + + + + + m_m1_calls : int + + + + + + + m_m2_calls : int + + + + + + + + Layer3 + + Base + + + + + + + + Layer2 + + Layer3<Base> + + + + + + + + Layer1 + + Layer2<Layer3<Base>> + + + + + + + + + A + + + + + + + + layers : std::unique_ptr<Layer1<Layer2<Layer3<Base>>>> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + layers + diff --git a/docs/test_cases/t00019_class_mermaid.svg b/docs/test_cases/t00019_class_mermaid.svg index 0291df780..b2feafd42 100644 --- a/docs/test_cases/t00019_class_mermaid.svg +++ b/docs/test_cases/t00019_class_mermaid.svg @@ -1,62 +1,67 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -119,7 +124,7 @@ - + - +
- -m1() : int + -m1() : : int
- +
- -m2() : std::string + -m2() : : std::string
- + - - - + + +
@@ -216,19 +221,19 @@ Layer2<LowerLayer>
- +
- -all_calls_count() : [const] int + -all_calls_count() : : [const] int
- + - - - + + +
@@ -240,40 +245,40 @@ Layer3<LowerLayer>
- +
-m_m1_calls : int
- +
-m_m2_calls : int
- +
- -m1() : int + -m1() : : int
- +
- -m1_calls() : [const] int + -m1_calls() : : [const] int
- +
- -m2() : std::string + -m2() : : std::string
- +
- -m2_calls() : [const] int + -m2_calls() : : [const] int
- + @@ -292,7 +297,7 @@ - + @@ -311,7 +316,7 @@ - + @@ -330,7 +335,7 @@ - + diff --git a/docs/test_cases/t00020.md b/docs/test_cases/t00020.md index fe541264a..4c641bd97 100644 --- a/docs/test_cases/t00020.md +++ b/docs/test_cases/t00020.md @@ -120,6 +120,7 @@ public: "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -145,6 +146,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -205,6 +207,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -265,6 +268,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -318,6 +322,7 @@ public: "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -343,6 +348,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -403,6 +409,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -463,6 +470,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -516,6 +524,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -541,6 +550,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -596,6 +606,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -621,6 +632,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -676,6 +688,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -701,6 +714,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00020_class.svg b/docs/test_cases/t00020_class.svg index 90172649c..4cc97d7e8 100644 --- a/docs/test_cases/t00020_class.svg +++ b/docs/test_cases/t00020_class.svg @@ -1,217 +1,261 @@ - + - - - - - - - - - - - ProductA - - - - - - - - ~ProductA() constexpr = default : void - - - - - - - - sell(int price) const = 0 : bool - - - - - - - ProductA1 - - - - - - - - sell(int price) const : bool - - - - - - - ProductA2 - - - - - - - - sell(int price) const : bool - - - - - - - ProductB - - - - - - - - ~ProductB() constexpr = default : void - - - - - - - - buy(int price) const = 0 : bool - - - - - - - ProductB1 - - - - - - - - buy(int price) const : bool - - - - - - - ProductB2 - - - - - - - - buy(int price) const : bool - - - - - - - AbstractFactory - - - - - - - - make_a() const = 0 : std::unique_ptr<ProductA> - - - - - - - make_b() const = 0 : std::unique_ptr<ProductB> - - - - - - - Factory1 - - - - - - - - make_a() const : std::unique_ptr<ProductA> - - - - - - - make_b() const : std::unique_ptr<ProductB> - - - - - - - Factory2 - - - - - - - - make_a() const : std::unique_ptr<ProductA> - - - - - - - make_b() const : std::unique_ptr<ProductB> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + ProductA + + + + + + + ~ProductA() constexpr = default : void + + + + + + + + sell(int price) const = 0 : bool + + + + + + + + + + ProductA1 + + + + + + + sell(int price) const : bool + + + + + + + + + + ProductA2 + + + + + + + sell(int price) const : bool + + + + + + + + + + ProductB + + + + + + + ~ProductB() constexpr = default : void + + + + + + + + buy(int price) const = 0 : bool + + + + + + + + + + ProductB1 + + + + + + + buy(int price) const : bool + + + + + + + + + + ProductB2 + + + + + + + buy(int price) const : bool + + + + + + + + + + AbstractFactory + + + + + + + make_a() const = 0 : std::unique_ptr<ProductA> + + + + + + + make_b() const = 0 : std::unique_ptr<ProductB> + + + + + + + + + + Factory1 + + + + + + + make_a() const : std::unique_ptr<ProductA> + + + + + + + make_b() const : std::unique_ptr<ProductB> + + + + + + + + + + Factory2 + + + + + + + make_a() const : std::unique_ptr<ProductA> + + + + + + + make_b() const : std::unique_ptr<ProductB> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00020_class_mermaid.svg b/docs/test_cases/t00020_class_mermaid.svg index 3262b9898..26be6094f 100644 --- a/docs/test_cases/t00020_class_mermaid.svg +++ b/docs/test_cases/t00020_class_mermaid.svg @@ -1,67 +1,72 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -186,11 +191,11 @@ - + - - - + + +
@@ -202,24 +207,24 @@ ProductA
- +
- +~ProductA() : [default,constexpr] void + +~ProductA() : : [default,constexpr] void
- +
- +sell(int price) : [const] bool + +sell(int price) : : [const] bool
- + - - - + + +
@@ -231,19 +236,19 @@ ProductA1
- +
- +sell(int price) : [const] bool + +sell(int price) : : [const] bool
- + - - - + + +
@@ -255,19 +260,19 @@ ProductA2
- +
- +sell(int price) : [const] bool + +sell(int price) : : [const] bool
- + - - - + + +
@@ -279,24 +284,24 @@ ProductB
- +
- +~ProductB() : [default,constexpr] void + +~ProductB() : : [default,constexpr] void
- +
- +buy(int price) : [const] bool + +buy(int price) : : [const] bool
- + - - - + + +
@@ -308,19 +313,19 @@ ProductB1
- +
- +buy(int price) : [const] bool + +buy(int price) : : [const] bool
- + - - - + + +
@@ -332,19 +337,19 @@ ProductB2
- +
- +buy(int price) : [const] bool + +buy(int price) : : [const] bool
- + - - - + + +
@@ -356,24 +361,24 @@ AbstractFactory
- +
- +make_a() : [const] std::unique_ptr<ProductA> + +make_a() : : [const] std::unique_ptr<ProductA>
- +
- +make_b() : [const] std::unique_ptr<ProductB> + +make_b() : : [const] std::unique_ptr<ProductB>
- + - - - + + +
@@ -385,24 +390,24 @@ Factory1
- +
- +make_a() : [const] std::unique_ptr<ProductA> + +make_a() : : [const] std::unique_ptr<ProductA>
- +
- +make_b() : [const] std::unique_ptr<ProductB> + +make_b() : : [const] std::unique_ptr<ProductB>
- + - - - + + +
@@ -414,14 +419,14 @@ Factory2
- +
- +make_a() : [const] std::unique_ptr<ProductA> + +make_a() : : [const] std::unique_ptr<ProductA>
- +
- +make_b() : [const] std::unique_ptr<ProductB> + +make_b() : : [const] std::unique_ptr<ProductB>
diff --git a/docs/test_cases/t00021.md b/docs/test_cases/t00021.md index 07b7c92ae..f0ff22e92 100644 --- a/docs/test_cases/t00021.md +++ b/docs/test_cases/t00021.md @@ -94,6 +94,7 @@ public: "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -119,6 +120,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -149,6 +151,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -209,6 +212,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -239,6 +243,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -299,6 +304,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -329,6 +335,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -389,6 +396,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -419,6 +427,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -472,6 +481,7 @@ public: "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -497,6 +507,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -557,6 +568,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -617,6 +629,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00021_class.svg b/docs/test_cases/t00021_class.svg index 49fd0d618..1beaa483c 100644 --- a/docs/test_cases/t00021_class.svg +++ b/docs/test_cases/t00021_class.svg @@ -1,194 +1,234 @@ - + - - - - - - - - - - - Visitor - - - - - - - - ~Visitor() constexpr = default : void - - - - - - - - visit_A(const A & item) const = 0 : void - - - - - - - visit_B(const B & item) const = 0 : void - - - - - - - Visitor1 - - - - - - - - visit_A(const A & item) const : void - - - - - - - visit_B(const B & item) const : void - - - - - - - Visitor2 - - - - - - - - visit_A(const A & item) const : void - - - - - - - visit_B(const B & item) const : void - - - - - - - Visitor3 - - - - - - - - visit_A(const A & item) const : void - - - - - - - visit_B(const B & item) const : void - - - - - - - Item - - - - - - - - ~Item() constexpr = default : void - - - - - - - - accept(const Visitor & visitor) const = 0 : void - - - - - - - A - - - - - - - - accept(const Visitor & visitor) const : void - - - - - - - B - - - - - - - - accept(const Visitor & visitor) const : void - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + Visitor + + + + + + + ~Visitor() constexpr = default : void + + + + + + + + visit_A(const A & item) const = 0 : void + + + + + + + visit_B(const B & item) const = 0 : void + + + + + + + + + + Visitor1 + + + + + + + visit_A(const A & item) const : void + + + + + + + visit_B(const B & item) const : void + + + + + + + + + + Visitor2 + + + + + + + visit_A(const A & item) const : void + + + + + + + visit_B(const B & item) const : void + + + + + + + + + + Visitor3 + + + + + + + visit_A(const A & item) const : void + + + + + + + visit_B(const B & item) const : void + + + + + + + + + + Item + + + + + + + ~Item() constexpr = default : void + + + + + + + + accept(const Visitor & visitor) const = 0 : void + + + + + + + + + + A + + + + + + + accept(const Visitor & visitor) const : void + + + + + + + + + + B + + + + + + + accept(const Visitor & visitor) const : void + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00021_class_mermaid.svg b/docs/test_cases/t00021_class_mermaid.svg index 708ac9cb5..f06b023e0 100644 --- a/docs/test_cases/t00021_class_mermaid.svg +++ b/docs/test_cases/t00021_class_mermaid.svg @@ -1,71 +1,76 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -236,11 +241,11 @@ - + - - - + + +
@@ -252,29 +257,29 @@ Visitor
- +
- +~Visitor() : [default,constexpr] void + +~Visitor() : : [default,constexpr] void
- +
- +visit_A(const A & item) : [const] void + +visit_A(const A & item) : : [const] void
- +
- +visit_B(const B & item) : [const] void + +visit_B(const B & item) : : [const] void
- + - - - + + +
@@ -286,24 +291,24 @@ Visitor1
- +
- +visit_A(const A & item) : [const] void + +visit_A(const A & item) : : [const] void
- +
- +visit_B(const B & item) : [const] void + +visit_B(const B & item) : : [const] void
- + - - - + + +
@@ -315,24 +320,24 @@ Visitor2
- +
- +visit_A(const A & item) : [const] void + +visit_A(const A & item) : : [const] void
- +
- +visit_B(const B & item) : [const] void + +visit_B(const B & item) : : [const] void
- + - - - + + +
@@ -344,24 +349,24 @@ Visitor3
- +
- +visit_A(const A & item) : [const] void + +visit_A(const A & item) : : [const] void
- +
- +visit_B(const B & item) : [const] void + +visit_B(const B & item) : : [const] void
- + - - - + + +
@@ -373,24 +378,24 @@ Item
- +
- +~Item() : [default,constexpr] void + +~Item() : : [default,constexpr] void
- +
- +accept(const Visitor & visitor) : [const] void + +accept(const Visitor & visitor) : : [const] void
- + - - - + + +
@@ -402,19 +407,19 @@ A
- +
- +accept(const Visitor & visitor) : [const] void + +accept(const Visitor & visitor) : : [const] void
- + - - - + + +
@@ -426,9 +431,9 @@ B
- +
- +accept(const Visitor & visitor) : [const] void + +accept(const Visitor & visitor) : : [const] void
diff --git a/docs/test_cases/t00022.md b/docs/test_cases/t00022.md index e452784b6..245cdec5a 100644 --- a/docs/test_cases/t00022.md +++ b/docs/test_cases/t00022.md @@ -75,6 +75,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -100,6 +101,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -125,6 +127,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -180,6 +183,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -205,6 +209,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -260,6 +265,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -285,6 +291,7 @@ protected: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00022_class.svg b/docs/test_cases/t00022_class.svg index 42e7b34e3..09f3f4c80 100644 --- a/docs/test_cases/t00022_class.svg +++ b/docs/test_cases/t00022_class.svg @@ -1,90 +1,94 @@ - + - - - - - - - - - - - A - - - - - - - - method1() = 0 : void - - - - - - - method2() = 0 : void - - - - - - - template_method() : void - - - - - - - A1 - - - - - - - - method1() : void - - - - - - - method2() : void - - - - - - - A2 - - - - - - - - method1() : void - - - - - - - method2() : void - - - - - - + + + + + + A + + + + + + + method1() = 0 : void + + + + + + + method2() = 0 : void + + + + + + + template_method() : void + + + + + + + + + + A1 + + + + + + + method1() : void + + + + + + + method2() : void + + + + + + + + + + A2 + + + + + + + method1() : void + + + + + + + method2() : void + + + + + + + + + + + + diff --git a/docs/test_cases/t00022_class_mermaid.svg b/docs/test_cases/t00022_class_mermaid.svg index c4cfc4620..753ee4b02 100644 --- a/docs/test_cases/t00022_class_mermaid.svg +++ b/docs/test_cases/t00022_class_mermaid.svg @@ -1,57 +1,62 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - + + @@ -74,11 +79,11 @@ - + - - - + + +
@@ -90,29 +95,29 @@ A
- +
- #method1() : void + #method1() : : void
- +
- #method2() : void + #method2() : : void
- +
- +template_method() : void + +template_method() : : void
- + - - - + + +
@@ -124,24 +129,24 @@ A1
- +
- #method1() : void + #method1() : : void
- +
- #method2() : void + #method2() : : void
- + - - - + + +
@@ -153,14 +158,14 @@ A2
- +
- #method1() : void + #method1() : : void
- +
- #method2() : void + #method2() : : void
diff --git a/docs/test_cases/t00023.md b/docs/test_cases/t00023.md index d828ee4cc..44c99b4ed 100644 --- a/docs/test_cases/t00023.md +++ b/docs/test_cases/t00023.md @@ -84,6 +84,7 @@ private: "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -109,6 +110,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -164,6 +166,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -219,6 +222,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -274,6 +278,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -335,6 +340,7 @@ private: "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -365,6 +371,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00023_class.svg b/docs/test_cases/t00023_class.svg index b0c24c958..9de13690e 100644 --- a/docs/test_cases/t00023_class.svg +++ b/docs/test_cases/t00023_class.svg @@ -1,121 +1,133 @@ - + - - - - - - - - - - - Strategy - - - - - - - - ~Strategy() constexpr = default : void - - - - - - - - algorithm() = 0 : void - - - - - - - StrategyA - - - - - - - - algorithm() : void - - - - - - - StrategyB - - - - - - - - algorithm() : void - - - - - - - StrategyC - - - - - - - - algorithm() : void - - - - - - - Context - - - - - - - - Context(std::unique_ptr<Strategy> strategy) : void - - - - - - - - apply() : void - - - - - - - - m_strategy : std::unique_ptr<Strategy> - - - - - - - - - - - m_strategy + + + + + + Strategy + + + + + + + ~Strategy() constexpr = default : void + + + + + + + + algorithm() = 0 : void + + + + + + + + + + StrategyA + + + + + + + algorithm() : void + + + + + + + + + + StrategyB + + + + + + + algorithm() : void + + + + + + + + + + StrategyC + + + + + + + algorithm() : void + + + + + + + + + + Context + + + + + + + Context(std::unique_ptr<Strategy> strategy) : void + + + + + + + + apply() : void + + + + + + + + m_strategy : std::unique_ptr<Strategy> + + + + + + + + + + + + + + + + + + + + m_strategy + diff --git a/docs/test_cases/t00023_class_mermaid.svg b/docs/test_cases/t00023_class_mermaid.svg index 5205390ed..5bb099e02 100644 --- a/docs/test_cases/t00023_class_mermaid.svg +++ b/docs/test_cases/t00023_class_mermaid.svg @@ -1,59 +1,64 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -83,7 +88,7 @@
- +
@@ -96,11 +101,11 @@ - + - - - + + +
@@ -112,24 +117,24 @@ Strategy
- +
- +~Strategy() : [default,constexpr] void + +~Strategy() : : [default,constexpr] void
- +
- +algorithm() : void + +algorithm() : : void
- + - - - + + +
@@ -141,19 +146,19 @@ StrategyA
- +
- +algorithm() : void + +algorithm() : : void
- + - - - + + +
@@ -165,19 +170,19 @@ StrategyB
- +
- +algorithm() : void + +algorithm() : : void
- + - - - + + +
@@ -189,19 +194,19 @@ StrategyC
- +
- +algorithm() : void + +algorithm() : : void
- + - - - + + +
@@ -213,19 +218,19 @@ Context
- +
-m_strategy : std::unique_ptr<Strategy>
- +
- +Context(std::unique_ptr strategy) : void + +Context(std::unique_ptr strategy) : : void
- +
- +apply() : void + +apply() : : void
diff --git a/docs/test_cases/t00024.md b/docs/test_cases/t00024.md index ab0e7efcf..cd6a26c10 100644 --- a/docs/test_cases/t00024.md +++ b/docs/test_cases/t00024.md @@ -83,6 +83,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -108,6 +109,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -133,6 +135,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -188,6 +191,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -213,6 +217,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -268,6 +273,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -293,6 +299,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -361,6 +368,7 @@ private: "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -391,6 +399,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -416,6 +425,7 @@ private: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00024_class.svg b/docs/test_cases/t00024_class.svg index f9b7dbadf..9b2c53093 100644 --- a/docs/test_cases/t00024_class.svg +++ b/docs/test_cases/t00024_class.svg @@ -1,134 +1,144 @@ - + - - - - - - - - - - - Target - - - - - - - - ~Target() = 0 : void - - - - - - - - m1() = 0 : void - - - - - - - m2() = 0 : void - - - - - - - Target1 - - - - - - - - m1() : void - - - - - - - m2() : void - - - - - - - Target2 - - - - - - - - m1() : void - - - - - - - m2() : void - - - - - - - Proxy - - - - - - - - Proxy(std::shared_ptr<Target> target) : void - - - - - - - - m1() : void - - - - - - - m2() : void - - - - - - - - m_target : std::shared_ptr<Target> - - - - - - - - - m_target - - + + + + + + Target + + + + + + + ~Target() = 0 : void + + + + + + + + m1() = 0 : void + + + + + + + m2() = 0 : void + + + + + + + + + + Target1 + + + + + + + m1() : void + + + + + + + m2() : void + + + + + + + + + + Target2 + + + + + + + m1() : void + + + + + + + m2() : void + + + + + + + + + + Proxy + + + + + + + Proxy(std::shared_ptr<Target> target) : void + + + + + + + + m1() : void + + + + + + + m2() : void + + + + + + + + m_target : std::shared_ptr<Target> + + + + + + + + + + + + + + + + m_target + + + + + diff --git a/docs/test_cases/t00024_class_mermaid.svg b/docs/test_cases/t00024_class_mermaid.svg index c9fa5109e..b1e990f98 100644 --- a/docs/test_cases/t00024_class_mermaid.svg +++ b/docs/test_cases/t00024_class_mermaid.svg @@ -1,59 +1,64 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -74,7 +79,7 @@ - +
@@ -96,11 +101,11 @@ - + - - - + + +
@@ -112,29 +117,29 @@ Target
- +
- +~Target() : void + +~Target() : : void
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
- + - - - + + +
@@ -146,24 +151,24 @@ Target1
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
- + - - - + + +
@@ -175,24 +180,24 @@ Target2
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
- + - - - + + +
@@ -204,24 +209,24 @@ Proxy
- +
-m_target : std::shared_ptr<Target>
- +
- +Proxy(std::shared_ptr target) : void + +Proxy(std::shared_ptr target) : : void
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
diff --git a/docs/test_cases/t00025.md b/docs/test_cases/t00025.md index c3e291060..9577c2fc5 100644 --- a/docs/test_cases/t00025.md +++ b/docs/test_cases/t00025.md @@ -81,6 +81,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -106,6 +107,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -154,6 +156,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -179,6 +182,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -240,6 +244,7 @@ public: "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -270,6 +275,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -295,6 +301,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00025_class.svg b/docs/test_cases/t00025_class.svg index 046ea65c8..63be39820 100644 --- a/docs/test_cases/t00025_class.svg +++ b/docs/test_cases/t00025_class.svg @@ -1,154 +1,172 @@ - + - - - - - - - - - - - Target1 - - - - - - - - m1() : void - - - - - - - m2() : void - - - - - - - Target2 - - - - - - - - m1() : void - - - - - - - m2() : void - - - - - - - Proxy - - T - - - - - - - - Proxy(std::shared_ptr<T> target) : void - - - - - - - - m1() : void - - - - - - - m2() : void - - - - - - - - m_target : std::shared_ptr<T> - - - - - - Proxy - - Target1 - - - - - - - - Proxy - - Target2 - - - - - - - - ProxyHolder - - - - - - - - - proxy1 : Proxy<Target1> - - - - - - - proxy2 : Proxy<Target2> - - - - - - - - - - - - - proxy1 - - - - proxy2 + + + + + + Target1 + + + + + + + m1() : void + + + + + + + m2() : void + + + + + + + + + + Target2 + + + + + + + m1() : void + + + + + + + m2() : void + + + + + + + + + + Proxy + + T + + + + + + + Proxy(std::shared_ptr<T> target) : void + + + + + + + + m1() : void + + + + + + + m2() : void + + + + + + + + m_target : std::shared_ptr<T> + + + + + + + + + Proxy + + Target1 + + + + + + + + + + Proxy + + Target2 + + + + + + + + + + ProxyHolder + + + + + + + + proxy1 : Proxy<Target1> + + + + + + + proxy2 : Proxy<Target2> + + + + + + + + + + + + + + + + + + + + + + + + proxy1 + + + + + + proxy2 + diff --git a/docs/test_cases/t00025_class_mermaid.svg b/docs/test_cases/t00025_class_mermaid.svg index 6e09d9c22..89ec8e19e 100644 --- a/docs/test_cases/t00025_class_mermaid.svg +++ b/docs/test_cases/t00025_class_mermaid.svg @@ -1,61 +1,66 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - + + + + + + @@ -113,7 +118,7 @@ - +
@@ -126,11 +131,11 @@ - + - - - + + +
@@ -142,24 +147,24 @@ Target1
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
- + - - - + + +
@@ -171,24 +176,24 @@ Target2
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
- + - - - + + +
@@ -200,30 +205,30 @@ Proxy<T>
- +
-m_target : std::shared_ptr<T>
- +
- +Proxy(std::shared_ptr target) : void + +Proxy(std::shared_ptr target) : : void
- +
- +m1() : void + +m1() : : void
- +
- +m2() : void + +m2() : : void
- + @@ -242,7 +247,7 @@
- + @@ -261,7 +266,7 @@ - + diff --git a/docs/test_cases/t00026.md b/docs/test_cases/t00026.md index 2a62b904c..878c129c0 100644 --- a/docs/test_cases/t00026.md +++ b/docs/test_cases/t00026.md @@ -115,6 +115,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -145,6 +146,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -213,6 +215,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -243,6 +246,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -268,6 +272,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -298,6 +303,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -323,6 +329,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -396,6 +403,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -426,6 +434,7 @@ struct StringMemento { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00026_class.svg b/docs/test_cases/t00026_class.svg index cd8ff6e84..72128448e 100644 --- a/docs/test_cases/t00026_class.svg +++ b/docs/test_cases/t00026_class.svg @@ -1,189 +1,207 @@ - + - - - - - - - - - - - Memento - - T - - - - - - - - Memento(T && v) : void - - - - - - - - value() const : T - - - - - - - - m_value : T - - - - - - Originator - - T - - - - - - - - Originator(T && v) : void - - - - - - - - load(const Memento<T> & m) : void - - - - - - - memoize_value() const : Memento<T> - - - - - - - print() const : void - - - - - - - set(T && v) : void - - - - - - - - m_value : T - - - - - - Caretaker - - T - - - - - - - - set_state(const std::string & s, Memento<T> && m) : void - - - - - - - state(const std::string & n) : Memento<T> & - - - - - - - - m_mementos : std::unordered_map<std::string,Memento<T>> - - - - - - Caretaker - - std::string - - - - - - - - Originator - - std::string - - - - - - - - StringMemento - - - - - - - - - caretaker : Caretaker<std::string> - - - - - - - originator : Originator<std::string> - - - - - - - m_mementos - - - - - - - - caretaker - - - - originator + + + + + + Memento + + T + + + + + + + Memento(T && v) : void + + + + + + + + value() const : T + + + + + + + + m_value : T + + + + + + + + + Originator + + T + + + + + + + Originator(T && v) : void + + + + + + + + load(const Memento<T> & m) : void + + + + + + + memoize_value() const : Memento<T> + + + + + + + print() const : void + + + + + + + set(T && v) : void + + + + + + + + m_value : T + + + + + + + + + Caretaker + + T + + + + + + + set_state(const std::string & s, Memento<T> && m) : void + + + + + + + state(const std::string & n) : Memento<T> & + + + + + + + + m_mementos : std::unordered_map<std::string,Memento<T>> + + + + + + + + + Caretaker + + std::string + + + + + + + + + + Originator + + std::string + + + + + + + + + + StringMemento + + + + + + + + caretaker : Caretaker<std::string> + + + + + + + originator : Originator<std::string> + + + + + + + + + + + + m_mementos + + + + + + + + + + + + + + caretaker + + + + + + originator + diff --git a/docs/test_cases/t00026_class_mermaid.svg b/docs/test_cases/t00026_class_mermaid.svg index 7b4273460..055ac2045 100644 --- a/docs/test_cases/t00026_class_mermaid.svg +++ b/docs/test_cases/t00026_class_mermaid.svg @@ -1,61 +1,66 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - + + + + + + @@ -69,7 +74,7 @@ - +
@@ -102,7 +107,7 @@ - +
@@ -113,7 +118,7 @@ - + - +
- +set_state(const std::string & s, Memento && m) : void + +set_state(const std::string & s, Memento && m) : : void
- +
- +state(const std::string & n) : Memento<T> & + +state(const std::string & n) : : Memento<T> &
- + @@ -262,7 +267,7 @@
- + @@ -281,7 +286,7 @@ - + diff --git a/docs/test_cases/t00027.md b/docs/test_cases/t00027.md index 7f2e86bfc..8b056fc3e 100644 --- a/docs/test_cases/t00027.md +++ b/docs/test_cases/t00027.md @@ -99,6 +99,7 @@ struct Window { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -124,6 +125,7 @@ struct Window { "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -207,6 +209,7 @@ struct Window { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -297,6 +300,7 @@ struct Window { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -352,6 +356,7 @@ struct Window { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -407,6 +412,7 @@ struct Window { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -469,6 +475,7 @@ struct Window { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00027_class.svg b/docs/test_cases/t00027_class.svg index eb4237c3a..5789af43a 100644 --- a/docs/test_cases/t00027_class.svg +++ b/docs/test_cases/t00027_class.svg @@ -1,243 +1,287 @@ - + - - - - - - - - - - - Shape - - - - - - - - ~Shape() constexpr = default : void - - - - - - - - display() = 0 : void - - - - - - - Line - - - - - - - - Line - - T<>... - - - - - - - - display() : void - - - - - - - Text - - - - - - - - Text - - T<>... - - - - - - - - display() : void - - - - - - - ShapeDecorator - - - - - - - - display() = 0 : void - - - - - - - Color - - T - - - - - - - - display() : void - - - - - - - Weight - - T - - - - - - - - display() : void - - - - - - - Line - - Color,Weight - - - - - - - - Line - - Color - - - - - - - - Text - - Color,Weight - - - - - - - - Text - - Color - - - - - - - - Window - - - - - - - - - border : Line<Color,Weight> - - - - - - - description : Text<Color> - - - - - - - divider : Line<Color> - - - - - - - title : Text<Color,Weight> - - - - - - - - - - - - - - - - - - - - - border - - - - divider - - - - title - - - - description + + + + + + Shape + + + + + + + ~Shape() constexpr = default : void + + + + + + + + display() = 0 : void + + + + + + + + + + Line + + + + + + + + + + Line + + T<>... + + + + + + + display() : void + + + + + + + + + + Text + + + + + + + + + + Text + + T<>... + + + + + + + display() : void + + + + + + + + + + ShapeDecorator + + + + + + + display() = 0 : void + + + + + + + + + + Color + + T + + + + + + + display() : void + + + + + + + + + + Weight + + T + + + + + + + display() : void + + + + + + + + + + Line + + Color,Weight + + + + + + + + + + Line + + Color + + + + + + + + + + Text + + Color,Weight + + + + + + + + + + Text + + Color + + + + + + + + + + Window + + + + + + + + border : Line<Color,Weight> + + + + + + + description : Text<Color> + + + + + + + divider : Line<Color> + + + + + + + title : Text<Color,Weight> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + border + + + + + + divider + + + + + + title + + + + + + description + diff --git a/docs/test_cases/t00027_class_mermaid.svg b/docs/test_cases/t00027_class_mermaid.svg index c0e56f149..8107bc29e 100644 --- a/docs/test_cases/t00027_class_mermaid.svg +++ b/docs/test_cases/t00027_class_mermaid.svg @@ -1,67 +1,72 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -144,7 +149,7 @@ - +
@@ -155,7 +160,7 @@ - +
@@ -166,7 +171,7 @@ - +
@@ -177,7 +182,7 @@ - + - +
- +display() : void + +display() : : void
- + - - - + + +
@@ -345,19 +350,19 @@ Color<T>
- +
- +display() : void + +display() : : void
- + - - - + + +
@@ -369,15 +374,15 @@ Weight<T>
- +
- +display() : void + +display() : : void
- + @@ -396,7 +401,7 @@
- + @@ -415,7 +420,7 @@ - + @@ -434,7 +439,7 @@ - + @@ -453,7 +458,7 @@ - + diff --git a/docs/test_cases/t00028.md b/docs/test_cases/t00028.md index e974c36d4..58cf3f645 100644 --- a/docs/test_cases/t00028.md +++ b/docs/test_cases/t00028.md @@ -421,6 +421,7 @@ class R { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00028_class.svg b/docs/test_cases/t00028_class.svg index 71839075a..1175a54c9 100644 --- a/docs/test_cases/t00028_class.svg +++ b/docs/test_cases/t00028_class.svg @@ -1,203 +1,243 @@ - + - - - - - - - - - - - A - - - - - - A class note. - - - - - B - - - - - - B class note. - - - - - C - - - - - - C class note. - - - - - D - - - - - - D - class - note. - - - - - E - - T - - - - - - - - - param : T - - - - E template class note. - - - - - G - - - - - - - - F - - one - two - three - - - - - F enum note. - - - - - E - - int - - - - - - - - R - - - - - - - - R(C & c) : void - - - - - - - - aaa : A - - - - - - - bbb : B * - - - - - - - ccc : C & - - - - - - - ddd : std::vector<std::shared_ptr<D>> - - - - - - - eee : E<int> - - - - - - - ggg : G ** - - - - R class note. - - - R contains an instance of A. - - - Reference to C. - - - - - - aaa - - - - bbb - - - - ccc - - - - ddd - - - - eee - - - - ggg + + + + + + A + + + + + + + + A class note. + + + + + + + B + + + + + + + + B class note. + + + + + + + C + + + + + + + + C class note. + + + + + + + D + + + + + + + + D + class + note. + + + + + + + E + + T + + + + + + + + param : T + + + + + + + E template class note. + + + + + + + G + + + + + + + + + + F + + one + two + three + + + + + + + F enum note. + + + + + + + E + + int + + + + + + + + + + R + + + + + + + R(C & c) : void + + + + + + + + aaa : A + + + + + + + bbb : B * + + + + + + + ccc : C & + + + + + + + ddd : std::vector<std::shared_ptr<D>> + + + + + + + eee : E<int> + + + + + + + ggg : G ** + + + + + + + R class note. + + + + R contains an instance of A. + + + Reference to C. + + + + + + + + + aaa + + + + + + bbb + + + + + + ccc + + + + + + ddd + + + + + + eee + + + + + + ggg + diff --git a/docs/test_cases/t00028_class_mermaid.svg b/docs/test_cases/t00028_class_mermaid.svg index 6ed95962b..0fffd5ee3 100644 --- a/docs/test_cases/t00028_class_mermaid.svg +++ b/docs/test_cases/t00028_class_mermaid.svg @@ -1,62 +1,67 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -218,7 +223,7 @@ - + @@ -237,7 +242,7 @@ - + @@ -256,7 +261,7 @@ - + @@ -275,7 +280,7 @@ - + @@ -294,7 +299,7 @@ - + @@ -318,7 +323,7 @@ - + @@ -337,7 +342,7 @@ - + @@ -371,7 +376,7 @@ - + @@ -390,7 +395,7 @@ - + @@ -413,7 +418,7 @@
- -bbb : B + -bbb : B
@@ -436,9 +441,9 @@ -ggg : G *
- +
- -R(C & c) : void + -R(C & c) : : void
diff --git a/docs/test_cases/t00029_class.svg b/docs/test_cases/t00029_class.svg index ea5edcd45..e3058a391 100644 --- a/docs/test_cases/t00029_class.svg +++ b/docs/test_cases/t00029_class.svg @@ -1,133 +1,149 @@ - + - - - - - - - - - - - A - - - - - - - - C - - T - - - - - - - - - param : T - - - - - - D - - - - - - - - - param : T - - - - - - E - - one - two - three - - - - - - - G1 - - - - - - - - G2 - - - - - - - - G3 - - - - - - - - G4 - - - - - - - - R - - - - - - - - - g1 : G1 - - - - - - - g3 : G3 & - - - - - - - g4 : std::shared_ptr<G4> - - - - - g1 - - - - g4 + + + + + + A + + + + + + + + + + C + + T + + + + + + + + param : T + + + + + + + + + D + + + + + + + + param : T + + + + + + + + + E + + one + two + three + + + + + + + + + G1 + + + + + + + + + + G2 + + + + + + + + + + G3 + + + + + + + + + + G4 + + + + + + + + + + R + + + + + + + + g1 : G1 + + + + + + + g3 : G3 & + + + + + + + g4 : std::shared_ptr<G4> + + + + + + + + g1 + + + + + + g4 + diff --git a/docs/test_cases/t00029_class_mermaid.svg b/docs/test_cases/t00029_class_mermaid.svg index ddeeabb36..b93987dcf 100644 --- a/docs/test_cases/t00029_class_mermaid.svg +++ b/docs/test_cases/t00029_class_mermaid.svg @@ -1,57 +1,62 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - + + @@ -78,7 +83,7 @@ - + @@ -97,7 +102,7 @@ - + @@ -121,7 +126,7 @@
- + @@ -145,7 +150,7 @@
- + @@ -179,7 +184,7 @@ - + @@ -198,7 +203,7 @@ - + @@ -217,7 +222,7 @@ - + @@ -236,7 +241,7 @@ - + @@ -255,7 +260,7 @@ - + diff --git a/docs/test_cases/t00030_class.svg b/docs/test_cases/t00030_class.svg index b5d3a3b66..207be2a02 100644 --- a/docs/test_cases/t00030_class.svg +++ b/docs/test_cases/t00030_class.svg @@ -1,122 +1,138 @@ - + - - - - - - - - - - - A - - - - - - - - B - - - - - - - - C - - - - - - - - D - - - - - - - - E - - - - - - - - R - - - - - - - - - aaa : A - - - - - - - bbb : std::vector<B> - - - - - - - ccc : std::vector<C> - - - - - - - ddd : D - - - - - - - eee : E * - - - - - aaa - - - - bbb - 0..1 - 1..* - - - - ccc - 0..1 - 1..5 - - - - ddd - 1 - - - - eee - 1 + + + + + + A + + + + + + + + + + B + + + + + + + + + + C + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + R + + + + + + + + aaa : A + + + + + + + bbb : std::vector<B> + + + + + + + ccc : std::vector<C> + + + + + + + ddd : D + + + + + + + eee : E * + + + + + + + + aaa + + + + + + bbb + 0..1 + 1..* + + + + + + ccc + 0..1 + 1..5 + + + + + + ddd + 1 + + + + + + eee + 1 + diff --git a/docs/test_cases/t00030_class_mermaid.svg b/docs/test_cases/t00030_class_mermaid.svg index 4fb9158c9..6328cc4ce 100644 --- a/docs/test_cases/t00030_class_mermaid.svg +++ b/docs/test_cases/t00030_class_mermaid.svg @@ -1,60 +1,65 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - + + + + + @@ -79,7 +84,7 @@ - +
@@ -88,7 +93,7 @@ - +
@@ -107,7 +112,7 @@ - +
@@ -116,7 +121,7 @@ - +
@@ -135,7 +140,7 @@ - +
@@ -154,7 +159,7 @@ - +
@@ -164,7 +169,7 @@ - + @@ -183,7 +188,7 @@ - + @@ -202,7 +207,7 @@ - + @@ -221,7 +226,7 @@ - + @@ -240,7 +245,7 @@ - + @@ -259,7 +264,7 @@ - + @@ -297,7 +302,7 @@
- +eee : E + +eee : E
diff --git a/docs/test_cases/t00031.md b/docs/test_cases/t00031.md index 206097d37..634118183 100644 --- a/docs/test_cases/t00031.md +++ b/docs/test_cases/t00031.md @@ -294,6 +294,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00031_class.svg b/docs/test_cases/t00031_class.svg index 21448be68..a47b798c7 100644 --- a/docs/test_cases/t00031_class.svg +++ b/docs/test_cases/t00031_class.svg @@ -1,140 +1,159 @@ - + - + - - - - - - - + - - - - - - A - - - - - - - - B - - one - two - three - - - - - - - - C - - T - - - - - - - - - ttt : T - - - - - - D - - - - - - - - C - - int - - - - - - - - R - - - - - - - - add_b(B b) : void - - - - - - - - aaa : A * - - - - - - - bbb : std::vector<B> - - - - - - - ccc : C<int> - - - - - - - ddd : D * - - - - - - - - - bbb - - - - aaa - - - - ccc - - - - ddd + + + + + + + + + A + + + + + + + + + + B + + one + two + three + + + + + + + + + C + + T + + + + + + + + ttt : T + + + + + + + + + D + + + + + + + + + + C + + int + + + + + + + + + + R + + + + + + + add_b(B b) : void + + + + + + + + aaa : A * + + + + + + + bbb : std::vector<B> + + + + + + + ccc : C<int> + + + + + + + ddd : D * + + + + + + + + + + + + + + + + bbb + + + + + + aaa + + + + + + ccc + + + + + + ddd + diff --git a/docs/test_cases/t00031_class_mermaid.svg b/docs/test_cases/t00031_class_mermaid.svg index 400df57f9..4f282960e 100644 --- a/docs/test_cases/t00031_class_mermaid.svg +++ b/docs/test_cases/t00031_class_mermaid.svg @@ -1,61 +1,66 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - + + + + + + @@ -126,7 +131,7 @@ - + @@ -145,7 +150,7 @@
- + @@ -179,7 +184,7 @@ - + @@ -203,7 +208,7 @@ - + @@ -222,7 +227,7 @@ - + @@ -241,7 +246,7 @@ - + @@ -259,7 +264,7 @@
- +aaa : A + +aaa : A
@@ -274,12 +279,12 @@
- +ddd : D + +ddd : D
- +
- +add_b(B b) : void + +add_b(B b) : : void
diff --git a/docs/test_cases/t00032.md b/docs/test_cases/t00032.md index 8cdb6f9aa..effde1586 100644 --- a/docs/test_cases/t00032.md +++ b/docs/test_cases/t00032.md @@ -124,6 +124,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -172,6 +173,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -220,6 +222,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00032_class.svg b/docs/test_cases/t00032_class.svg index c3ffb2dc0..7892695c4 100644 --- a/docs/test_cases/t00032_class.svg +++ b/docs/test_cases/t00032_class.svg @@ -1,132 +1,156 @@ - + - - - - - - - - - - - Base - - - - - - - - TBase - - - - - - - - A - - - - - - - - operator()() : void - - - - - - - B - - - - - - - - operator()() : void - - - - - - - C - - - - - - - - operator()() : void - - - - - - - Overload - - T,L,Ts... - - - - - - - - - counter : L - - - - - - Overload - - TBase,int,A,B,C - - - - - - - - R - - - - - - - - - overload : Overload<TBase,int,A,B,C> - - - - - - - - - - - - - - - - - overload + + + + + + Base + + + + + + + + + + TBase + + + + + + + + + + A + + + + + + + operator()() : void + + + + + + + + + + B + + + + + + + operator()() : void + + + + + + + + + + C + + + + + + + operator()() : void + + + + + + + + + + Overload + + T,L,Ts... + + + + + + + + counter : L + + + + + + + + + Overload + + TBase,int,A,B,C + + + + + + + + + + R + + + + + + + + overload : Overload<TBase,int,A,B,C> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + overload + diff --git a/docs/test_cases/t00032_class_mermaid.svg b/docs/test_cases/t00032_class_mermaid.svg index abc5a9715..1782d9942 100644 --- a/docs/test_cases/t00032_class_mermaid.svg +++ b/docs/test_cases/t00032_class_mermaid.svg @@ -1,62 +1,67 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -115,7 +120,7 @@ - +
@@ -128,7 +133,7 @@ - + @@ -147,7 +152,7 @@ - + @@ -166,11 +171,11 @@ - + - - - + + +
@@ -182,19 +187,19 @@ A
- +
- +operator() : ) : void + +operator()() : : void
- + - - - + + +
@@ -206,19 +211,19 @@ B
- +
- +operator() : ) : void + +operator()() : : void
- + - - - + + +
@@ -230,15 +235,15 @@ C
- +
- +operator() : ) : void + +operator()() : : void
- + @@ -262,7 +267,7 @@ - + @@ -281,7 +286,7 @@ - + diff --git a/docs/test_cases/t00033_class.svg b/docs/test_cases/t00033_class.svg index 3380b19c9..84f56c28f 100644 --- a/docs/test_cases/t00033_class.svg +++ b/docs/test_cases/t00033_class.svg @@ -1,140 +1,164 @@ - + - - - - - - - - - - - A - - T - - - - - - - - - aaa : T - - - - - - B - - T - - - - - - - - - bbb : T - - - - - - C - - T - - - - - - - - - ccc : T - - - - - - D - - - - - - - - - ddd : int - - - - - - C - - D - - - - - - - - B - - std::unique_ptr<C<D>> - - - - - - - - A - - B<std::unique_ptr<C<D>>> - - - - - - - - R - - - - - - - - - abc : A<B<std::unique_ptr<C<D>>>> - - - - - - - - - - - - - - - - - abc + + + + + + A + + T + + + + + + + + aaa : T + + + + + + + + + B + + T + + + + + + + + bbb : T + + + + + + + + + C + + T + + + + + + + + ccc : T + + + + + + + + + D + + + + + + + + ddd : int + + + + + + + + + C + + D + + + + + + + + + + B + + std::unique_ptr<C<D>> + + + + + + + + + + A + + B<std::unique_ptr<C<D>>> + + + + + + + + + + R + + + + + + + + abc : A<B<std::unique_ptr<C<D>>>> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + abc + diff --git a/docs/test_cases/t00033_class_mermaid.svg b/docs/test_cases/t00033_class_mermaid.svg index fcc00a915..90dc1e289 100644 --- a/docs/test_cases/t00033_class_mermaid.svg +++ b/docs/test_cases/t00033_class_mermaid.svg @@ -1,62 +1,67 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -138,7 +143,7 @@ - + @@ -162,7 +167,7 @@ - + @@ -186,7 +191,7 @@ - + @@ -210,7 +215,7 @@ - + @@ -234,7 +239,7 @@ - + @@ -253,7 +258,7 @@ - + @@ -272,7 +277,7 @@ - + @@ -291,7 +296,7 @@ - + diff --git a/docs/test_cases/t00034.md b/docs/test_cases/t00034.md index 4c37dd948..281006827 100644 --- a/docs/test_cases/t00034.md +++ b/docs/test_cases/t00034.md @@ -98,6 +98,7 @@ struct R { "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -128,6 +129,7 @@ struct R { "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00034_class.svg b/docs/test_cases/t00034_class.svg index 77e5c0a25..d6c7a613f 100644 --- a/docs/test_cases/t00034_class.svg +++ b/docs/test_cases/t00034_class.svg @@ -1,119 +1,137 @@ - + - - - - - - - - - - - Void - + + + + + + Void + + + + + + + operator!=(const Void &) constexpr const : bool + + + + + + + operator==(const Void &) constexpr const : bool + + + - - - + + + + + + lift_void + + T + + + - - operator!=(const Void &) constexpr const : bool + + + + + + lift_void + + void + + + - - - + + + + + + drop_void + + T + + + - - operator==(const Void &) constexpr const : bool + + + + + + drop_void + + Void + + + - - - - - - lift_void - - T - - + + + + + + A + + + - - - - - lift_void - - void - - + + + + + + R + + + + + + + + la : lift_void_t<A> * + + + + + + + lv : lift_void_t<void> * + + - - - - - drop_void - - T - - - - - - - - drop_void - - Void - - - - - - - - A - - - - - - - - R - - - - - - - - - la : lift_void_t<A> * - - - - - - - lv : lift_void_t<void> * - - - - - - - - - - - la - - - - la + + + + + + + + + + + + + + + + + la + + + + + + la + diff --git a/docs/test_cases/t00034_class_mermaid.svg b/docs/test_cases/t00034_class_mermaid.svg index d1a177cfe..28d5c5bb3 100644 --- a/docs/test_cases/t00034_class_mermaid.svg +++ b/docs/test_cases/t00034_class_mermaid.svg @@ -1,59 +1,64 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -89,7 +94,7 @@ - +
@@ -102,11 +107,11 @@ - + - - - + + +
@@ -118,20 +123,20 @@ Void
- +
- +operator!=(const Void &) : [const,constexpr] bool + +operator!=(const Void &) : : [const,constexpr] bool
- +
- +operator==(const Void &) : [const,constexpr] bool + +operator==(const Void &) : : [const,constexpr] bool
- + @@ -150,7 +155,7 @@
- + @@ -169,7 +174,7 @@ - + @@ -188,7 +193,7 @@ - + @@ -207,7 +212,7 @@ - + @@ -226,7 +231,7 @@ - + @@ -244,12 +249,12 @@
- +la : lift_void_t<A> + +la : lift_void_t<A>
- +lv : lift_void_t<void> + +lv : lift_void_t<void>
diff --git a/docs/test_cases/t00035_class.svg b/docs/test_cases/t00035_class.svg index 764ae0822..045084b52 100644 --- a/docs/test_cases/t00035_class.svg +++ b/docs/test_cases/t00035_class.svg @@ -1,53 +1,57 @@ - + - - - - - - - - - - - Top - - + + + + + + Top + + + - - - - - Left - - + + + + + + Left + + + - - - - - Center - - + + + + + + Center + + + - - - - - Bottom - - + + + + + + Bottom + + + - - - - - Right - - + + + + + + Right + + + diff --git a/docs/test_cases/t00035_class_mermaid.svg b/docs/test_cases/t00035_class_mermaid.svg index 5efbb9228..1313c9815 100644 --- a/docs/test_cases/t00035_class_mermaid.svg +++ b/docs/test_cases/t00035_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,7 +57,7 @@ - + @@ -71,7 +76,7 @@
- + @@ -90,7 +95,7 @@ - + @@ -109,7 +114,7 @@ - + @@ -128,7 +133,7 @@ - + diff --git a/docs/test_cases/t00036_class.svg b/docs/test_cases/t00036_class.svg index 3aead8f9e..dfe0ecb3c 100644 --- a/docs/test_cases/t00036_class.svg +++ b/docs/test_cases/t00036_class.svg @@ -1,94 +1,112 @@ - + - - - - - - - - - ns1 - - - ns11 - - - ns111 - - - ns2 - - - ns22 - - - - - E - - blue - yellow - + + + + ns1 + + + + + ns11 + + + + + ns111 + + + + + ns2 + + + + + ns22 + + + + + + + E + + blue + yellow + + - - - - - A - - T - - + + + + + + A + + T + + + + + + + + a : T + + - - - + + + + + + A + + int + + + - - a : T + + + + + + B + + + + + + + + a_int : A<int> + + - - - - - A - - int - - + + + + + + C + + + - - - - - B - - - - - - - - - a_int : A<int> - - - - - - C - - - - - - - a_int - - + + + + + a_int + + + + + diff --git a/docs/test_cases/t00036_class_mermaid.svg b/docs/test_cases/t00036_class_mermaid.svg index eb6aed9ad..1a07fc88a 100644 --- a/docs/test_cases/t00036_class_mermaid.svg +++ b/docs/test_cases/t00036_class_mermaid.svg @@ -1,57 +1,62 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - + + @@ -78,7 +83,7 @@ - + @@ -107,7 +112,7 @@ - + @@ -131,7 +136,7 @@ - + @@ -155,7 +160,7 @@ - + @@ -174,7 +179,7 @@ - + diff --git a/docs/test_cases/t00037.md b/docs/test_cases/t00037.md index 63199dcab..049e6700d 100644 --- a/docs/test_cases/t00037.md +++ b/docs/test_cases/t00037.md @@ -255,6 +255,7 @@ struct A { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00037_class.svg b/docs/test_cases/t00037_class.svg index c06624ec6..45bc6de12 100644 --- a/docs/test_cases/t00037_class.svg +++ b/docs/test_cases/t00037_class.svg @@ -1,127 +1,135 @@ - + - - - - - - - - - - - ST - - - - - - - - - dimensions : ST::(anonymous_662) - - - - - - - units : ST::(anonymous_792) - - - - - - ST::(dimensions) - - - - - - - - - t : double - - - - - - - x : double - - - - - - - y : double - - - - - - - z : double - - - - - - ST::(units) - - - - - - - - - c : double - - - - - - - h : double - - - - - - A - - - - - - - - A() : void - - - - - - - - st : ST - - - - - dimensions - - - - units - - - - st + + + + + + ST + + + + + + + + dimensions : ST::(anonymous_662) + + + + + + + units : ST::(anonymous_792) + + + + + + + + + ST::(dimensions) + + + + + + + + t : double + + + + + + + x : double + + + + + + + y : double + + + + + + + z : double + + + + + + + + + ST::(units) + + + + + + + + c : double + + + + + + + h : double + + + + + + + + + A + + + + + + + A() : void + + + + + + + + st : ST + + + + + + + + dimensions + + + + + + units + + + + + + st + diff --git a/docs/test_cases/t00037_class_mermaid.svg b/docs/test_cases/t00037_class_mermaid.svg index 78bf339ab..536e2ec1f 100644 --- a/docs/test_cases/t00037_class_mermaid.svg +++ b/docs/test_cases/t00037_class_mermaid.svg @@ -1,58 +1,63 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - + + + @@ -90,7 +95,7 @@ - + @@ -119,7 +124,7 @@ - + @@ -158,7 +163,7 @@ - + @@ -187,11 +192,11 @@ - + - - - + + +
@@ -203,14 +208,14 @@ A
- +
+st : ST
- +
- +A() : void + +A() : : void
diff --git a/docs/test_cases/t00038_class.svg b/docs/test_cases/t00038_class.svg index e5ecdc209..6d0c6b33b 100644 --- a/docs/test_cases/t00038_class.svg +++ b/docs/test_cases/t00038_class.svg @@ -1,158 +1,202 @@ - + - - - - - - - - - - - thirdparty::ns1::color_t - - red - green - blue - + + + + + + thirdparty::ns1::color_t + + red + green + blue + + - - - - - thirdparty::ns1::E - - + + + + + + thirdparty::ns1::E + + + - - - - - property_t - - property_a - property_b - property_c - + + + + + + property_t + + property_a + property_b + property_c + + - - - - - A - - + + + + + + A + + + - - - - - B - - + + + + + + B + + + - - - - - C - - + + + + + + C + + + - - - - - key_t - - + + + + + + key_t + + + + + + + + key : std::string + + - - - + + + + + + map + + T + + + - - key : std::string + + + + + + map + + std::integral_constant<thirdparty::ns1::color_t,thirdparty::ns1::color_t::red> + + + - - - - - map - - T - - + + + + + + map + + std::integral_constant<property_t,property_t::property_a> + + + - - - - - map - - std::integral_constant<thirdparty::ns1::color_t,thirdparty::ns1::color_t::red> - - + + + + + + map + + std::vector<std::integral_constant<property_t,property_t::property_b>> + + + - - - - - map - - std::integral_constant<property_t,property_t::property_a> - - + + + + + + map + + std::map<key_t,std::vector<std::integral_constant<property_t,property_t::property_c>>> + + + - - - - - map - - std::vector<std::integral_constant<property_t,property_t::property_b>> - - - - - - - - map - - std::map<key_t,std::vector<std::integral_constant<property_t,property_t::property_c>>> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00038_class_mermaid.svg b/docs/test_cases/t00038_class_mermaid.svg index 28561545f..4235a9776 100644 --- a/docs/test_cases/t00038_class_mermaid.svg +++ b/docs/test_cases/t00038_class_mermaid.svg @@ -1,68 +1,73 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -202,7 +207,7 @@ - + @@ -236,7 +241,7 @@
- + @@ -255,7 +260,7 @@ - + @@ -289,7 +294,7 @@ - + @@ -308,7 +313,7 @@ - + @@ -327,7 +332,7 @@ - + @@ -346,7 +351,7 @@ - + @@ -370,7 +375,7 @@ - + @@ -389,7 +394,7 @@ - + @@ -408,7 +413,7 @@ - + @@ -427,7 +432,7 @@ - + @@ -446,7 +451,7 @@ - + diff --git a/docs/test_cases/t00039_class.svg b/docs/test_cases/t00039_class.svg index 229f8cd50..8cdc67232 100644 --- a/docs/test_cases/t00039_class.svg +++ b/docs/test_cases/t00039_class.svg @@ -1,194 +1,242 @@ - + - - - - - - - - - - - C - - - - - - - - D - - - - - - - - E - - - - - - - - CD - - - - - - - - DE - - - - - - - - CDE - - - - - - - - A - - - - - - - - AA - - - - - - - - AAA - - - - - - - - - b : B * - - - - - - ns2::AAAA - - - - - - - - ns3::F - - T - - - - - - - - - t : T * - - - - - - ns3::FF - - T,M - - - - - - - - - m : M * - - - - - - ns3::FE - - T,M - - - - - - - - - m : M * - - - - - - ns3::FFF - - T,M,N - - - - - - - - - n : N * - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + C + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + CD + + + + + + + + + + DE + + + + + + + + + + CDE + + + + + + + + + + A + + + + + + + + + + AA + + + + + + + + + + AAA + + + + + + + + b : B * + + + + + + + + + ns2::AAAA + + + + + + + + + + ns3::F + + T + + + + + + + + t : T * + + + + + + + + + ns3::FF + + T,M + + + + + + + + m : M * + + + + + + + + + ns3::FE + + T,M + + + + + + + + m : M * + + + + + + + + + ns3::FFF + + T,M,N + + + + + + + + n : N * + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00039_class_mermaid.svg b/docs/test_cases/t00039_class_mermaid.svg index 403290f4e..0352df2d9 100644 --- a/docs/test_cases/t00039_class_mermaid.svg +++ b/docs/test_cases/t00039_class_mermaid.svg @@ -1,68 +1,73 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -184,7 +189,7 @@ - + @@ -203,7 +208,7 @@ - + @@ -222,7 +227,7 @@ - + @@ -241,7 +246,7 @@ - + @@ -260,7 +265,7 @@ - + @@ -279,7 +284,7 @@ - + @@ -298,7 +303,7 @@ - + @@ -317,7 +322,7 @@ - + @@ -336,7 +341,7 @@ - + @@ -354,13 +359,13 @@
- +b : B + +b : B
- + @@ -379,7 +384,7 @@ - + @@ -397,13 +402,13 @@
- +t : T + +t : T
- + @@ -421,13 +426,13 @@
- +m : M + +m : M
- + @@ -445,13 +450,13 @@
- +m : M + +m : M
- + @@ -469,7 +474,7 @@
- +n : N + +n : N
diff --git a/docs/test_cases/t00040.md b/docs/test_cases/t00040.md index c38261845..04e8bf624 100644 --- a/docs/test_cases/t00040.md +++ b/docs/test_cases/t00040.md @@ -112,6 +112,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -221,6 +222,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -269,6 +271,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00040_class.svg b/docs/test_cases/t00040_class.svg index aab8e2137..4681fac17 100644 --- a/docs/test_cases/t00040_class.svg +++ b/docs/test_cases/t00040_class.svg @@ -1,84 +1,90 @@ - + - - - - - - - - - - - A - + + + + + + A + + + + + + + get_a() : int + + + + + + + + ii_ : int + + - - - + + + + + + AA + + + - - get_a() : int + + + + + + AAA + + + + + + + get_aaa() : int + + + + + + + + b : B * + + - - - - + + + + + + R + + + + + + + foo(A * a) : void + + + - - ii_ : int - - - - - - AA - - - - - - - - AAA - - - - - - - - get_aaa() : int - - - - - - - - b : B * - - - - - - R - - - - - - - - foo(A * a) : void - - - - - - + + + + + + + + diff --git a/docs/test_cases/t00040_class_mermaid.svg b/docs/test_cases/t00040_class_mermaid.svg index 8613ef7c4..270e597c3 100644 --- a/docs/test_cases/t00040_class_mermaid.svg +++ b/docs/test_cases/t00040_class_mermaid.svg @@ -1,57 +1,62 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - + + @@ -74,11 +79,11 @@ - + - - - + + +
@@ -90,20 +95,20 @@ A
- +
#ii_ : int
- +
- +get_a() : int + +get_a() : : int
- + @@ -122,11 +127,11 @@ - + - - - + + +
@@ -138,24 +143,24 @@ AAA
- +
- +b : B + +b : B
- +
- +get_aaa() : int + +get_aaa() : : int
- + - - - + + +
@@ -167,9 +172,9 @@ R
- +
- +foo(A * a) : void + +foo(A * a) : : void
diff --git a/docs/test_cases/t00041.md b/docs/test_cases/t00041.md index 970ddd93c..c0415dc5c 100644 --- a/docs/test_cases/t00041.md +++ b/docs/test_cases/t00041.md @@ -243,6 +243,7 @@ struct NM : public N { }; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00041_class.svg b/docs/test_cases/t00041_class.svg index 5ecbe97f6..c100cfb76 100644 --- a/docs/test_cases/t00041_class.svg +++ b/docs/test_cases/t00041_class.svg @@ -1,138 +1,164 @@ - + - - - - - - - - - - - R - - - - - - - - D - - - - - - - - - rr : RR * - - - - - - E - - - - - - - - F - - - - - - - - RR - - - - - - - - foo(H * h) : void - - - - - - - - e : E * - - - - - - - f : F * - - - - - - - g : detail::G * - - - - - - RRR - - - - - - - - ns1::N - - - - - - - - ns1::NN - - - - - - - - ns1::NM - - - - - - - rr - - - +e - - - +f - - - - - - - - + + + + + + R + + + + + + + + + + D + + + + + + + + rr : RR * + + + + + + + + + E + + + + + + + + + + F + + + + + + + + + + RR + + + + + + + foo(H * h) : void + + + + + + + + e : E * + + + + + + + f : F * + + + + + + + g : detail::G * + + + + + + + + + RRR + + + + + + + + + + ns1::N + + + + + + + + + + ns1::NN + + + + + + + + + + ns1::NM + + + + + + + + + rr + + + + + +e + + + + + +f + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00041_class_mermaid.svg b/docs/test_cases/t00041_class_mermaid.svg index d952a32eb..06623edd4 100644 --- a/docs/test_cases/t00041_class_mermaid.svg +++ b/docs/test_cases/t00041_class_mermaid.svg @@ -1,62 +1,67 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -130,7 +135,7 @@ - + @@ -149,7 +154,7 @@
- + @@ -167,13 +172,13 @@
- +rr : RR + +rr : RR
- + @@ -192,7 +197,7 @@ - + @@ -211,11 +216,11 @@ - + - - - + + +
@@ -227,30 +232,30 @@ RR
- +
- +e : E + +e : E
- +
- +f : F + +f : F
- +
- +g : detail::G + +g : detail::G
- +
- +foo(H * h) : void + +foo(H * h) : : void
- + @@ -269,7 +274,7 @@ - + @@ -288,7 +293,7 @@ - + @@ -307,7 +312,7 @@ - + diff --git a/docs/test_cases/t00042_class.svg b/docs/test_cases/t00042_class.svg index 0cb9049f8..8131ed129 100644 --- a/docs/test_cases/t00042_class.svg +++ b/docs/test_cases/t00042_class.svg @@ -1,109 +1,123 @@ - + - - - - - - - - - - - A - - T - - + + + + + + A + + T + + + + + + + + a : T + + - - - + + + + + + A + + void + + + + + + + + a : void * + + - - a : T + + + + + + B + + T,K + + + + + + + + b : T + + + + + + + bb : K + + - - - - - A - - void - - + + + + + + A + + double + + + - - - + + + + + + A + + std::string + + + - - a : void * + + + + + + B + + int,float + + + - - - - - B - - T,K - - - - - - - - - b : T - - - - - - - bb : K - - - - - - A - - double - - - - - - - - A - - std::string - - - - - - - - B - - int,float - - - - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00042_class_mermaid.svg b/docs/test_cases/t00042_class_mermaid.svg index bff212c99..0f98c0161 100644 --- a/docs/test_cases/t00042_class_mermaid.svg +++ b/docs/test_cases/t00042_class_mermaid.svg @@ -1,59 +1,64 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -102,7 +107,7 @@ - + @@ -126,7 +131,7 @@ - + @@ -144,13 +149,13 @@
- +a : void + +a : void
- + @@ -179,7 +184,7 @@ - + @@ -198,7 +203,7 @@ - + @@ -217,7 +222,7 @@ - + diff --git a/docs/test_cases/t00043.md b/docs/test_cases/t00043.md index e2557d365..4c868ac5d 100644 --- a/docs/test_cases/t00043.md +++ b/docs/test_cases/t00043.md @@ -127,6 +127,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -180,6 +181,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -233,6 +235,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -286,6 +289,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -316,6 +320,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -369,6 +374,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -473,6 +479,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -503,6 +510,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -556,6 +564,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -609,6 +618,7 @@ struct J { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00043_class.svg b/docs/test_cases/t00043_class.svg index 86acef316..4472d6a0b 100644 --- a/docs/test_cases/t00043_class.svg +++ b/docs/test_cases/t00043_class.svg @@ -1,197 +1,237 @@ - + - - - - - - - - - dependants - - - dependencies - - - - - A - - - - - - - - B - - - - - - - - b(A * a) : void - - - - - - - BB - - - - - - - - bb(A * a) : void - - - - - - - C - - - - - - - - c(B * b) : void - - - - - - - D - - - - - - - - d(C * c) : void - - - - - - - dd(BB * bb) : void - - - - - - - E - - - - - - - - e(D * d) : void - - - - - - - G - - - - - - - - GG - - - - - - - - H - - - - - - - - h(G * g) : void - - - - - - - hh(GG * gg) : void - - - - - - - I - - - - - - - - i(H * h) : void - - - - - - - J - - - - - - - - i(I * i) : void - - - - - - - - - - - - - - - - - - - - - - + + + + dependants + + + + + dependencies + + + + + + + A + + + + + + + + + + B + + + + + + + b(A * a) : void + + + + + + + + + + BB + + + + + + + bb(A * a) : void + + + + + + + + + + C + + + + + + + c(B * b) : void + + + + + + + + + + D + + + + + + + d(C * c) : void + + + + + + + dd(BB * bb) : void + + + + + + + + + + E + + + + + + + e(D * d) : void + + + + + + + + + + G + + + + + + + + + + GG + + + + + + + + + + H + + + + + + + h(G * g) : void + + + + + + + hh(GG * gg) : void + + + + + + + + + + I + + + + + + + i(H * h) : void + + + + + + + + + + J + + + + + + + i(I * i) : void + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00043_class_mermaid.svg b/docs/test_cases/t00043_class_mermaid.svg index fd971ff0d..eaaaa3ff0 100644 --- a/docs/test_cases/t00043_class_mermaid.svg +++ b/docs/test_cases/t00043_class_mermaid.svg @@ -1,65 +1,70 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -174,7 +179,7 @@ - + @@ -193,11 +198,11 @@ - + - - - + + +
@@ -209,15 +214,15 @@ dependants::B
- +
- +b(A * a) : void + +b(A * a) : : void
- + @@ -233,19 +238,19 @@ dependants::BB - +
- +bb(A * a) : void + +bb(A * a) : : void
- + - - - + + +
@@ -257,19 +262,19 @@ dependants::C
- +
- +c(B * b) : void + +c(B * b) : : void
- + - - - + + +
@@ -281,24 +286,24 @@ dependants::D
- +
- +d(C * c) : void + +d(C * c) : : void
- +
- +dd(BB * bb) : void + +dd(BB * bb) : : void
- + - - - + + +
@@ -310,15 +315,15 @@ dependants::E
- +
- +e(D * d) : void + +e(D * d) : : void
- + @@ -337,7 +342,7 @@ - + @@ -356,11 +361,11 @@ - + - - - + + +
@@ -372,20 +377,20 @@ dependencies::H
- +
- +h(G * g) : void + +h(G * g) : : void
- +
- +hh(GG * gg) : void + +hh(GG * gg) : : void
- + @@ -401,15 +406,15 @@ dependencies::I - +
- +i(H * h) : void + +i(H * h) : : void
- + @@ -425,9 +430,9 @@ dependencies::J - +
- +i(I * i) : void + +i(I * i) : : void
diff --git a/docs/test_cases/t00044.md b/docs/test_cases/t00044.md index 96c0e5ced..281212afd 100644 --- a/docs/test_cases/t00044.md +++ b/docs/test_cases/t00044.md @@ -141,6 +141,7 @@ struct R { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -171,6 +172,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00044_class.svg b/docs/test_cases/t00044_class.svg index 5eea494fb..b32a0c494 100644 --- a/docs/test_cases/t00044_class.svg +++ b/docs/test_cases/t00044_class.svg @@ -1,123 +1,145 @@ - + - - - - - - - - - - - signal_handler - - Ret(Args...),A - - + + + + + + signal_handler + + Ret(Args...),A + + + - - - - - sink - - signal_handler<Ret(Args...),A> - + + + + + + sink + + signal_handler<Ret(Args...),A> + + + + + + + sink(signal_t & sh) : void + + + + get_signal<CastTo>() : CastTo * + + + + + + + signal : signal_t * + + - - - + + + + + + signal_handler + + void(int),bool + + + - - sink(signal_t & sh) : void + + + + + + sink + + signal_handler<void(int),bool> + + + - - - get_signal<CastTo>() : CastTo * - - - - + + + + + + R + + + + + + + + sink1 : sink<signal_handler<void (int),bool>> + + - - signal : signal_t * + + + + + + signal_handler + + T,A + + + - - - - - signal_handler - - void(int),bool - - + + + + + + sink + + T + + + - - - - - sink - - signal_handler<void(int),bool> - - - - - - - - R - - - - - - - - - sink1 : sink<signal_handler<void (int),bool>> - - - - - - signal_handler - - T,A - - - - - - - - sink - - T - - - - - - - - - signal - - - - - - - - - - - - sink1 + + + + + + + + + signal + + + + + + + + + + + + + + + + + + + + + + sink1 + diff --git a/docs/test_cases/t00044_class_mermaid.svg b/docs/test_cases/t00044_class_mermaid.svg index d98a99da1..cbb345859 100644 --- a/docs/test_cases/t00044_class_mermaid.svg +++ b/docs/test_cases/t00044_class_mermaid.svg @@ -1,62 +1,67 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -138,7 +143,7 @@ - + @@ -157,7 +162,7 @@
- + @@ -175,23 +180,23 @@
- -signal : signal_t + -signal : signal_t
- +
- +sink(signal_t & sh) : void + +sink(signal_t & sh) : : void
- +
- +get_signal() : CastTo + +get_signal() : : CastTo
- + @@ -210,7 +215,7 @@ - + @@ -229,7 +234,7 @@ - + @@ -253,7 +258,7 @@ - + @@ -272,7 +277,7 @@ - + diff --git a/docs/test_cases/t00045.md b/docs/test_cases/t00045.md index f5372bcc6..bbf47be4e 100644 --- a/docs/test_cases/t00045.md +++ b/docs/test_cases/t00045.md @@ -424,6 +424,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00045_class.svg b/docs/test_cases/t00045_class.svg index f13e9bbfb..2f94fc492 100644 --- a/docs/test_cases/t00045_class.svg +++ b/docs/test_cases/t00045_class.svg @@ -1,182 +1,220 @@ - + - - - - - - - - - - - A - - - - - - - - AA - - - - - - - - AAA - - - - - - - - AAAA - - T - - - - - - - - - t : T - - - - - - ns1::A - - - - - - - - ns1::ns2::A - - - - - - - - ns1::ns2::B - - - - - - - - ns1::ns2::C - - - - - - - - ns1::ns2::D - - - - - - - - ns1::ns2::E - - - - - - - - ns1::ns2::AAA - - - - - - - - ns1::ns2::R - - - - - - - - foo(AA & aa) : void - - - - - - - - a : A * - - - - - - - ns1_a : ns1::A * - - - - - - - ns1_ns2_a : ns1::ns2::A * - - - - - - - root_a : ::A * - - - - - - - - - - - - - - +a - - - - ns1_ns2_a - - - - ns1_a - - - - root_a - - - - «friend» + + + + + + A + + + + + + + + + + AA + + + + + + + + + + AAA + + + + + + + + + + AAAA + + T + + + + + + + + t : T + + + + + + + + + ns1::A + + + + + + + + + + ns1::ns2::A + + + + + + + + + + ns1::ns2::B + + + + + + + + + + ns1::ns2::C + + + + + + + + + + ns1::ns2::D + + + + + + + + + + ns1::ns2::E + + + + + + + + + + ns1::ns2::AAA + + + + + + + + + + ns1::ns2::R + + + + + + + foo(AA & aa) : void + + + + + + + + a : A * + + + + + + + ns1_a : ns1::A * + + + + + + + ns1_ns2_a : ns1::ns2::A * + + + + + + + root_a : ::A * + + + + + + + + + + + + + + + + + + + + + + + + + + + +a + + + + + + ns1_ns2_a + + + + + + ns1_a + + + + + + root_a + + + + + + «friend» + diff --git a/docs/test_cases/t00045_class_mermaid.svg b/docs/test_cases/t00045_class_mermaid.svg index ad7e8a41e..5a819e372 100644 --- a/docs/test_cases/t00045_class_mermaid.svg +++ b/docs/test_cases/t00045_class_mermaid.svg @@ -1,65 +1,70 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -166,7 +171,7 @@ - + @@ -185,7 +190,7 @@ - + @@ -204,7 +209,7 @@ - + @@ -223,7 +228,7 @@ - + @@ -247,7 +252,7 @@ - + @@ -266,7 +271,7 @@ - + @@ -285,7 +290,7 @@ - + @@ -304,7 +309,7 @@ - + @@ -323,7 +328,7 @@ - + @@ -342,7 +347,7 @@ - + @@ -361,7 +366,7 @@ - + @@ -380,7 +385,7 @@ - + @@ -398,27 +403,27 @@
- +a : A + +a : A
- +ns1_a : ns1::A + +ns1_a : ns1::A
- +ns1_ns2_a : ns1::ns2::A + +ns1_ns2_a : ns1::ns2::A
- +root_a : ::A + +root_a : ::A
- +
- +foo(AA & aa) : void + +foo(AA & aa) : : void
diff --git a/docs/test_cases/t00046.md b/docs/test_cases/t00046.md index 8db7f304b..0bf362c4e 100644 --- a/docs/test_cases/t00046.md +++ b/docs/test_cases/t00046.md @@ -349,6 +349,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00046_class.svg b/docs/test_cases/t00046_class.svg index 3d5f5f35a..989e6a259 100644 --- a/docs/test_cases/t00046_class.svg +++ b/docs/test_cases/t00046_class.svg @@ -1,158 +1,192 @@ - + - - - - - - - - - ns1 - - - ns2 - - - - - A - - - - - - - - A - - - - - - - - B - - - - - - - - C - - - - - - - - D - - - - - - - - E - - - - - - - - R - - - - - - - - foo(AA & aa) : void - - - - - - - - a : A * - - - - - - - i : std::vector<std::uint8_t> - - - - - - - ns1_a : ns1::A * - - - - - - - ns1_ns2_a : ns1::ns2::A * - - - - - - - root_a : ::A * - - - - - - A - - - - - - - - AA - - - - - - - - - - - - - - - - +a - - - - ns1_ns2_a - - - - ns1_a - - - - root_a + + + + ns1 + + + + + ns2 + + + + + + + A + + + + + + + + + + A + + + + + + + + + + B + + + + + + + + + + C + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + R + + + + + + + foo(AA & aa) : void + + + + + + + + a : A * + + + + + + + i : std::vector<std::uint8_t> + + + + + + + ns1_a : ns1::A * + + + + + + + ns1_ns2_a : ns1::ns2::A * + + + + + + + root_a : ::A * + + + + + + + + + A + + + + + + + + + + AA + + + + + + + + + + + + + + + + + + + + + + + + + + + + +a + + + + + + ns1_ns2_a + + + + + + ns1_a + + + + + + root_a + diff --git a/docs/test_cases/t00046_class_mermaid.svg b/docs/test_cases/t00046_class_mermaid.svg index c6735e8dc..db937c7ee 100644 --- a/docs/test_cases/t00046_class_mermaid.svg +++ b/docs/test_cases/t00046_class_mermaid.svg @@ -1,64 +1,69 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - + + + + + + + + + @@ -154,7 +159,7 @@ - + @@ -173,7 +178,7 @@
- + @@ -192,7 +197,7 @@ - + @@ -211,7 +216,7 @@ - + @@ -230,7 +235,7 @@ - + @@ -249,7 +254,7 @@ - + @@ -268,7 +273,7 @@ - + @@ -287,7 +292,7 @@ - + @@ -306,7 +311,7 @@ - + @@ -324,7 +329,7 @@
- +a : A + +a : A
@@ -334,22 +339,22 @@
- +ns1_a : ns1::A + +ns1_a : ns1::A
- +ns1_ns2_a : ns1::ns2::A + +ns1_ns2_a : ns1::ns2::A
- +root_a : ::A + +root_a : ::A
- +
- +foo(AA & aa) : void + +foo(AA & aa) : : void
diff --git a/docs/test_cases/t00047_class.svg b/docs/test_cases/t00047_class.svg index b2906ed0d..ae0f51c2f 100644 --- a/docs/test_cases/t00047_class.svg +++ b/docs/test_cases/t00047_class.svg @@ -1,59 +1,67 @@ - + - - - - - - - - - - - conditional_t - - Else - - + + + + + + conditional_t + + Else + + + - - - - - conditional_t - - std::true_type,Result,Tail... - - + + + + + + conditional_t + + std::true_type,Result,Tail... + + + - - - - - conditional_t - - std::false_type,Result,Tail... - - + + + + + + conditional_t + + std::false_type,Result,Tail... + + + - - - - - conditional_t - - Ts... - - + + + + + + conditional_t + + Ts... + + + - - - - - - + + + + + + + + + + + + diff --git a/docs/test_cases/t00047_class_mermaid.svg b/docs/test_cases/t00047_class_mermaid.svg index a13c7f798..4307e1e51 100644 --- a/docs/test_cases/t00047_class_mermaid.svg +++ b/docs/test_cases/t00047_class_mermaid.svg @@ -1,58 +1,63 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - + + + @@ -90,7 +95,7 @@ - + @@ -109,7 +114,7 @@
- + @@ -128,7 +133,7 @@ - + @@ -147,7 +152,7 @@ - + diff --git a/docs/test_cases/t00048.md b/docs/test_cases/t00048.md index 070fa0919..44d0f0097 100644 --- a/docs/test_cases/t00048.md +++ b/docs/test_cases/t00048.md @@ -14,6 +14,28 @@ diagrams: - clanguml::t00048 ``` ## Source code +File t00048.h +```cpp +#pragma once + +namespace clanguml { +namespace t00048 { + +struct Base { + int base; + + virtual void foo() = 0; +}; + +template struct BaseTemplate { + T base; + + virtual void foo() = 0; +}; + +} +} +``` File b_t00048.h ```cpp #include "t00048.h" @@ -38,14 +60,14 @@ template struct BTemplate : public BaseTemplate { } } ``` -File b_t00048.cc +File a_t00048.cc ```cpp -#include "b_t00048.h" +#include "a_t00048.h" namespace clanguml { namespace t00048 { -void B::foo() { } +void A::foo() { } } } @@ -83,36 +105,14 @@ template struct ATemplate : public BaseTemplate { } } ``` -File a_t00048.cc -```cpp -#include "a_t00048.h" - -namespace clanguml { -namespace t00048 { - -void A::foo() { } - -} -} -``` -File t00048.h +File b_t00048.cc ```cpp -#pragma once +#include "b_t00048.h" namespace clanguml { namespace t00048 { -struct Base { - int base; - - virtual void foo() = 0; -}; - -template struct BaseTemplate { - T base; - - virtual void foo() = 0; -}; +void B::foo() { } } } @@ -157,6 +157,7 @@ template struct BaseTemplate { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -218,6 +219,7 @@ template struct BaseTemplate { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -293,6 +295,7 @@ template struct BaseTemplate { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -361,6 +364,7 @@ template struct BaseTemplate { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -436,6 +440,7 @@ template struct BaseTemplate { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -504,6 +509,7 @@ template struct BaseTemplate { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00048_class.svg b/docs/test_cases/t00048_class.svg index a03cfad97..316a05457 100644 --- a/docs/test_cases/t00048_class.svg +++ b/docs/test_cases/t00048_class.svg @@ -1,159 +1,173 @@ - + - - - - - - - - - - - Base - - - - - - - - foo() = 0 : void - - - - - - - - base : int - - - - - - BaseTemplate - - T - - - - - - - - foo() = 0 : void - - - - - - - - base : T - - - - - - B - - - - - - - - foo() : void - - - - - - - - b : int - - - - - - BTemplate - - T - - - - - - - - foo() : void - - - - - - - - b : T - - - - - - A - - - - - - - - foo() : void - - - - - - - - a : int - - - - - - ATemplate - - T - - - - - - - - foo() : void - - - - - - - - a : T - - - - - - - - - + + + + + + Base + + + + + + + foo() = 0 : void + + + + + + + + base : int + + + + + + + + + BaseTemplate + + T + + + + + + + foo() = 0 : void + + + + + + + + base : T + + + + + + + + + B + + + + + + + foo() : void + + + + + + + + b : int + + + + + + + + + BTemplate + + T + + + + + + + foo() : void + + + + + + + + b : T + + + + + + + + + A + + + + + + + foo() : void + + + + + + + + a : int + + + + + + + + + ATemplate + + T + + + + + + + foo() : void + + + + + + + + a : T + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00048_class_mermaid.svg b/docs/test_cases/t00048_class_mermaid.svg index 53eda9062..4176e6597 100644 --- a/docs/test_cases/t00048_class_mermaid.svg +++ b/docs/test_cases/t00048_class_mermaid.svg @@ -1,59 +1,64 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -94,11 +99,11 @@ - + - - - + + +
@@ -110,20 +115,20 @@ Base
- +
+base : int
- +
- +foo() : void + +foo() : : void
- + @@ -144,19 +149,19 @@ +base : T
- +
- +foo() : void + +foo() : : void
- + - - - + + +
@@ -168,20 +173,20 @@ B
- +
+b : int
- +
- +foo() : void + +foo() : : void
- + @@ -202,19 +207,19 @@ +b : T - +
- +foo() : void + +foo() : : void
- + - - - + + +
@@ -226,20 +231,20 @@ A
- +
+a : int
- +
- +foo() : void + +foo() : : void
- + @@ -260,9 +265,9 @@ +a : T - +
- +foo() : void + +foo() : : void
diff --git a/docs/test_cases/t00049.md b/docs/test_cases/t00049.md index e70de0d7a..0cb5f1be1 100644 --- a/docs/test_cases/t00049.md +++ b/docs/test_cases/t00049.md @@ -84,6 +84,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -263,6 +264,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -288,6 +290,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00049_class.svg b/docs/test_cases/t00049_class.svg index 7d5112277..445bcf292 100644 --- a/docs/test_cases/t00049_class.svg +++ b/docs/test_cases/t00049_class.svg @@ -1,128 +1,144 @@ - + - - - - - - - - - - - A - - T - - - - - - - - get_a() : T & - - - - - - - - a : T - - - - - - A - - intmap - - - - - - - - A - - thestring - - - - - - - - A - - string_vector - - - - - - - - R - - - - - - - - get_int_map() : A<intmap> - - - - - - - set_int_map(A<intmap> && int_map) : void - - - - - - - - a_int_map : A<intmap> - - - - - - - a_string : A<thestring> - - - - - - - a_vector_string : A<string_vector> - - - - - - - - - - - a_string - - - - a_vector_string - - - - a_int_map + + + + + + A + + T + + + + + + + get_a() : T & + + + + + + + + a : T + + + + + + + + + A + + intmap + + + + + + + + + + A + + thestring + + + + + + + + + + A + + string_vector + + + + + + + + + + R + + + + + + + get_int_map() : A<intmap> + + + + + + + set_int_map(A<intmap> && int_map) : void + + + + + + + + a_int_map : A<intmap> + + + + + + + a_string : A<thestring> + + + + + + + a_vector_string : A<string_vector> + + + + + + + + + + + + + + + + + + + + a_string + + + + + + a_vector_string + + + + + + a_int_map + diff --git a/docs/test_cases/t00049_class_mermaid.svg b/docs/test_cases/t00049_class_mermaid.svg index 4e4016f58..6fca5a524 100644 --- a/docs/test_cases/t00049_class_mermaid.svg +++ b/docs/test_cases/t00049_class_mermaid.svg @@ -1,61 +1,66 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - + + + + + + @@ -126,11 +131,11 @@ - + - - - + + +
@@ -142,20 +147,20 @@ A<T>
- +
+a : T
- +
- +get_a() : T & + +get_a() : : T &
- + @@ -174,7 +179,7 @@ - + @@ -193,7 +198,7 @@ - + @@ -212,11 +217,11 @@ - + - - - + + +
@@ -228,29 +233,29 @@ R
- +
+a_int_map : A<intmap>
- +
+a_string : A<thestring>
- +
+a_vector_string : A<string_vector>
- +
- +get_int_map() : A<intmap> + +get_int_map() : : A<intmap>
- +
- +set_int_map(A && int_map) : void + +set_int_map(A && int_map) : : void
diff --git a/docs/test_cases/t00050_class.svg b/docs/test_cases/t00050_class.svg index e955e8351..a91d09c00 100644 --- a/docs/test_cases/t00050_class.svg +++ b/docs/test_cases/t00050_class.svg @@ -1,186 +1,226 @@ - + - - - - - - - - - - - A - - + + + + + + A + + + - - - - - B - - + + + + + + B + + + - - - - - C - - + + + + + + C + + + - - - - - utils::D - - + + + + + + utils::D + + + - - - - - E - - E1 - E2 - E3 - + + + + + + E + + E1 + E2 + E3 + + - - - - - F - - T,V,int N - - + + + + + + F + + T,V,int N + + + + + + + + t : T[N] + + + + + + + v : V + + - - - + + + + + + G + + + - - t : T[N] + + + + + + NoComment + + + - - - - - - v : V - - - - - - G - - - - - - - - NoComment - - - - - - Lorem ipsum dolor sit - - - Lorem ipsum dolor sit - - - Lorem ipsum dolor sit amet consectetur adipiscing elit, urna consequat felis - vehicula class ultricies mollis dictumst, aenean non a in donec nulla. - Phasellus ante pellentesque erat cum risus consequat imperdiet aliquam, - integer placerat et turpis mi eros nec lobortis taciti, vehicula nisl litora - tellus ligula porttitor metus. - - Vivamus integer non suscipit taciti mus etiam at primis tempor sagittis sit, - euismod libero facilisi aptent elementum felis blandit cursus gravida sociis - erat ante, eleifend lectus nullam dapibus netus feugiat curae curabitur est - ad. Massa curae fringilla porttitor quam sollicitudin iaculis aptent leo - ligula euismod dictumst, orci penatibus mauris eros etiam praesent erat - volutpat posuere hac. Metus fringilla nec ullamcorper odio aliquam lacinia - conubia mauris tempor, etiam ultricies proin quisque lectus sociis id - tristique, integer phasellus taciti pretium adipiscing tortor sagittis - ligula. - - Mollis pretium lorem primis senectus habitasse lectus scelerisque - donec, ultricies tortor suspendisse adipiscing fusce morbi volutpat - pellentesque, consectetur mi risus molestie curae malesuada cum. Dignissim - lacus convallis massa mauris enim ad mattis magnis senectus montes, mollis - taciti phasellus accumsan bibendum semper blandit suspendisse faucibus nibh - est, metus lobortis morbi cras magna vivamus per risus fermentum. Dapibus - imperdiet praesent magnis ridiculus congue gravida curabitur dictum - sagittis, enim et magna sit inceptos sodales parturient pharetra mollis, - aenean vel nostra tellus commodo pretium sapien sociosqu. - - - This is a short description of class G. - - - This is an intermediate description of class G. - - - This is a long description of class G. - - - Lorem ipsum - - - - TODO - 1. Write meaningful comment - - - - - TODO - 2. Write tests - - - - - TODO - 3. Implement - - - - Long comment example - - - - TODO - Implement... - - - - Simple array wrapper. - - - - Template parameters - - T - Type of array elements. - - V - Type of regular element. - - N - Size of T array. - - + + + + Lorem ipsum dolor sit + + + + + Lorem ipsum dolor sit + + + + + Lorem ipsum dolor sit amet consectetur adipiscing elit, urna consequat felis + vehicula class ultricies mollis dictumst, aenean non a in donec nulla. + Phasellus ante pellentesque erat cum risus consequat imperdiet aliquam, + integer placerat et turpis mi eros nec lobortis taciti, vehicula nisl litora + tellus ligula porttitor metus. +   + Vivamus integer non suscipit taciti mus etiam at primis tempor sagittis sit, + euismod libero facilisi aptent elementum felis blandit cursus gravida sociis + erat ante, eleifend lectus nullam dapibus netus feugiat curae curabitur est + ad. Massa curae fringilla porttitor quam sollicitudin iaculis aptent leo + ligula euismod dictumst, orci penatibus mauris eros etiam praesent erat + volutpat posuere hac. Metus fringilla nec ullamcorper odio aliquam lacinia + conubia mauris tempor, etiam ultricies proin quisque lectus sociis id + tristique, integer phasellus taciti pretium adipiscing tortor sagittis + ligula. +   + Mollis pretium lorem primis senectus habitasse lectus scelerisque + donec, ultricies tortor suspendisse adipiscing fusce morbi volutpat + pellentesque, consectetur mi risus molestie curae malesuada cum. Dignissim + lacus convallis massa mauris enim ad mattis magnis senectus montes, mollis + taciti phasellus accumsan bibendum semper blandit suspendisse faucibus nibh + est, metus lobortis morbi cras magna vivamus per risus fermentum. Dapibus + imperdiet praesent magnis ridiculus congue gravida curabitur dictum + sagittis, enim et magna sit inceptos sodales parturient pharetra mollis, + aenean vel nostra tellus commodo pretium sapien sociosqu. + + + + + This is a short description of class G. + + + + + This is an intermediate description of class G. + + + + + This is a long description of class G. + + + + + Lorem ipsum +   + + + + + TODO + 1. Write meaningful comment +   +   + + + + + TODO + 2. Write tests +   +   + + + + + TODO + 3. Implement +   + + + + + Long comment example +   + + + + + TODO + Implement... +   + + + + + Simple array wrapper. +   + + + + + Template parameters +   + T + Type of array elements. +   + V + Type of regular element. +   + N + Size of T array. +   + + + + diff --git a/docs/test_cases/t00050_class_mermaid.svg b/docs/test_cases/t00050_class_mermaid.svg index ec0691141..285ccd5a5 100644 --- a/docs/test_cases/t00050_class_mermaid.svg +++ b/docs/test_cases/t00050_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -184,7 +189,7 @@ - + @@ -203,7 +208,7 @@
- + @@ -222,7 +227,7 @@ - + @@ -241,7 +246,7 @@ - + @@ -260,7 +265,7 @@ - + @@ -294,7 +299,7 @@ - + @@ -323,7 +328,7 @@ - + @@ -342,7 +347,7 @@ - + diff --git a/docs/test_cases/t00051.md b/docs/test_cases/t00051.md index 0f6587fa4..d587523a7 100644 --- a/docs/test_cases/t00051.md +++ b/docs/test_cases/t00051.md @@ -138,6 +138,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -172,6 +173,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -197,6 +199,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -291,6 +294,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -325,6 +329,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -350,6 +355,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -411,6 +417,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -436,6 +443,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -461,6 +469,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -486,6 +495,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -541,6 +551,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -599,6 +610,7 @@ A::custom_thread2 A::start_thread2() "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00051_class.svg b/docs/test_cases/t00051_class.svg index cefcead2f..24b03bb40 100644 --- a/docs/test_cases/t00051_class.svg +++ b/docs/test_cases/t00051_class.svg @@ -1,178 +1,190 @@ - + - - - - - - - - - - - B - - F,FF=F - - - - - - - - B(F && f, FF && ff) : void - - - - - - - - f() : void - - - - - - - ff() : void - - - - - - - - f_ : F - - - - - - - ff_ : FF - - - - - - B - - (lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27) - - - - - - - - B((lambda at t00051.cc:43:18) && f, (lambda at t00051.cc:43:27) && ff) : void - - - - - - - - f() : void - - - - - - - ff() : void - - - - - - - - f_ : (lambda at t00051.cc:43:18) - - - - - - - ff_ : (lambda at t00051.cc:43:27) - - - - - - A - - - - - - - - get_function() : (lambda at t00051.cc:48:16) - - - - - - - start_thread1() : custom_thread1 - - - - - - - start_thread2() : custom_thread2 - - - - - - - start_thread3() : B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)> - - - - - - - A::custom_thread1 - - - custom_thread1<Function,Args...>(Function && f, Args &&... args) : void - - - - - - - A::custom_thread2 - - - - - - - - thread((lambda at t00051.cc:59:27) &&) : void - - - - - - - - - - - - - - + + + + + + B + + F,FF=F + + + + + + + B(F && f, FF && ff) : void + + + + + + + + f() : void + + + + + + + ff() : void + + + + + + + + f_ : F + + + + + + + ff_ : FF + + + + + + + + + B + + (lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27) + + + + + + + B((lambda at t00051.cc:43:18) && f, (lambda at t00051.cc:43:27) && ff) : void + + + + + + + + f() : void + + + + + + + ff() : void + + + + + + + + f_ : (lambda at t00051.cc:43:18) + + + + + + + ff_ : (lambda at t00051.cc:43:27) + + + + + + + + + A + + + + + + + get_function() : (lambda at t00051.cc:48:16) + + + + + + + start_thread1() : custom_thread1 + + + + + + + start_thread2() : custom_thread2 + + + + + + + start_thread3() : B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)> + + + + + + + + + + A::custom_thread1 + + + custom_thread1<Function,Args...>(Function && f, Args &&... args) : void + + + + + + + + + A::custom_thread2 + + + + + + + thread((lambda at t00051.cc:59:27) &&) : void + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00051_class_mermaid.svg b/docs/test_cases/t00051_class_mermaid.svg index 539b4cf24..5a37ffa40 100644 --- a/docs/test_cases/t00051_class_mermaid.svg +++ b/docs/test_cases/t00051_class_mermaid.svg @@ -1,59 +1,64 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -102,11 +107,11 @@ - + - - - + + +
@@ -118,39 +123,39 @@ B<F,FF=F>
- +
+f_ : F
- +
+ff_ : FF
- +
- +B(F && f, FF && ff) : void + +B(F && f, FF && ff) : : void
- +
- +f() : void + +f() : : void
- +
- +ff() : void + +ff() : : void
- + - - - + + +
@@ -162,39 +167,39 @@ B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)>
- +
+f_ : (lambda at t00051.cc:43:18)
- +
+ff_ : (lambda at t00051.cc:43:27)
- +
- +B((lambda at t00051.cc:43:18) && f, (lambda at t00051.cc:43:27) && ff) : void + +B((lambda at t00051.cc:43:18) && f,(lambda at t00051.cc:43:27) && ff) : : void
- +
- +f() : void + +f() : : void
- +
- +ff() : void + +ff() : : void
- + - - - + + +
@@ -206,34 +211,34 @@ A
- +
- -get_function() : (lambda at t00051.cc:48:16) + -get_function() : : (lambda at t00051.cc:48:16)
- +
- -start_thread1() : custom_thread1 + -start_thread1() : : custom_thread1
- +
- -start_thread2() : custom_thread2 + -start_thread2() : : custom_thread2
- +
- -start_thread3() : B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)> + -start_thread3() : : B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)>
- + - - - + + +
@@ -245,15 +250,15 @@ A::custom_thread1
- +
- +custom_thread1(Function && f, Args &&... args) : void + +custom_thread1(Function && f, Args &&... args) : : void
- + @@ -271,7 +276,7 @@
- +thread((lambda at t00051.cc:59:27) : &&) : void + +thread((lambda at t00051.cc:59:27) &&) : : void
diff --git a/docs/test_cases/t00052.md b/docs/test_cases/t00052.md index 93ab2c7b2..d2c7298e3 100644 --- a/docs/test_cases/t00052.md +++ b/docs/test_cases/t00052.md @@ -77,6 +77,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -101,6 +102,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -152,6 +154,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -182,6 +185,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -240,6 +244,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00052_class.svg b/docs/test_cases/t00052_class.svg index b830e31ec..91d2d5ca1 100644 --- a/docs/test_cases/t00052_class.svg +++ b/docs/test_cases/t00052_class.svg @@ -1,118 +1,134 @@ - + - - - - - - - - - - - A - - - a<T>(T p) : T - - aa<F,Q>(F && f, Q q) : void - + + + + + + A + + + a<T>(T p) : T + + aa<F,Q>(F && f, Q q) : void + + - - - - - B - - T - + + + + + + B + + T + + + + + + + b(T t) : T + + + bb<F>(F && f, T t) : T + + - - - + + + + + + C + + T + + + c<P>(P p) : T + + - - b(T t) : T + + + + + + B + + int + + + - - bb<F>(F && f, T t) : T - - - - - - C - - T - - - c<P>(P p) : T - + + + + + + C + + int + + + - - - - - B - - int - - + + + + + + R + + + + + + + + a : A + + + + + + + b : B<int> + + + + + + + c : C<int> + + - - - - - C - - int - - - - - - - - R - - - - - - - - - a : A - - - - - - - b : B<int> - - - - - - - c : C<int> - - - - - - - - +a - - - +b - - - +c + + + + + + + + + + + + +a + + + + + +b + + + + + +c + diff --git a/docs/test_cases/t00052_class_mermaid.svg b/docs/test_cases/t00052_class_mermaid.svg index e8dbe0544..08284ae5f 100644 --- a/docs/test_cases/t00052_class_mermaid.svg +++ b/docs/test_cases/t00052_class_mermaid.svg @@ -1,60 +1,65 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - + + + + + @@ -79,7 +84,7 @@
- +
@@ -90,7 +95,7 @@ - +
@@ -101,7 +106,7 @@ - +
@@ -114,11 +119,11 @@ - + - - - + + +
@@ -130,24 +135,24 @@ A
- +
- +a(T p) : T + +a(T p) : : T
- +
- +aa(F && f, Q q) : void + +aa(F && f, Q q) : : void
- + - - - + + +
@@ -159,24 +164,24 @@ B<T>
- +
- +b(T t) : T + +b(T t) : : T
- +
- +bb(F && f, T t) : T + +bb(F && f, T t) : : T
- + - - - + + +
@@ -188,15 +193,15 @@ C<T>
- +
- -c<p>(P p) : T</p> + -c<p>(P p) : : T</p>
- + @@ -215,7 +220,7 @@ - + @@ -234,7 +239,7 @@ - + diff --git a/docs/test_cases/t00053_class.svg b/docs/test_cases/t00053_class.svg index a9b9434d1..97d8245ee 100644 --- a/docs/test_cases/t00053_class.svg +++ b/docs/test_cases/t00053_class.svg @@ -1,152 +1,180 @@ - + - - - - - - - - - - - A - - - - - - - - C - - - - - - - - E - - - - - - - - F - - - - - - - - a - - - - - - - - c - - - - - - - - e - - - - - - - - f - - - - - - - - h - - hhh - - - - - - - j - - jjj - - - - - - - b - - - - - - - - d - - - - - - - - g - - - - - - - - B - - - - - - - - D - - - - - - - - G - - - - - - - - i - - iii - + + + + + + b + + + + + + + + + + d + + + + + + + + + + g + + + + + + + + + + B + + + + + + + + + + D + + + + + + + + + + G + + + + + + + + + + i + + iii + + + + + + + + + A + + + + + + + + + + C + + + + + + + + + + E + + + + + + + + + + F + + + + + + + + + + a + + + + + + + + + + c + + + + + + + + + + e + + + + + + + + + + f + + + + + + + + + + h + + hhh + + + + + + + + + j + + jjj + + diff --git a/docs/test_cases/t00053_class_mermaid.svg b/docs/test_cases/t00053_class_mermaid.svg index 502ce4009..f2310e51b 100644 --- a/docs/test_cases/t00053_class_mermaid.svg +++ b/docs/test_cases/t00053_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,7 +57,7 @@ - + @@ -71,7 +76,7 @@ - + @@ -90,7 +95,7 @@ - + @@ -109,7 +114,7 @@ - + @@ -128,7 +133,7 @@ - + @@ -147,7 +152,7 @@ - + @@ -166,7 +171,7 @@ - + @@ -190,7 +195,7 @@ - + @@ -209,7 +214,7 @@ - + @@ -228,7 +233,7 @@ - + @@ -247,7 +252,7 @@ - + @@ -266,7 +271,7 @@ - + @@ -285,7 +290,7 @@ - + @@ -304,7 +309,7 @@ - + @@ -323,7 +328,7 @@ - + @@ -342,7 +347,7 @@ - + @@ -366,7 +371,7 @@ - + diff --git a/docs/test_cases/t00054_class.svg b/docs/test_cases/t00054_class.svg index d6d071555..34360e65e 100644 --- a/docs/test_cases/t00054_class.svg +++ b/docs/test_cases/t00054_class.svg @@ -1,183 +1,393 @@ - + - - - - - - - - - detail - - - detail2 - - - detail3 - - - detail4 - - - - - d - - - - - - - - a - - - - - - - - - - - c - - - - - - - - - - - e - - - - - - - - - - - C - - - - - - - - F - - - - - - - - D - - - - - - - - E - - - - - - - - A - - - - - - - - - - B - - - - - - - - - - f - - - - - - - - - - G - - - - - - - - - h - - hhh - hhh - - - - - - - i - - iii - iii - - - - - - - j - - jjj - jjj - - - - - - - b - - - - - - - - g - - + + + + detail + + + + + detail2 + + + + + detail3 + + + + + detail4 + + + + + + + d + + + + + + + + + + a + + + + + + + + + + c + + + + + + + + + + e + + + + + + + + + + C + + + + + + + + + + F + + + + + + + + + + A + + + + + + + + + + B + + + + + + + + + + a + + + + + + + + + + f + + + + + + + + + + c + + + + + + + + + + e + + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + A + + + + + + + + + + B + + + + + + + + + + G + + + + + + + + + + a + + + + + + + + + + f + + + + + + + + + + h + + hhh + + + + + + + + + i + + iii + + + + + + + + + j + + jjj + + + + + + + + + c + + + + + + + + + + e + + + + + + + + + + b + + + + + + + + + + g + + + + + + + + + + A + + + + + + + + + + B + + + + + + + + + + G + + + + + + + + + + a + + + + + + + + + + f + + + + + + + + + + h + + hhh + + + + + + + + + i + + iii + + + + + + + + + j + + jjj + + + + + + + + + c + + + + + + + + + + e + + + diff --git a/docs/test_cases/t00054_class_mermaid.svg b/docs/test_cases/t00054_class_mermaid.svg index 64dbb6704..4d59ee5df 100644 --- a/docs/test_cases/t00054_class_mermaid.svg +++ b/docs/test_cases/t00054_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,7 +57,7 @@ - + @@ -71,7 +76,7 @@ - + @@ -90,7 +95,7 @@ - + @@ -109,7 +114,7 @@ - + @@ -128,7 +133,7 @@ - + @@ -147,7 +152,7 @@ - + @@ -166,7 +171,7 @@ - + @@ -185,7 +190,7 @@ - + @@ -204,7 +209,7 @@ - + @@ -223,7 +228,7 @@ - + @@ -242,7 +247,7 @@ - + @@ -261,7 +266,7 @@ - + @@ -280,7 +285,7 @@ - + @@ -304,7 +309,7 @@ - + @@ -328,7 +333,7 @@ - + @@ -352,7 +357,7 @@ - + @@ -371,7 +376,7 @@ - + diff --git a/docs/test_cases/t00055_class.svg b/docs/test_cases/t00055_class.svg index fd032d8b4..d21ec1e62 100644 --- a/docs/test_cases/t00055_class.svg +++ b/docs/test_cases/t00055_class.svg @@ -1,93 +1,107 @@ - + - - - - - - - - - - - A - - + + + + + + A + + + - - - - - B - - + + + + + + B + + + - - - - - C - - + + + + + + C + + + - - - - - D - - + + + + + + D + + + - - - - - E - - + + + + + + E + + + - - - - - F - - + + + + + + F + + + - - - - - G - - + + + + + + G + + + - - - - - H - - + + + + + + H + + + - - - - - I - - + + + + + + I + + + - - - - - J - - + + + + + + J + + + diff --git a/docs/test_cases/t00055_class_mermaid.svg b/docs/test_cases/t00055_class_mermaid.svg index 6e63c0cc6..eb90b9d14 100644 --- a/docs/test_cases/t00055_class_mermaid.svg +++ b/docs/test_cases/t00055_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,7 +57,7 @@ - + @@ -71,7 +76,7 @@ - + @@ -90,7 +95,7 @@ - + @@ -109,7 +114,7 @@ - + @@ -128,7 +133,7 @@ - + @@ -147,7 +152,7 @@ - + @@ -166,7 +171,7 @@ - + @@ -185,7 +190,7 @@ - + @@ -204,7 +209,7 @@ - + @@ -223,7 +228,7 @@ - + diff --git a/docs/test_cases/t00056_class.svg b/docs/test_cases/t00056_class.svg index 206c7d55b..d40f662ab 100644 --- a/docs/test_cases/t00056_class.svg +++ b/docs/test_cases/t00056_class.svg @@ -1,277 +1,327 @@ - + - - - - - - - - - - - «concept» - greater_than_simple - - T,L - - - - - - - - «concept» - greater_than_with_requires - - T,P - - (T l,P r) - - sizeof (l) > sizeof (r) - - - - - - «concept» - max_four_bytes - - T - - - - - - - - «concept» - iterable - - T - - (T container) - - container.begin() - container.end() - - - - - - «concept» - has_value_type - - T - - () - - typename T::value_type - - - - - - «concept» - convertible_to_string - - T - - (T s) - - std::string{s} - {std::to_string(s)} noexcept - {std::to_string(s)} -> std::same_as<std::string> - - - - - - «concept» - iterable_with_value_type - - T - - - - - - - - «concept» - iterable_or_small_value_type - - T - - - - - - - - A - - max_four_bytes T - - - - - - - - - a : T - - - - - - B - - T - - - - - - - - - b : T - - - - - - C - - convertible_to_string T - - - - - - - - - c : T - - - - - - D - - iterable T1,T2,iterable T3,T4,T5 - - - - - - - - E - - T1,T2,T3 - - - - - - - - - e1 : T1 - - - - - - - e2 : T2 - - - - - - - e3 : T3 - - - - - - F - - T1,T2,T3 - - - - - - - - - f1 : T1 - - - - - - - f2 : T2 - - - - - - - f3 : T3 - - - - T - - - T - - - T - - - T - - - T - - - T - - - T - - - T - - - T1 - - - T3 - - - T2 - - - T5 - - - T1,T3 - - - T1,T3 + + + + + + «concept» + greater_than_simple + + T,L + + + + + + + + + + «concept» + greater_than_with_requires + + T,P + + (T l,P r) + + sizeof (l) > sizeof (r) + + + + + + + + «concept» + max_four_bytes + + T + + + + + + + + + + «concept» + iterable + + T + + (T container) + + container.begin() + container.end() + + + + + + + + «concept» + has_value_type + + T + + () + + typename T::value_type + + + + + + + + «concept» + convertible_to_string + + T + + (T s) + + std::string{s} + {std::to_string(s)} noexcept + {std::to_string(s)} -> std::same_as<std::string> + + + + + + + + «concept» + iterable_with_value_type + + T + + + + + + + + + + «concept» + iterable_or_small_value_type + + T + + + + + + + + + + A + + max_four_bytes T + + + + + + + + a : T + + + + + + + + + B + + T + + + + + + + + b : T + + + + + + + + + C + + convertible_to_string T + + + + + + + + c : T + + + + + + + + + D + + iterable T1,T2,iterable T3,T4,T5 + + + + + + + + + + E + + T1,T2,T3 + + + + + + + + e1 : T1 + + + + + + + e2 : T2 + + + + + + + e3 : T3 + + + + + + + + + F + + T1,T2,T3 + + + + + + + + f1 : T1 + + + + + + + f2 : T2 + + + + + + + f3 : T3 + + + + + + + T + + + + + T + + + + + T + + + + + T + + + + + T + + + + + T + + + + + T + + + + + T + + + + + T1 + + + + + T3 + + + + + T2 + + + + + T5 + + + + + T1,T3 + + + + + T1,T3 + diff --git a/docs/test_cases/t00056_class_mermaid.svg b/docs/test_cases/t00056_class_mermaid.svg index 7e2134529..ddec9958c 100644 --- a/docs/test_cases/t00056_class_mermaid.svg +++ b/docs/test_cases/t00056_class_mermaid.svg @@ -1,69 +1,74 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -222,7 +227,7 @@ - + @@ -241,7 +246,7 @@ - + @@ -262,15 +267,15 @@ "sizeof (l) > sizeof (r)"
- +
- "(T l,P r)" + "(T l,P r) : "
- + @@ -289,7 +294,7 @@ - + @@ -315,15 +320,15 @@ "container.end()"
- +
- "(T container)" + "(T container) : "
- + @@ -344,15 +349,15 @@ "typename T::value_type"
- +
- "()" + "() : "
- + @@ -383,15 +388,15 @@ "{std::to_string(s)} -> std::same_as<std::string>"
- +
- "(T s)" + "(T s) : "
- + @@ -410,7 +415,7 @@ - + @@ -429,7 +434,7 @@ - + @@ -453,7 +458,7 @@ - + @@ -477,7 +482,7 @@ - + @@ -501,7 +506,7 @@ - + @@ -520,7 +525,7 @@ - + @@ -554,7 +559,7 @@ - + diff --git a/docs/test_cases/t00057_class.svg b/docs/test_cases/t00057_class.svg index 071a65411..f0caa633c 100644 --- a/docs/test_cases/t00057_class.svg +++ b/docs/test_cases/t00057_class.svg @@ -1,271 +1,303 @@ - + - - - - - - - - - - - t00057_A - - - - - - - - - a1 : int - - - - - - t00057_B - - - - - - - - - b1 : int - - - - - - t00057_C - - - - - - - - - c1 : int - - - - - - «union» - t00057_D - - - - - - - - - d1 : int - - - - - - - d2 : float - - - - - - t00057_E - - - - - - - - - coordinates : t00057_E::(anonymous_739) - - - - - - - e : int - - - - - - - height : t00057_E::(anonymous_807) - - - - - - t00057_E::(coordinates) - - - - - - - - - x : int - - - - - - - y : int - - - - - - «union» - t00057_E::(height) - - - - - - - - - t : double - - - - - - - z : int - - - - - - t00057_G - - - - - - - - - g1 : int - - - - - - t00057_R - - - - - - - - - a : struct t00057_A - - - - - - - b : t00057_B - - - - - - - c : struct t00057_C * - - - - - - - d : union t00057_D - - - - - - - e : struct t00057_E * - - - - - - - f : struct t00057_F * - - - - - - - g : struct t00057_G * - - - - - - t00057_F - - - - - - - - - f1 : int - - - - - coordinates - - - - height - - - +a - - - +b - - - +c - - - +d - - - +e - - - +f - - - +g + + + + + + t00057_A + + + + + + + + a1 : int + + + + + + + + + t00057_B + + + + + + + + b1 : int + + + + + + + + + t00057_C + + + + + + + + c1 : int + + + + + + + + + «union» + t00057_D + + + + + + + + d1 : int + + + + + + + d2 : float + + + + + + + + + t00057_E + + + + + + + + coordinates : t00057_E::(anonymous_739) + + + + + + + e : int + + + + + + + height : t00057_E::(anonymous_807) + + + + + + + + + t00057_E::(coordinates) + + + + + + + + x : int + + + + + + + y : int + + + + + + + + + «union» + t00057_E::(height) + + + + + + + + t : double + + + + + + + z : int + + + + + + + + + t00057_G + + + + + + + + g1 : int + + + + + + + + + t00057_R + + + + + + + + a : struct t00057_A + + + + + + + b : t00057_B + + + + + + + c : struct t00057_C * + + + + + + + d : union t00057_D + + + + + + + e : struct t00057_E * + + + + + + + f : struct t00057_F * + + + + + + + g : struct t00057_G * + + + + + + + + + t00057_F + + + + + + + + f1 : int + + + + + + + + coordinates + + + + + + height + + + + + +a + + + + + +b + + + + + +c + + + + + +d + + + + + +e + + + + + +f + + + + + +g + diff --git a/docs/test_cases/t00057_class_mermaid.svg b/docs/test_cases/t00057_class_mermaid.svg index de8a84d2c..49b3cf31a 100644 --- a/docs/test_cases/t00057_class_mermaid.svg +++ b/docs/test_cases/t00057_class_mermaid.svg @@ -1,64 +1,69 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - + + + + + + + + + @@ -162,7 +167,7 @@ - + @@ -186,7 +191,7 @@ - + @@ -210,7 +215,7 @@ - + @@ -234,7 +239,7 @@ - + @@ -263,7 +268,7 @@ - + @@ -297,7 +302,7 @@ - + @@ -326,7 +331,7 @@ - + @@ -355,7 +360,7 @@ - + @@ -379,7 +384,7 @@ - + @@ -407,7 +412,7 @@
- +c : struct t00057_C + +c : struct t00057_C
@@ -417,23 +422,23 @@
- +e : struct t00057_E + +e : struct t00057_E
- +f : struct t00057_F + +f : struct t00057_F
- +g : struct t00057_G + +g : struct t00057_G
- + diff --git a/docs/test_cases/t00058_class.svg b/docs/test_cases/t00058_class.svg index 16214db59..9f0c2b62d 100644 --- a/docs/test_cases/t00058_class.svg +++ b/docs/test_cases/t00058_class.svg @@ -1,151 +1,179 @@ - + - - - - - - - - - - - first_type - - T,Args... - - - - - - - - «concept» - same_as_first_type - - T,Args... - - - - - - - - A - - T,Args... - - - - - - - - - a : std::vector<T> - - - - - - B - - T,P,Args... - - - - - - - - - b : std::vector<T> - - - - - - - bb : P - - - - - - A - - int,int,double,std::string - - - - - - - - A - - int,int - - - - - - - - B - - int,std::string,int,double,A<int,int> - - - - - - - - R - - - - - - - - - aa : A<int,int,double,std::string> - - - - - - - bb : B<int,std::string,int,double,A<int,int>> - - - - T,Args... - - - T,Args... - - - - - - - - - - - - aa - - - - bb - - + + + + + + first_type + + T,Args... + + + + + + + + + + «concept» + same_as_first_type + + T,Args... + + + + + + + + + + A + + T,Args... + + + + + + + + a : std::vector<T> + + + + + + + + + B + + T,P,Args... + + + + + + + + b : std::vector<T> + + + + + + + bb : P + + + + + + + + + A + + int,int,double,std::string + + + + + + + + + + A + + int,int + + + + + + + + + + B + + int,std::string,int,double,A<int,int> + + + + + + + + + + R + + + + + + + + aa : A<int,int,double,std::string> + + + + + + + bb : B<int,std::string,int,double,A<int,int>> + + + + + + + T,Args... + + + + + T,Args... + + + + + + + + + + + + + + + + + + + + + + aa + + + + + + bb + + + + + diff --git a/docs/test_cases/t00058_class_mermaid.svg b/docs/test_cases/t00058_class_mermaid.svg index 5ad57e5aa..11c5ca29f 100644 --- a/docs/test_cases/t00058_class_mermaid.svg +++ b/docs/test_cases/t00058_class_mermaid.svg @@ -1,63 +1,68 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - + + + + + + + + @@ -150,7 +155,7 @@ - + @@ -169,7 +174,7 @@ - + @@ -188,7 +193,7 @@ - + @@ -212,7 +217,7 @@ - + @@ -241,7 +246,7 @@ - + @@ -260,7 +265,7 @@ - + @@ -279,7 +284,7 @@ - + @@ -298,7 +303,7 @@ - + diff --git a/docs/test_cases/t00059.md b/docs/test_cases/t00059.md index 1686ab54d..52380b9c4 100644 --- a/docs/test_cases/t00059.md +++ b/docs/test_cases/t00059.md @@ -165,6 +165,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -190,6 +191,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -238,6 +240,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -263,6 +266,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -311,6 +315,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -336,6 +341,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -384,6 +390,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -409,6 +416,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -457,6 +465,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -482,6 +491,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00059_class.svg b/docs/test_cases/t00059_class.svg index a9b69bb08..1f5f4c682 100644 --- a/docs/test_cases/t00059_class.svg +++ b/docs/test_cases/t00059_class.svg @@ -1,239 +1,279 @@ - + - - - - - - - - - - - «concept» - fruit_c - - T - - (T t) - - T{} - t.get_name() - - - - - - «concept» - apple_c - - T - - (T t) - - t.get_sweetness() - - - - - - «concept» - orange_c - - T - - (T t) - - t.get_bitterness() - - - - - - gala_apple - - - - - - - - get_name() const : std::string - - - - - - - get_sweetness() const : float - - - - - - - empire_apple - - - - - - - - get_name() const : std::string - - - - - - - get_sweetness() const : float - - - - - - - lima_orange - - - - - - - - get_bitterness() const : float - - - - - - - get_name() const : std::string - - - - - - - valencia_orange - - - - - - - - get_bitterness() const : float - - - - - - - get_name() const : std::string - - - - - - - fruit_factory - - apple_c TA,orange_c TO - - - - - - - - create_apple() const : TA - - - - - - - create_orange() const : TO - - - - - - - fruit_factory - - gala_apple,valencia_orange - - - - - - - - fruit_factory - - empire_apple,lima_orange - - - - - - - - R - - - - - - - - - factory_1 : fruit_factory_1 - - - - - - - factory_2 : fruit_factory_2 - - - - T - - - T - - - TA - - - TO - - - - - - - - - - - - - - - - factory_1 - - - - factory_2 + + + + + + «concept» + fruit_c + + T + + (T t) + + T{} + t.get_name() + + + + + + + + «concept» + apple_c + + T + + (T t) + + t.get_sweetness() + + + + + + + + «concept» + orange_c + + T + + (T t) + + t.get_bitterness() + + + + + + + + gala_apple + + + + + + + get_name() const : std::string + + + + + + + get_sweetness() const : float + + + + + + + + + + empire_apple + + + + + + + get_name() const : std::string + + + + + + + get_sweetness() const : float + + + + + + + + + + lima_orange + + + + + + + get_bitterness() const : float + + + + + + + get_name() const : std::string + + + + + + + + + + valencia_orange + + + + + + + get_bitterness() const : float + + + + + + + get_name() const : std::string + + + + + + + + + + fruit_factory + + apple_c TA,orange_c TO + + + + + + + create_apple() const : TA + + + + + + + create_orange() const : TO + + + + + + + + + + fruit_factory + + gala_apple,valencia_orange + + + + + + + + + + fruit_factory + + empire_apple,lima_orange + + + + + + + + + + R + + + + + + + + factory_1 : fruit_factory_1 + + + + + + + factory_2 : fruit_factory_2 + + + + + + + T + + + + + T + + + + + TA + + + + + TO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + factory_1 + + + + + + factory_2 + diff --git a/docs/test_cases/t00059_class_mermaid.svg b/docs/test_cases/t00059_class_mermaid.svg index 0025a45da..7f4a244e7 100644 --- a/docs/test_cases/t00059_class_mermaid.svg +++ b/docs/test_cases/t00059_class_mermaid.svg @@ -1,70 +1,75 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - +
@@ -75,7 +80,7 @@ - +
@@ -86,7 +91,7 @@ - +
@@ -97,7 +102,7 @@ - + - +
- "(T t)" + "(T t) : "
- + - - - + + +
@@ -306,24 +311,24 @@ gala_apple
- +
- +get_name() : [const] std::string + +get_name() : : [const] std::string
- +
- +get_sweetness() : [const] float + +get_sweetness() : : [const] float
- + - - - + + +
@@ -335,24 +340,24 @@ empire_apple
- +
- +get_name() : [const] std::string + +get_name() : : [const] std::string
- +
- +get_sweetness() : [const] float + +get_sweetness() : : [const] float
- + - - - + + +
@@ -364,24 +369,24 @@ lima_orange
- +
- +get_bitterness() : [const] float + +get_bitterness() : : [const] float
- +
- +get_name() : [const] std::string + +get_name() : : [const] std::string
- + - - - + + +
@@ -393,20 +398,20 @@ valencia_orange
- +
- +get_bitterness() : [const] float + +get_bitterness() : : [const] float
- +
- +get_name() : [const] std::string + +get_name() : : [const] std::string
- + @@ -422,20 +427,20 @@ fruit_factory<apple_c TA,orange_c TO>
- +
- +create_apple() : [const] TA + +create_apple() : : [const] TA
- +
- +create_orange() : [const] TO + +create_orange() : : [const] TO
- + @@ -454,7 +459,7 @@
- + @@ -473,7 +478,7 @@ - + diff --git a/docs/test_cases/t00060_class.svg b/docs/test_cases/t00060_class.svg index f19e215f5..647fcb940 100644 --- a/docs/test_cases/t00060_class.svg +++ b/docs/test_cases/t00060_class.svg @@ -1,99 +1,117 @@ - + - - - - - - - - - - - A - - + + + + + + A + + + - - - - - B - - + + + + + + B + + + - - - - - C - - + + + + + + C + + + - - - - - D - - + + + + + + D + + + - - - - - G - - T - - + + + + + + G + + T + + + + + + + + g : T + + - - - + + + + + + H + + T,P + + + + + + + + h : G<T> + + + + + + + hh : P + + - - g : T - - - - - - H - - T,P - - - - - - - - - h : G<T> - - - - - - - hh : P - - - - - - - - - - - - +h - - + + + + + + + + + + + + + + + + + + + + +h + + + + + diff --git a/docs/test_cases/t00060_class_mermaid.svg b/docs/test_cases/t00060_class_mermaid.svg index 48e49b728..8a9fa1184 100644 --- a/docs/test_cases/t00060_class_mermaid.svg +++ b/docs/test_cases/t00060_class_mermaid.svg @@ -1,61 +1,66 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - + + + + + + @@ -116,7 +121,7 @@ - + @@ -135,7 +140,7 @@ - + @@ -154,7 +159,7 @@ - + @@ -173,7 +178,7 @@ - + @@ -192,7 +197,7 @@ - + @@ -216,7 +221,7 @@ - + diff --git a/docs/test_cases/t00061_class.svg b/docs/test_cases/t00061_class.svg index c5a158562..57fb05ec3 100644 --- a/docs/test_cases/t00061_class.svg +++ b/docs/test_cases/t00061_class.svg @@ -1,21 +1,17 @@ - + - - - - - - - - - - - A - - + + + + + + A + + + diff --git a/docs/test_cases/t00061_class_mermaid.svg b/docs/test_cases/t00061_class_mermaid.svg index 04eaa65c0..05e5864b9 100644 --- a/docs/test_cases/t00061_class_mermaid.svg +++ b/docs/test_cases/t00061_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,7 +57,7 @@ - + diff --git a/docs/test_cases/t00062_class.svg b/docs/test_cases/t00062_class.svg index dfd806dc7..9b297ba64 100644 --- a/docs/test_cases/t00062_class.svg +++ b/docs/test_cases/t00062_class.svg @@ -1,464 +1,544 @@ - + - - - - - - - - - - - A - - U & - - - - - - - - - u : U & - - - - - - A - - std::map<std::string,U> & - - - - - - - - - u : U & - - - - - - A - - std::map<std::string,std::map<std::string,std::string>> & - - - - - - - - A - - U * * - - - - - - - - - u : U ** - - - - - - A - - U * * const* - - - - - - - - - u : U *** - - - - - - A - - U const volatile* const volatile - - - - - - - - - u : U *** - - - - - - A - - U && - - - - - - - - - u : U && - - - - - - A - - U const& - - - - - - - - - u : const U & - - - - - - A - - M C::* - - - - - - - - - c : C & - - - - - - - m : M C::* - - - - - - A - - M C::* && - - - - - - - - - c : C && - - - - - - - m : M C::* - - - - - - A - - M (C::*)(Arg) - - - - - - - - - c : C & - - - - - - - m : M C::* - - - - - - A - - int (C::*)(bool) - - - - - - - - - c : C & - - - - - - A - - M (C::*)(Arg) && - - - - - - - - - c : C && - - - - - - - m : M C::* - - - - - - A - - float (C::*)(int) && - - - - - - - - - c : C && - - - - - - - mf : float C::* - - - - - - A - - M (C::*)(Arg1,Arg2,Arg3) - - - - - - - - - c : C & - - - - - - - m : M C::* - - - - - - A - - char[N] - - - - - - - - - n : char[N] - - - - - - A - - char[1000] - - - - - - - - - n : std::vector<char> - - - - - - A - - char[M][L][K] - - - - - - - - - klm : char[K][L][M] - - - - - - A - - U(...) - - - - - - - - - u : bool - - - - - - A - - C<T> - - - - - - - - - c : C<T> - - - - - - A - - C<T,Args...> - - - - - - - - - args : std::tuple<Args...> - - - - - - - c : C<T> - - - - - - A - - T - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + A + + U & + + + + + + + + u : U & + + + + + + + + + A + + std::map<std::string,U> & + + + + + + + + u : U & + + + + + + + + + A + + std::map<std::string,std::map<std::string,std::string>> & + + + + + + + + + + A + + U * * + + + + + + + + u : U ** + + + + + + + + + A + + U * * const* + + + + + + + + u : U *** + + + + + + + + + A + + U const volatile* const volatile + + + + + + + + u : U *** + + + + + + + + + A + + U && + + + + + + + + u : U && + + + + + + + + + A + + U const& + + + + + + + + u : const U & + + + + + + + + + A + + M C::* + + + + + + + + c : C & + + + + + + + m : M C::* + + + + + + + + + A + + M C::* && + + + + + + + + c : C && + + + + + + + m : M C::* + + + + + + + + + A + + M (C::*)(Arg) + + + + + + + + c : C & + + + + + + + m : M C::* + + + + + + + + + A + + int (C::*)(bool) + + + + + + + + c : C & + + + + + + + + + A + + M (C::*)(Arg) && + + + + + + + + c : C && + + + + + + + m : M C::* + + + + + + + + + A + + float (C::*)(int) && + + + + + + + + c : C && + + + + + + + mf : float C::* + + + + + + + + + A + + M (C::*)(Arg1,Arg2,Arg3) + + + + + + + + c : C & + + + + + + + m : M C::* + + + + + + + + + A + + char[N] + + + + + + + + n : char[N] + + + + + + + + + A + + char[1000] + + + + + + + + n : std::vector<char> + + + + + + + + + A + + char[M][L][K] + + + + + + + + klm : char[K][L][M] + + + + + + + + + A + + U(...) + + + + + + + + u : bool + + + + + + + + + A + + C<T> + + + + + + + + c : C<T> + + + + + + + + + A + + C<T,Args...> + + + + + + + + args : std::tuple<Args...> + + + + + + + c : C<T> + + + + + + + + + A + + T + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00062_class_mermaid.svg b/docs/test_cases/t00062_class_mermaid.svg index a739c0a0d..eca771e4f 100644 --- a/docs/test_cases/t00062_class_mermaid.svg +++ b/docs/test_cases/t00062_class_mermaid.svg @@ -1,76 +1,81 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -306,7 +311,7 @@ - + @@ -330,7 +335,7 @@ - + @@ -354,7 +359,7 @@ - + @@ -373,7 +378,7 @@ - + @@ -397,7 +402,7 @@ - + @@ -421,7 +426,7 @@ - + @@ -445,7 +450,7 @@ - + @@ -469,7 +474,7 @@ - + @@ -493,7 +498,7 @@ - + @@ -522,7 +527,7 @@ - + @@ -551,7 +556,7 @@ - + @@ -580,7 +585,7 @@ - + @@ -604,7 +609,7 @@ - + @@ -633,7 +638,7 @@ - + @@ -662,7 +667,7 @@ - + @@ -691,7 +696,7 @@ - + @@ -715,7 +720,7 @@ - + @@ -739,7 +744,7 @@ - + @@ -763,7 +768,7 @@ - + @@ -787,7 +792,7 @@ - + @@ -811,7 +816,7 @@ - + @@ -840,7 +845,7 @@ - + diff --git a/docs/test_cases/t00063_class.svg b/docs/test_cases/t00063_class.svg index ff16f1577..c4a524171 100644 --- a/docs/test_cases/t00063_class.svg +++ b/docs/test_cases/t00063_class.svg @@ -1,21 +1,17 @@ - + - - - - - - - - - - - A - - + + + + + + A + + + diff --git a/docs/test_cases/t00063_class_mermaid.svg b/docs/test_cases/t00063_class_mermaid.svg index f86ddbb24..f6377d6c7 100644 --- a/docs/test_cases/t00063_class_mermaid.svg +++ b/docs/test_cases/t00063_class_mermaid.svg @@ -1,50 +1,55 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,7 +57,7 @@ - + diff --git a/docs/test_cases/t00064.md b/docs/test_cases/t00064.md index 7e3492270..dffe5bb48 100644 --- a/docs/test_cases/t00064.md +++ b/docs/test_cases/t00064.md @@ -501,6 +501,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -531,6 +532,7 @@ public: "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -561,6 +563,7 @@ public: "is_constexpr": true, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00064_class.svg b/docs/test_cases/t00064_class.svg index 57142fcb0..7a9e95fba 100644 --- a/docs/test_cases/t00064_class.svg +++ b/docs/test_cases/t00064_class.svg @@ -1,337 +1,433 @@ - + - - - - - - - - - - - type_list - - Ts... - - - - - - - - type_list - - Ret(Arg &&),Ts... - - - - - - - - type_list - - T const,Ts... - - - - - - - - type_list - - Head,Tail... - - - - - - - - head - - type_list<Head,Tail...> - - - - - - - - type_list - - Type... - - - - - - - - type_list - - First... - - - - - - - - type_list - - Second... - - - - - - - - type_group_pair - - type_list<First...>,type_list<Second...> - - - - - - - - - size : const size_t - - - - - - optional_ref - - T - - - - - - - - optional_ref - - type_group_pair_it<It,type_list<First...>,type_list<Second...>>::value_type - - - - - - - - type_group_pair_it - - It,type_list<First...>,type_list<Second...> - - - - - - - - find(const value_type & v) constexpr : unsigned int - - - - - - - get(unsigned int i) : ref_t - - - - - - - getp(unsigned int i) : const value_type * - - - - - - - A - - - - - - - - B - - - - - - - - C - - - - - - - - type_list - - A,bool,int - - - - - - - - type_list - - float,double - - - - - - - - type_list - - A,B,C - - - - - - - - type_group_pair - - type_list<float,double>,type_list<A,B,C> - - - - - - - - R - - - - - - - - - abc : type_group_pair<type_list<float,double>,type_list<A,B,C>> - - - - - - - aboolint : type_list<A,bool,int> - - - - - - type_group_pair - - typename,typename - - - - - - - - type_group_pair_it - - typename,typename,typename - - - - - - - - head - - typename - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - aboolint - - - - abc + + + + + + type_list + + Ts... + + + + + + + + + + type_list + + Ret(Arg &&),Ts... + + + + + + + + + + type_list + + T const,Ts... + + + + + + + + + + type_list + + Head,Tail... + + + + + + + + + + head + + type_list<Head,Tail...> + + + + + + + + + + type_list + + Type... + + + + + + + + + + type_list + + First... + + + + + + + + + + type_list + + Second... + + + + + + + + + + type_group_pair + + type_list<First...>,type_list<Second...> + + + + + + + + size : const size_t + + + + + + + + + optional_ref + + T + + + + + + + + + + optional_ref + + type_group_pair_it<It,type_list<First...>,type_list<Second...>>::value_type + + + + + + + + + + type_group_pair_it + + It,type_list<First...>,type_list<Second...> + + + + + + + find(const value_type & v) constexpr : unsigned int + + + + + + + get(unsigned int i) : ref_t + + + + + + + getp(unsigned int i) : const value_type * + + + + + + + + + + A + + + + + + + + + + B + + + + + + + + + + C + + + + + + + + + + type_list + + A,bool,int + + + + + + + + + + type_list + + float,double + + + + + + + + + + type_list + + A,B,C + + + + + + + + + + type_group_pair + + type_list<float,double>,type_list<A,B,C> + + + + + + + + + + R + + + + + + + + abc : type_group_pair<type_list<float,double>,type_list<A,B,C>> + + + + + + + aboolint : type_list<A,bool,int> + + + + + + + + + type_group_pair + + typename,typename + + + + + + + + + + type_group_pair_it + + typename,typename,typename + + + + + + + + + + head + + typename + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + aboolint + + + + + + abc + diff --git a/docs/test_cases/t00064_class_mermaid.svg b/docs/test_cases/t00064_class_mermaid.svg index 66e2f38ee..f206c0969 100644 --- a/docs/test_cases/t00064_class_mermaid.svg +++ b/docs/test_cases/t00064_class_mermaid.svg @@ -1,83 +1,88 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -390,7 +395,7 @@ - + @@ -409,7 +414,7 @@ - + @@ -428,7 +433,7 @@ - + @@ -447,7 +452,7 @@ - + @@ -466,7 +471,7 @@ - + @@ -485,7 +490,7 @@ - + @@ -504,7 +509,7 @@ - + @@ -523,7 +528,7 @@ - + @@ -542,7 +547,7 @@ - + @@ -566,7 +571,7 @@ - + @@ -585,7 +590,7 @@ - + @@ -604,7 +609,7 @@ - + @@ -620,25 +625,25 @@ type_group_pair_it<It,type_list<First...>,type_list<Second...>>
- +
- +find(const value_type & v) : [constexpr] unsigned int + +find(const value_type & v) : : [constexpr] unsigned int
- +
- +get(unsigned int i) : ref_t + +get(unsigned int i) : : ref_t
- +
- +getp(unsigned int i) : const value_type + +getp(unsigned int i) : : const value_type
- + @@ -657,7 +662,7 @@
- + @@ -676,7 +681,7 @@ - + @@ -695,7 +700,7 @@ - + @@ -714,7 +719,7 @@ - + @@ -733,7 +738,7 @@ - + @@ -752,7 +757,7 @@ - + @@ -771,7 +776,7 @@ - + @@ -800,7 +805,7 @@ - + @@ -819,7 +824,7 @@ - + @@ -838,7 +843,7 @@ - + diff --git a/docs/test_cases/t00065.md b/docs/test_cases/t00065.md index f357d4204..35499a9d4 100644 --- a/docs/test_cases/t00065.md +++ b/docs/test_cases/t00065.md @@ -222,6 +222,7 @@ struct R { "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -247,6 +248,7 @@ struct R { "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00065_class.svg b/docs/test_cases/t00065_class.svg index d5a2175a1..a4ce7cabd 100644 --- a/docs/test_cases/t00065_class.svg +++ b/docs/test_cases/t00065_class.svg @@ -1,256 +1,310 @@ - + - - - - - - - - - module1 - - - submodule1a - - - module2 - - - concepts - - - - - ABC - - a - b - c - - - - - - - XYZ - - x - y - z - - - - - - - A - - - - - - - - - abc : ABC - - - - - - - pimpl : detail::AImpl * - - - - - - - xyz : XYZ - - - - - - AImpl - - - - - - - - B - - - - - - - - B() = default : void - - - - - - - - b() : void - - - - - - - C - - T - - - - - - - - - t : T * - - - - - - C - - int - - - - - - - - D - - bconcept T - - - - - - - - - c : C<int> - - - - - - - t : T - - - - - - C - - B - - - - - - - - D - - B - - - - - - - - «concept» - bconcept - - (T t) - - T{} - t.b() - - - - - - R - - - - - - - - - a : A * - - - - - - - c : C<B> - - - - - - - d : D<B> - - - - - abc - - - - xyz - - - - pimpl - - - - - T - - - +c - - - - - - - - - - - +a - - - +c - - - +d + + + + module1 + + + + + submodule1a + + + + + module2 + + + + + concepts + + + + + + + ABC + + a + b + c + + + + + + + + + XYZ + + x + y + z + + + + + + + + + A + + + + + + + + abc : ABC + + + + + + + pimpl : detail::AImpl * + + + + + + + xyz : XYZ + + + + + + + + + detail::AImpl + + + + + + + + + + B + + + + + + + B() = default : void + + + + + + + + b() : void + + + + + + + + + + C + + T + + + + + + + + t : T * + + + + + + + + + C + + int + + + + + + + + + + D + + bconcept T + + + + + + + + c : C<int> + + + + + + + t : T + + + + + + + + + C + + B + + + + + + + + + + D + + B + + + + + + + + + + «concept» + bconcept + + T + + (T t) + + T{} + t.b() + + + + + + + + R + + + + + + + + a : A * + + + + + + + c : C<B> + + + + + + + d : D<B> + + + + + + + + abc + + + + + + xyz + + + + + + pimpl + + + + + + + + + T + + + + + +c + + + + + + + + + + + + + + + + + + + + + +a + + + + + +c + + + + + +d + diff --git a/docs/test_cases/t00065_class_mermaid.svg b/docs/test_cases/t00065_class_mermaid.svg index 620f8af37..5362d65f8 100644 --- a/docs/test_cases/t00065_class_mermaid.svg +++ b/docs/test_cases/t00065_class_mermaid.svg @@ -1,68 +1,73 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -109,7 +114,7 @@ - +
@@ -120,7 +125,7 @@ - +
@@ -186,7 +191,7 @@ - +
@@ -197,7 +202,7 @@ - + - +
- "(T t)" + "(T t) : "
- + - - - + + +
@@ -381,20 +386,20 @@ B
- +
- +B() : [default] void + +B() : : [default] void
- +
- +b() : void + +b() : : void
- + @@ -412,13 +417,13 @@
- +t : T + +t : T
- + @@ -437,7 +442,7 @@ - + @@ -466,7 +471,7 @@ - + @@ -485,7 +490,7 @@ - + @@ -504,7 +509,7 @@ - + @@ -522,7 +527,7 @@
- +a : A + +a : A
diff --git a/docs/test_cases/t00066.md b/docs/test_cases/t00066.md index 9ab7858fb..e85f0d572 100644 --- a/docs/test_cases/t00066.md +++ b/docs/test_cases/t00066.md @@ -234,6 +234,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -259,6 +260,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -289,6 +291,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -319,6 +322,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": true, "is_move_assignment": false, @@ -349,6 +353,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": true, "is_deleted": false, "is_move_assignment": false, @@ -374,6 +379,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -399,6 +405,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -424,6 +431,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -449,6 +457,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -474,6 +483,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -499,6 +509,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": true, @@ -529,6 +540,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": true, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -559,6 +571,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -584,6 +597,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -614,6 +628,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -648,6 +663,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -679,6 +695,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -714,6 +731,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -744,6 +762,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -769,6 +788,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00066_class.svg b/docs/test_cases/t00066_class.svg index 4096b8313..56e0db0e5 100644 --- a/docs/test_cases/t00066_class.svg +++ b/docs/test_cases/t00066_class.svg @@ -1,231 +1,227 @@ - + - - - - - - - - - - - A - - - - - - - - public_member : int - - - - - - - protected_member : int - - - - - - - private_member : int - - - - - - - a_ : int - - - - - - - b_ : int - - - - - - - c_ : int - - - - - - - static_int : int - - - - - - - static_const_int : const int - - - - - - - auto_member : const unsigned long - - - - - - - - A() = default : void - - - - - - - A(int i) : void - - - - - - - A(A &&) = default : void - - - - - - - A(const A &) = deleted : void - - - - - - - ~A() = default : void - - - - - - - basic_method() : void - - - - - - - static_method() : int - - - - - - - const_method() const : void - - - - - - - auto_method() : int - - - - - - - operator++() : A & - - - - - - - operator=(A && other) noexcept : A & - - - - - - - operator=(A & other) noexcept : A & - - - - - - - size() const : std::size_t - - - - - - - double_int(const int i) : int - - - - - - - sum(const double a, const double b) : int - - - - - - - default_int(int i = 12) : int - - - - - - - default_string(int i, std::string s = "abc") : std::string - - - - - - - create_from_int(int i) : A - - - - - - - protected_method() : void - - - - - - - private_method() : void - - - - - - - compare : std::function<bool (const int)> + + + + + + A + + + + + + + public_member : int + + + + + + + protected_member : int + + + + + + + private_member : int + + + + + + + a_ : int + + + + + + + b_ : int + + + + + + + c_ : int + + + + + + + static_int : int + + + + + + + static_const_int : const int + + + + + + + auto_member : const unsigned long + + + + + + + + A() = default : void + + + + + + + A(int i) : void + + + + + + + A(A &&) = default : void + + + + + + + A(const A &) = deleted : void + + + + + + + ~A() = default : void + + + + + + + basic_method() : void + + + + + + + static_method() : int + + + + + + + const_method() const : void + + + + + + + auto_method() : int + + + + + + + operator++() : A & + + + + + + + operator=(A && other) noexcept : A & + + + + + + + operator=(A & other) noexcept : A & + + + + + + + size() const : std::size_t + + + + + + + double_int(const int i) : int + + + + + + + sum(const double a, const double b) : int + + + + + + + default_int(int i = 12) : int + + + + + + + default_string(int i, std::string s = "abc") : std::string + + + + + + + create_from_int(int i) : A + + + + + + + protected_method() : void + + + + + + + private_method() : void + + + + + + + compare : std::function<bool (const int)> + + diff --git a/docs/test_cases/t00066_class_mermaid.svg b/docs/test_cases/t00066_class_mermaid.svg index 1ec82fac8..9da743c04 100644 --- a/docs/test_cases/t00066_class_mermaid.svg +++ b/docs/test_cases/t00066_class_mermaid.svg @@ -1,50 +1,55 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,11 +57,11 @@ - + - - - + + +
@@ -68,154 +73,154 @@ A
- +
+public_member : int
- +
#protected_member : int
- +
#compare : std::function<bool (const int)>
- +
-private_member : int
- +
-a_ : int
- +
-b_ : int
- +
-c_ : int
- +
+static_int : int
- +
+static_const_int : const int
- +
+auto_member : const unsigned long
- +
- +A() : [default] void + +A() : : [default] void
- +
- +A(int i) : void + +A(int i) : : void
- +
- +A(A &&) : [default] void + +A(A &&) : : [default] void
- +
- +A(const A &) : void + +A(const A &) : : void
- +
- +~A() : [default] void + +~A() : : [default] void
- +
- +basic_method() : void + +basic_method() : : void
- +
- +static_method() : int + +static_method() : : int
- +
- +const_method() : [const] void + +const_method() : : [const] void
- +
- +auto_method() : int + +auto_method() : : int
- +
- +operator++() : A & + +operator++() : : A &
- +
- +operator=(A && other) : A & + +operator=(A && other) : : A &
- +
- +operator=(A & other) : A & + +operator=(A & other) : : A &
- +
- +size() : [const] std::size_t + +size() : : [const] std::size_t
- +
- +double_int(const int i) : int + +double_int(const int i) : : int
- +
- +sum(const double a, const double b) : int + +sum(const double a, const double b) : : int
- +
- +default_int(int i = 12) : int + +default_int(int i = 12) : : int
- +
- +default_string(int i, std::string s = "abc") : std::string + +default_string(int i, std::string s = "abc") : : std::string
- +
- +create_from_int(int i) : A + +create_from_int(int i) : : A
- +
- #protected_method() : void + #protected_method() : : void
- +
- -private_method() : void + -private_method() : : void
diff --git a/docs/test_cases/t00067.md b/docs/test_cases/t00067.md index 7822566ae..406355fd0 100644 --- a/docs/test_cases/t00067.md +++ b/docs/test_cases/t00067.md @@ -237,6 +237,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -262,6 +263,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -287,6 +289,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -312,6 +315,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -337,6 +341,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -367,6 +372,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -401,6 +407,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -432,6 +439,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -467,6 +475,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, @@ -492,6 +501,7 @@ int A::static_int = 1; "is_constexpr": false, "is_constructor": false, "is_copy_assignment": false, + "is_coroutine": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, diff --git a/docs/test_cases/t00067_class.svg b/docs/test_cases/t00067_class.svg index 6498ede84..c565bf115 100644 --- a/docs/test_cases/t00067_class.svg +++ b/docs/test_cases/t00067_class.svg @@ -1,161 +1,157 @@ - + - - - - - - - - - - - A - - - - - - - - auto_method() : int - - - - - - - basic_method() : void - - - - - - - const_method() const : void - - - - - - - default_int(int i = 12) : int - - - - - - - default_string(int i, std::string s = "abc") : std::string - - - - - - - double_int(const int i) : int - - - - - - - private_method() : void - - - - - - - protected_method() : void - - - - - - - size() const : std::size_t - - - - - - - sum(const double a, const double b) : int - - - - - - - - a_ : int - - - - - - - auto_member : const unsigned long - - - - - - - b_ : int - - - - - - - c_ : int - - - - - - - compare : std::function<bool (const int)> - - - - - - - private_member : int - - - - - - - protected_member : int - - - - - - - public_member : int - - - - - - - static_const_int : const int - - - - - - - static_int : int + + + + + + A + + + + + + + auto_method() : int + + + + + + + basic_method() : void + + + + + + + const_method() const : void + + + + + + + default_int(int i = 12) : int + + + + + + + default_string(int i, std::string s = "abc") : std::string + + + + + + + double_int(const int i) : int + + + + + + + private_method() : void + + + + + + + protected_method() : void + + + + + + + size() const : std::size_t + + + + + + + sum(const double a, const double b) : int + + + + + + + + a_ : int + + + + + + + auto_member : const unsigned long + + + + + + + b_ : int + + + + + + + c_ : int + + + + + + + compare : std::function<bool (const int)> + + + + + + + private_member : int + + + + + + + protected_member : int + + + + + + + public_member : int + + + + + + + static_const_int : const int + + + + + + + static_int : int + + diff --git a/docs/test_cases/t00067_class_mermaid.svg b/docs/test_cases/t00067_class_mermaid.svg index 6b362e539..dfeeccf9e 100644 --- a/docs/test_cases/t00067_class_mermaid.svg +++ b/docs/test_cases/t00067_class_mermaid.svg @@ -1,50 +1,55 @@ - - + + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -52,11 +57,11 @@ - + - - - + + +
@@ -68,104 +73,104 @@ A
- +
-a_ : int
- +
+auto_member : const unsigned long
- +
-b_ : int
- +
-c_ : int
- +
#compare : std::function<bool (const int)>
- +
-private_member : int
- +
#protected_member : int
- +
+public_member : int
- +
+static_const_int : const int
- +
+static_int : int
- +
- +auto_method() : int + +auto_method() : : int
- +
- +basic_method() : void + +basic_method() : : void
- +
- +const_method() : [const] void + +const_method() : : [const] void
- +
- +default_int(int i = 12) : int + +default_int(int i = 12) : : int
- +
- +default_string(int i, std::string s = "abc") : std::string + +default_string(int i, std::string s = "abc") : : std::string
- +
- +double_int(const int i) : int + +double_int(const int i) : : int
- +
- -private_method() : void + -private_method() : : void
- +
- #protected_method() : void + #protected_method() : : void
- +
- +size() : [const] std::size_t + +size() : : [const] std::size_t
- +
- +sum(const double a, const double b) : int + +sum(const double a, const double b) : : int
diff --git a/docs/test_cases/t00068_r0_class.svg b/docs/test_cases/t00068_r0_class.svg index 6f5707a24..57007b108 100644 --- a/docs/test_cases/t00068_r0_class.svg +++ b/docs/test_cases/t00068_r0_class.svg @@ -1,36 +1,32 @@ - + - - - - - - - AAA context of radius 0 - - - - - AAA - - - - - - - - - akind : AKind - - - - - - - bb : BB * + AAA context of radius 0 + + + + + + AAA + + + + + + + + akind : AKind + + + + + + + bb : BB * + + diff --git a/docs/test_cases/t00068_r0_class_mermaid.svg b/docs/test_cases/t00068_r0_class_mermaid.svg index 571e28d7d..67676c300 100644 --- a/docs/test_cases/t00068_r0_class_mermaid.svg +++ b/docs/test_cases/t00068_r0_class_mermaid.svg @@ -1,51 +1,55 @@ - - AAA context of radius 0 - + + - + - + - + - + - + - + - + - + - - + + + + + + + @@ -53,7 +57,7 @@ - + @@ -76,7 +80,7 @@
- +bb : BB + +bb : BB
diff --git a/docs/test_cases/t00068_r1_class.svg b/docs/test_cases/t00068_r1_class.svg index 0283cabb4..d7af4e051 100644 --- a/docs/test_cases/t00068_r1_class.svg +++ b/docs/test_cases/t00068_r1_class.svg @@ -1,99 +1,111 @@ - + - - - - - - - AAA context of radius 1 - - - - - BB - - + AAA context of radius 1 + + + + + + BB + + + + + + + + b : std::vector<B> + + - - - + + + + + + AKind + + OneA + TwoA + ThreeA + + - - b : std::vector<B> + + + + + + AA + + + - - - - - AKind - - OneA - TwoA - ThreeA - + + + + + + AAA + + + + + + + + akind : AKind + + + + + + + bb : BB * + + - - - - - AA - - + + + + + + R + + + + + + + + aaa : AAA * + + - - - - - AAA - - - - - - - - - akind : AKind - - - - - - - bb : BB * - - - - - - R - - - - - - - - - aaa : AAA * - - - - - bb - - - - akind - - - - - - aaa + + + + + bb + + + + + + akind + + + + + + + + + + aaa + diff --git a/docs/test_cases/t00068_r1_class_mermaid.svg b/docs/test_cases/t00068_r1_class_mermaid.svg index 0fe4ab70d..8d2ed85fd 100644 --- a/docs/test_cases/t00068_r1_class_mermaid.svg +++ b/docs/test_cases/t00068_r1_class_mermaid.svg @@ -1,60 +1,64 @@ - - AAA context of radius 1 - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - + + + + @@ -101,7 +105,7 @@ - + @@ -125,7 +129,7 @@ - + @@ -159,7 +163,7 @@ - + @@ -178,7 +182,7 @@ - + @@ -201,13 +205,13 @@
- +bb : BB + +bb : BB
- + @@ -225,7 +229,7 @@
- +aaa : AAA + +aaa : AAA
diff --git a/docs/test_cases/t00068_r2_class.svg b/docs/test_cases/t00068_r2_class.svg index b4f0b9797..39689b530 100644 --- a/docs/test_cases/t00068_r2_class.svg +++ b/docs/test_cases/t00068_r2_class.svg @@ -1,138 +1,162 @@ - + - - - - - - - AAA context of radius 2 - - - - - B - - - - - - - - BB - - - - - - - - - b : std::vector<B> - - - - - - AKind - - OneA - TwoA - ThreeA - - - - - - - A - - - - - - - - AA - - - - - - - - AAA - - - - - - - - - akind : AKind - - - - - - - bb : BB * - - - - - - R - - - - - - - - - aaa : AAA * - - - - - - RR - - - - - - - - - r : std::shared_ptr<R> - - - - +b - - - - - - bb - - - - akind - - - - - - aaa - - - +r + AAA context of radius 2 + + + + + + B + + + + + + + + + + BB + + + + + + + + b : std::vector<B> + + + + + + + + + AKind + + OneA + TwoA + ThreeA + + + + + + + + + A + + + + + + + + + + AA + + + + + + + + + + AAA + + + + + + + + akind : AKind + + + + + + + bb : BB * + + + + + + + + + R + + + + + + + + aaa : AAA * + + + + + + + + + RR + + + + + + + + r : std::shared_ptr<R> + + + + + + + +b + + + + + + + + + + bb + + + + + + akind + + + + + + + + + + aaa + + + + + +r + diff --git a/docs/test_cases/t00068_r2_class_mermaid.svg b/docs/test_cases/t00068_r2_class_mermaid.svg index b442380ae..9aa8c71f4 100644 --- a/docs/test_cases/t00068_r2_class_mermaid.svg +++ b/docs/test_cases/t00068_r2_class_mermaid.svg @@ -1,63 +1,67 @@ - - AAA context of radius 2 - + + - + - + - + - + - + - + - + - + - - + + + + + + + - - - - - - - + + + + + + + @@ -135,7 +139,7 @@ - + @@ -154,7 +158,7 @@
- + @@ -178,7 +182,7 @@ - + @@ -212,7 +216,7 @@ - + @@ -231,7 +235,7 @@ - + @@ -250,7 +254,7 @@ - + @@ -273,13 +277,13 @@
- +bb : BB + +bb : BB
- + @@ -297,13 +301,13 @@
- +aaa : AAA + +aaa : AAA
- + diff --git a/docs/test_cases/t00069.md b/docs/test_cases/t00069.md new file mode 100644 index 000000000..75a58b781 --- /dev/null +++ b/docs/test_cases/t00069.md @@ -0,0 +1,547 @@ +# t00069 - Coroutine methods in class diagrams +## Config +```yaml +diagrams: + t00069_class: + type: class + glob: + - t00069.cc + include: + namespaces: + - clanguml::t00069 + using_namespace: clanguml::t00069 +``` +## Source code +File t00069.cc +```cpp +#include +#include + +namespace clanguml { +namespace t00069 { + +template struct generator { + struct promise_type; + using handle_type = std::coroutine_handle; + + generator(handle_type h) + : h_(h) + { + } + + ~generator() { h_.destroy(); } + + struct promise_type { + T value_; + std::exception_ptr exception_; + + generator get_return_object() + { + return generator(handle_type::from_promise(*this)); + } + std::suspend_always initial_suspend() { return {}; } + + std::suspend_always final_suspend() noexcept { return {}; } + + void unhandled_exception() { exception_ = std::current_exception(); } + + template From> + std::suspend_always yield_value(From &&from) + { + value_ = std::forward(from); + return {}; + } + + void return_void() { } + }; + + handle_type h_; + +private: + bool full_ = false; +}; + +class A { +public: + generator iota() { co_yield counter_++; } + + generator seed() + { + counter_ = 42; + co_return; + } + +private: + unsigned long counter_; +}; + +} // namespace t00069 +} // namespace clanguml + +``` +## Generated PlantUML diagrams +![t00069_class](./t00069_class.svg "Coroutine methods in class diagrams") +## Generated Mermaid diagrams +![t00069_class](./t00069_class_mermaid.svg "Coroutine methods in class diagrams") +## Generated JSON models +```json +{ + "diagram_type": "class", + "elements": [ + { + "bases": [], + "display_name": "clanguml::t00069::generator", + "id": "2142496233889685657", + "is_abstract": false, + "is_nested": false, + "is_struct": true, + "is_template": true, + "is_union": false, + "members": [ + { + "access": "public", + "is_static": false, + "name": "h_", + "source_location": { + "column": 17, + "file": "t00069.cc", + "line": 42, + "translation_unit": "t00069.cc" + }, + "type": "handle_type" + }, + { + "access": "private", + "is_static": false, + "name": "full_", + "source_location": { + "column": 10, + "file": "t00069.cc", + "line": 45, + "translation_unit": "t00069.cc" + }, + "type": "bool" + } + ], + "methods": [ + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": true, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "generator", + "parameters": [ + { + "name": "h", + "type": "handle_type" + } + ], + "source_location": { + "column": 5, + "file": "t00069.cc", + "line": 11, + "translation_unit": "t00069.cc" + }, + "type": "void" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "~generator", + "parameters": [], + "source_location": { + "column": 5, + "file": "t00069.cc", + "line": 16, + "translation_unit": "t00069.cc" + }, + "type": "void" + } + ], + "name": "generator", + "namespace": "clanguml::t00069", + "source_location": { + "column": 30, + "file": "t00069.cc", + "line": 7, + "translation_unit": "t00069.cc" + }, + "template_parameters": [ + { + "is_variadic": false, + "kind": "template_type", + "name": "T", + "template_parameters": [] + } + ], + "type": "class" + }, + { + "bases": [], + "display_name": "clanguml::t00069::generator::promise_type", + "id": "721812727497968117", + "is_abstract": false, + "is_nested": true, + "is_struct": true, + "is_template": false, + "is_union": false, + "members": [ + { + "access": "public", + "is_static": false, + "name": "value_", + "source_location": { + "column": 11, + "file": "t00069.cc", + "line": 19, + "translation_unit": "t00069.cc" + }, + "type": "T" + }, + { + "access": "public", + "is_static": false, + "name": "exception_", + "source_location": { + "column": 28, + "file": "t00069.cc", + "line": 20, + "translation_unit": "t00069.cc" + }, + "type": "std::exception_ptr" + } + ], + "methods": [ + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "get_return_object", + "parameters": [], + "source_location": { + "column": 19, + "file": "t00069.cc", + "line": 22, + "translation_unit": "t00069.cc" + }, + "type": "generator" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "initial_suspend", + "parameters": [], + "source_location": { + "column": 29, + "file": "t00069.cc", + "line": 26, + "translation_unit": "t00069.cc" + }, + "type": "std::suspend_always" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": true, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "final_suspend", + "parameters": [], + "source_location": { + "column": 29, + "file": "t00069.cc", + "line": 28, + "translation_unit": "t00069.cc" + }, + "type": "std::suspend_always" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "unhandled_exception", + "parameters": [], + "source_location": { + "column": 14, + "file": "t00069.cc", + "line": 30, + "translation_unit": "t00069.cc" + }, + "type": "void" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "return_void", + "parameters": [], + "source_location": { + "column": 14, + "file": "t00069.cc", + "line": 39, + "translation_unit": "t00069.cc" + }, + "type": "void" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "yield_value", + "parameters": [ + { + "name": "from", + "type": "From &&" + } + ], + "type": "std::suspend_always" + } + ], + "name": "generator::promise_type", + "namespace": "clanguml::t00069", + "source_location": { + "column": 12, + "file": "t00069.cc", + "line": 18, + "translation_unit": "t00069.cc" + }, + "template_parameters": [], + "type": "class" + }, + { + "bases": [], + "display_name": "clanguml::t00069::generator", + "id": "1604358347140526608", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": true, + "is_union": false, + "members": [], + "methods": [], + "name": "generator", + "namespace": "clanguml::t00069", + "source_location": { + "column": 30, + "file": "t00069.cc", + "line": 7, + "translation_unit": "t00069.cc" + }, + "template_parameters": [ + { + "is_variadic": false, + "kind": "argument", + "template_parameters": [], + "type": "unsigned long" + } + ], + "type": "class" + }, + { + "bases": [], + "display_name": "clanguml::t00069::A", + "id": "2160142503252767290", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "counter_", + "source_location": { + "column": 19, + "file": "t00069.cc", + "line": 59, + "translation_unit": "t00069.cc" + }, + "type": "unsigned long" + } + ], + "methods": [ + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": true, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "iota", + "parameters": [], + "source_location": { + "column": 30, + "file": "t00069.cc", + "line": 50, + "translation_unit": "t00069.cc" + }, + "type": "clanguml::t00069::generator" + }, + { + "access": "public", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": true, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "seed", + "parameters": [], + "source_location": { + "column": 30, + "file": "t00069.cc", + "line": 52, + "translation_unit": "t00069.cc" + }, + "type": "clanguml::t00069::generator" + } + ], + "name": "A", + "namespace": "clanguml::t00069", + "source_location": { + "column": 7, + "file": "t00069.cc", + "line": 48, + "translation_unit": "t00069.cc" + }, + "template_parameters": [], + "type": "class" + } + ], + "name": "t00069_class", + "relationships": [ + { + "access": "public", + "destination": "2142496233889685657", + "source": "721812727497968117", + "type": "containment" + }, + { + "access": "public", + "destination": "2142496233889685657", + "source": "1604358347140526608", + "type": "instantiation" + }, + { + "access": "public", + "destination": "1604358347140526608", + "source": "2160142503252767290", + "type": "dependency" + } + ], + "using_namespace": "clanguml::t00069" +} +``` diff --git a/docs/test_cases/t00069_class.svg b/docs/test_cases/t00069_class.svg new file mode 100644 index 000000000..c392cc81f --- /dev/null +++ b/docs/test_cases/t00069_class.svg @@ -0,0 +1,165 @@ + + + + + + + + + + + generator + + T + + + + + + + generator(handle_type h) : void + + + + + + + ~generator() : void + + + + + + + + full_ : bool + + + + + + + h_ : handle_type + + + + + + + + + generator::promise_type + + + + + + + final_suspend() noexcept : std::suspend_always + + + + + + + get_return_object() : generator<T> + + + + + + + initial_suspend() : std::suspend_always + + + + + + + return_void() : void + + + + + + + unhandled_exception() : void + + + yield_value<std::convertible_to From>(From && from) : std::suspend_always + + + + + + + exception_ : std::exception_ptr + + + + + + + value_ : T + + + + + + + + + generator + + unsigned long + + + + + + + + + + A + + + + + + + iota() [coroutine] : generator<unsigned long> + + + + + + + seed() [coroutine] : generator<unsigned long> + + + + + + + + counter_ : unsigned long + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t00069_class_mermaid.svg b/docs/test_cases/t00069_class_mermaid.svg new file mode 100644 index 000000000..2b51043cc --- /dev/null +++ b/docs/test_cases/t00069_class_mermaid.svg @@ -0,0 +1,252 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+
+
+ + + +
+ + + +
+
+
+
+ + + +
+ + + +
+
+
+
+
+ + + + + + + + +
+ +
+
+ +
+ generator<T> +
+
+ +
+ -full_ : bool +
+
+ +
+ +h_ : handle_type +
+
+ +
+ +generator(handle_type h) : : void +
+
+ +
+ +~generator() : : void +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ generator::promise_type +
+
+ +
+ +exception_ : std::exception_ptr +
+
+ +
+ +value_ : T +
+
+ +
+ +final_suspend() : : std::suspend_always +
+
+ +
+ +get_return_object() : : generator<T> +
+
+ +
+ +initial_suspend() : : std::suspend_always +
+
+ +
+ +return_void() : : void +
+
+ +
+ +unhandled_exception() : : void +
+
+ +
+ +yield_value(From && from) : : std::suspend_always +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ generator<unsigned long> +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ A +
+
+ +
+ -counter_ : unsigned long +
+
+ +
+ +iota() : : [coroutine] generator<unsigned long> +
+
+ +
+ +seed() : : [coroutine] generator<unsigned long> +
+
+
+
+
+
+
+
+
diff --git a/docs/test_cases/t00070.md b/docs/test_cases/t00070.md new file mode 100644 index 000000000..3750bf254 --- /dev/null +++ b/docs/test_cases/t00070.md @@ -0,0 +1,212 @@ +# t00070 - Diagram filter based on C++20 modules +## Config +```yaml +diagrams: + t00070_class: + type: class + glob: + - t00070.cc + include: + modules: + - t00070 + exclude: + modules: + - t00070.lib2 + module_access: + - private + using_namespace: clanguml::t00070 +``` +## Source code +File t00070.cc +```cpp +import t00070; +import t00070.lib1; +import t00070.lib2; + +namespace clanguml { +namespace t00070 { +int tmain() +{ + B b; + C c; + + return 0; +} +} +} +``` +## Generated PlantUML diagrams +![t00070_class](./t00070_class.svg "Diagram filter based on C++20 modules") +## Generated Mermaid diagrams +![t00070_class](./t00070_class_mermaid.svg "Diagram filter based on C++20 modules") +## Generated JSON models +```json +{ + "diagram_type": "class", + "elements": [ + { + "bases": [], + "display_name": "clanguml::t00070::B", + "id": "1364261599035905834", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [], + "methods": [], + "module": { + "is_private": false, + "name": "t00070.lib1" + }, + "name": "B", + "namespace": "clanguml::t00070", + "source_location": { + "column": 7, + "file": "src/lib1.cppm", + "line": 4, + "translation_unit": "t00070.cc" + }, + "template_parameters": [], + "type": "class" + }, + { + "bases": [], + "display_name": "clanguml::t00070::BB", + "id": "1485755083045282660", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": true, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "t", + "source_location": { + "column": 7, + "file": "src/lib1.cppm", + "line": 7, + "translation_unit": "t00070.cc" + }, + "type": "T" + } + ], + "methods": [], + "module": { + "is_private": false, + "name": "t00070.lib1" + }, + "name": "BB", + "namespace": "clanguml::t00070", + "source_location": { + "column": 29, + "file": "src/lib1.cppm", + "line": 6, + "translation_unit": "t00070.cc" + }, + "template_parameters": [ + { + "is_variadic": false, + "kind": "template_type", + "name": "T", + "template_parameters": [] + } + ], + "type": "class" + }, + { + "constants": [ + "bbb1", + "bbb2" + ], + "display_name": "clanguml::t00070::BBB", + "id": "1734694076622541097", + "is_nested": false, + "module": { + "is_private": false, + "name": "t00070.lib1" + }, + "name": "BBB", + "namespace": "clanguml::t00070", + "source_location": { + "column": 12, + "file": "src/lib1.cppm", + "line": 10, + "translation_unit": "t00070.cc" + }, + "type": "enum" + }, + { + "bases": [], + "display_name": "clanguml::t00070::A", + "id": "668221430913861424", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "a", + "source_location": { + "column": 9, + "file": "src/common.cppm", + "line": 9, + "translation_unit": "t00070.cc" + }, + "type": "int" + } + ], + "methods": [ + { + "access": "private", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "get", + "parameters": [], + "source_location": { + "column": 9, + "file": "src/common.cppm", + "line": 7, + "translation_unit": "t00070.cc" + }, + "type": "int" + } + ], + "module": { + "is_private": false, + "name": "t00070" + }, + "name": "A", + "namespace": "clanguml::t00070", + "source_location": { + "column": 7, + "file": "src/common.cppm", + "line": 6, + "translation_unit": "t00070.cc" + }, + "template_parameters": [], + "type": "class" + } + ], + "name": "t00070_class", + "relationships": [], + "using_namespace": "clanguml::t00070" +} +``` diff --git a/docs/test_cases/t00070_class.svg b/docs/test_cases/t00070_class.svg new file mode 100644 index 000000000..56142e58d --- /dev/null +++ b/docs/test_cases/t00070_class.svg @@ -0,0 +1,72 @@ + + + + + + + + + + + B + + + + + + + + + + BB + + T + + + + + + + + t : T + + + + + + + + + BBB + + bbb1 + bbb2 + + + + + + + + + A + + + + + + + get() : int + + + + + + + + a : int + + + + + diff --git a/docs/test_cases/t00070_class_mermaid.svg b/docs/test_cases/t00070_class_mermaid.svg new file mode 100644 index 000000000..3aa57ba3d --- /dev/null +++ b/docs/test_cases/t00070_class_mermaid.svg @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ B +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ BB<T> +
+
+ +
+ -t : T +
+
+
+
+
+ + + + + + + +
+ «enumeration» +
+
+ +
+ BBB +
+
+ +
+ bbb1 +
+
+ +
+ bbb2 +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ A +
+
+ +
+ -a : int +
+
+ +
+ -get() : : int +
+
+
+
+
+
+
+
+
diff --git a/docs/test_cases/t00071.md b/docs/test_cases/t00071.md new file mode 100644 index 000000000..603fd320e --- /dev/null +++ b/docs/test_cases/t00071.md @@ -0,0 +1,472 @@ +# t00071 - Class diagram with C++20 modules generated as packages +## Config +```yaml +diagrams: + t00071_class: + type: class + glob: + - t00071.cc + include: + namespaces: + - clanguml::t00071 + generate_packages: true + package_type: module + using_namespace: clanguml::t00071 + using_module: t00071 +``` +## Source code +File t00071.cc +```cpp +import t00071.app; +import t00071.app.lib1; +import t00071.app.lib1.mod1; +import t00071.app.lib1.mod2; +import t00071.app.lib2; + +namespace clanguml { +namespace t00071 { +class R { + A *a; + B *b; + C *c; +}; +} +} +``` +## Generated PlantUML diagrams +![t00071_class](./t00071_class.svg "Class diagram with C++20 modules generated as packages") +## Generated Mermaid diagrams +![t00071_class](./t00071_class_mermaid.svg "Class diagram with C++20 modules generated as packages") +## Generated JSON models +```json +{ + "diagram_type": "class", + "elements": [ + { + "display_name": "app", + "elements": [ + { + "display_name": "app::lib1", + "elements": [ + { + "bases": [], + "display_name": "clanguml::t00071::B", + "id": "1319862510251967999", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [], + "methods": [], + "module": { + "is_private": false, + "name": "t00071.app.lib1" + }, + "name": "B", + "namespace": "clanguml::t00071", + "source_location": { + "column": 7, + "file": "src/lib1.cppm", + "line": 4, + "translation_unit": "t00071.cc" + }, + "template_parameters": [], + "type": "class" + }, + { + "bases": [], + "display_name": "clanguml::t00071::BB", + "id": "569632796637866961", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": true, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "t", + "source_location": { + "column": 7, + "file": "src/lib1.cppm", + "line": 7, + "translation_unit": "t00071.cc" + }, + "type": "T" + } + ], + "methods": [], + "module": { + "is_private": false, + "name": "t00071.app.lib1" + }, + "name": "BB", + "namespace": "clanguml::t00071", + "source_location": { + "column": 29, + "file": "src/lib1.cppm", + "line": 6, + "translation_unit": "t00071.cc" + }, + "template_parameters": [ + { + "is_variadic": false, + "kind": "template_type", + "name": "T", + "template_parameters": [] + } + ], + "type": "class" + }, + { + "constants": [ + "bbb1", + "bbb2" + ], + "display_name": "clanguml::t00071::detail::BBB", + "id": "1625078061541942293", + "is_nested": false, + "module": { + "is_private": false, + "name": "t00071.app.lib1" + }, + "name": "BBB", + "namespace": "clanguml::t00071::detail", + "source_location": { + "column": 12, + "file": "src/lib1.cppm", + "line": 11, + "translation_unit": "t00071.cc" + }, + "type": "enum" + }, + { + "display_name": "app::lib1::mod1", + "elements": [ + { + "bases": [], + "display_name": "clanguml::t00071::D", + "id": "1168777064323042894", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [], + "methods": [], + "module": { + "is_private": false, + "name": "t00071.app.lib1.mod1" + }, + "name": "D", + "namespace": "clanguml::t00071", + "source_location": { + "column": 7, + "file": "src/lib1mod1.cppm", + "line": 4, + "translation_unit": "t00071.cc" + }, + "template_parameters": [], + "type": "class" + } + ], + "name": "mod1", + "type": "module" + }, + { + "display_name": "app::lib1::mod2", + "elements": [ + { + "bases": [], + "display_name": "clanguml::t00071::E", + "id": "1302694761523535504", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [], + "methods": [], + "module": { + "is_private": false, + "name": "t00071.app.lib1.mod2" + }, + "name": "E", + "namespace": "clanguml::t00071", + "source_location": { + "column": 7, + "file": "src/lib1mod2.cppm", + "line": 4, + "translation_unit": "t00071.cc" + }, + "template_parameters": [], + "type": "class" + } + ], + "name": "mod2", + "type": "module" + } + ], + "name": "lib1", + "type": "module" + }, + { + "display_name": "app::lib2", + "elements": [ + { + "bases": [], + "display_name": "clanguml::t00071::C", + "id": "1697463991772603674", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [], + "methods": [], + "module": { + "is_private": false, + "name": "t00071.app.lib2" + }, + "name": "C", + "namespace": "clanguml::t00071", + "source_location": { + "column": 7, + "file": "src/lib2.cppm", + "line": 4, + "translation_unit": "t00071.cc" + }, + "template_parameters": [], + "type": "class" + }, + { + "bases": [], + "display_name": "clanguml::t00071::CC", + "id": "1911193033649971391", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": true, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "t", + "source_location": { + "column": 7, + "file": "src/lib2.cppm", + "line": 7, + "translation_unit": "t00071.cc" + }, + "type": "T" + } + ], + "methods": [], + "module": { + "is_private": false, + "name": "t00071.app.lib2" + }, + "name": "CC", + "namespace": "clanguml::t00071", + "source_location": { + "column": 29, + "file": "src/lib2.cppm", + "line": 6, + "translation_unit": "t00071.cc" + }, + "template_parameters": [ + { + "is_variadic": false, + "kind": "template_type", + "name": "T", + "template_parameters": [] + } + ], + "type": "class" + }, + { + "constants": [ + "ccc1", + "ccc2" + ], + "display_name": "clanguml::t00071::detail::CCC", + "id": "931278702894205804", + "is_nested": false, + "module": { + "is_private": false, + "name": "t00071.app.lib2" + }, + "name": "CCC", + "namespace": "clanguml::t00071::detail", + "source_location": { + "column": 12, + "file": "src/lib2.cppm", + "line": 11, + "translation_unit": "t00071.cc" + }, + "type": "enum" + } + ], + "name": "lib2", + "type": "module" + }, + { + "bases": [], + "display_name": "clanguml::t00071::A", + "id": "2210005074053139118", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "a", + "source_location": { + "column": 9, + "file": "src/t00071_mod.cppm", + "line": 9, + "translation_unit": "t00071.cc" + }, + "type": "int" + } + ], + "methods": [ + { + "access": "private", + "is_const": false, + "is_consteval": false, + "is_constexpr": false, + "is_constructor": false, + "is_copy_assignment": false, + "is_coroutine": false, + "is_defaulted": false, + "is_deleted": false, + "is_move_assignment": false, + "is_noexcept": false, + "is_operator": false, + "is_pure_virtual": false, + "is_static": false, + "is_virtual": false, + "name": "get", + "parameters": [], + "source_location": { + "column": 9, + "file": "src/t00071_mod.cppm", + "line": 7, + "translation_unit": "t00071.cc" + }, + "type": "int" + } + ], + "module": { + "is_private": false, + "name": "t00071.app" + }, + "name": "A", + "namespace": "clanguml::t00071", + "source_location": { + "column": 7, + "file": "src/t00071_mod.cppm", + "line": 6, + "translation_unit": "t00071.cc" + }, + "template_parameters": [], + "type": "class" + } + ], + "name": "app", + "type": "module" + }, + { + "bases": [], + "display_name": "clanguml::t00071::R", + "id": "1629943620359873327", + "is_abstract": false, + "is_nested": false, + "is_struct": false, + "is_template": false, + "is_union": false, + "members": [ + { + "access": "private", + "is_static": false, + "name": "a", + "source_location": { + "column": 8, + "file": "t00071.cc", + "line": 10, + "translation_unit": "t00071.cc" + }, + "type": "A *" + }, + { + "access": "private", + "is_static": false, + "name": "b", + "source_location": { + "column": 8, + "file": "t00071.cc", + "line": 11, + "translation_unit": "t00071.cc" + }, + "type": "B *" + }, + { + "access": "private", + "is_static": false, + "name": "c", + "source_location": { + "column": 8, + "file": "t00071.cc", + "line": 12, + "translation_unit": "t00071.cc" + }, + "type": "C *" + } + ], + "methods": [], + "name": "R", + "namespace": "clanguml::t00071", + "source_location": { + "column": 7, + "file": "t00071.cc", + "line": 9, + "translation_unit": "t00071.cc" + }, + "template_parameters": [], + "type": "class" + } + ], + "name": "t00071_class", + "relationships": [ + { + "access": "private", + "destination": "2210005074053139118", + "label": "a", + "source": "1629943620359873327", + "type": "association" + }, + { + "access": "private", + "destination": "1319862510251967999", + "label": "b", + "source": "1629943620359873327", + "type": "association" + }, + { + "access": "private", + "destination": "1697463991772603674", + "label": "c", + "source": "1629943620359873327", + "type": "association" + } + ], + "using_namespace": "clanguml::t00071" +} +``` diff --git a/docs/test_cases/t00071_class.svg b/docs/test_cases/t00071_class.svg new file mode 100644 index 000000000..a7afd8b89 --- /dev/null +++ b/docs/test_cases/t00071_class.svg @@ -0,0 +1,204 @@ + + + + + + + + + app + + + + + lib1 + + + + + mod1 + + + + + mod2 + + + + + lib2 + + + + + + + A + + + + + + + get() : int + + + + + + + + a : int + + + + + + + + + B + + + + + + + + + + BB + + T + + + + + + + + t : T + + + + + + + + + detail::BBB + + bbb1 + bbb2 + + + + + + + + + D + + + + + + + + + + E + + + + + + + + + + C + + + + + + + + + + CC + + T + + + + + + + + t : T + + + + + + + + + detail::CCC + + ccc1 + ccc2 + + + + + + + + + R + + + + + + + + a : A * + + + + + + + b : B * + + + + + + + c : C * + + + + + + + -a + + + + + -b + + + + + -c + + + diff --git a/docs/test_cases/t00071_class_mermaid.svg b/docs/test_cases/t00071_class_mermaid.svg new file mode 100644 index 000000000..1f30c0192 --- /dev/null +++ b/docs/test_cases/t00071_class_mermaid.svg @@ -0,0 +1,346 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + -a + +
+
+
+
+ + + +
+ + -b + +
+
+
+
+ + + +
+ + -c + +
+
+
+
+
+ + + + + + + + +
+ +
+
+ +
+ B +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ BB<T> +
+
+ +
+ -t : T +
+
+
+
+
+ + + + + + + +
+ «enumeration» +
+
+ +
+ detail::BBB +
+
+ +
+ bbb1 +
+
+ +
+ bbb2 +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ D +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ E +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ C +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ CC<T> +
+
+ +
+ -t : T +
+
+
+
+
+ + + + + + + +
+ «enumeration» +
+
+ +
+ detail::CCC +
+
+ +
+ ccc1 +
+
+ +
+ ccc2 +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ A +
+
+ +
+ -a : int +
+
+ +
+ -get() : : int +
+
+
+
+
+ + + + + + + +
+ +
+
+ +
+ R +
+
+ +
+ -a : A +
+
+ +
+ -b : B +
+
+ +
+ -c : C +
+
+
+
+
+
+
+
+
diff --git a/docs/test_cases/t20001_sequence.svg b/docs/test_cases/t20001_sequence.svg index fe2a38037..51e242fb0 100644 --- a/docs/test_cases/t20001_sequence.svg +++ b/docs/test_cases/t20001_sequence.svg @@ -1,116 +1,110 @@ - + - - - - - - - Basic sequence diagram example - - - - - - - - - - - - - - - tmain() - - tmain() + Basic sequence diagram example + + + + + + + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - B - - B + + + B + + B - - - - - - - - - - - - - A() + + + + + + + + + + + + + A() - - - - B(A &) + + + + B(A &) - - - Just add 2 numbers - - - - add(int,int) + + + Just add 2 numbers + + + + add(int,int) - - - - - And now add another 2 - - - - wrap_add3(int,int,int) + + + + + And now add another 2 + + + + wrap_add3(int,int,int) - - - - add3(int,int,int) + + + + add3(int,int,int) - - - - - - add(int,int) + + + + + + add(int,int) - - - - - - - - - - log_result(int) + + + + + + + + + + log_result(int) - - - - - - log_result(int) + + + + + + log_result(int) - - - - - Main test function + + + + + Main test function diff --git a/docs/test_cases/t20001_sequence_mermaid.svg b/docs/test_cases/t20001_sequence_mermaid.svg index 51e395798..ef11462dc 100644 --- a/docs/test_cases/t20001_sequence_mermaid.svg +++ b/docs/test_cases/t20001_sequence_mermaid.svg @@ -1,5 +1,4 @@ - - Basic sequence diagram example + @@ -64,17 +63,17 @@ - + - + - + @@ -128,29 +127,29 @@ Main test function - A() - - B(A &) - - add(int,int) - - - - wrap_add3(int,int,int) - - add3(int,int,int) - + A() + + B(A &) + + add(int,int) + + + + wrap_add3(int,int,int) + + add3(int,int,int) + add(int,int) log_result(int) - - - log_result(int) - - - + + + log_result(int) + + + Basic sequence diagram example diff --git a/docs/test_cases/t20002_sequence.svg b/docs/test_cases/t20002_sequence.svg index 188e8fd24..c89b0612f 100644 --- a/docs/test_cases/t20002_sequence.svg +++ b/docs/test_cases/t20002_sequence.svg @@ -1,61 +1,55 @@ - + - - - - - - - - - - - - - - - - - m1() - - m1() + + + + + + + + + + + m1() + + m1() - - - m2() - - m2() + + + m2() + + m2() - - - m3() - - m3() + + + m3() + + m3() - - - m4() - - m4() + + + m4() + + m4() - - - - - - - + + + + + + + - - - + + + - - - + + + diff --git a/docs/test_cases/t20002_sequence_mermaid.svg b/docs/test_cases/t20002_sequence_mermaid.svg index 856d0a45e..53f2199c8 100644 --- a/docs/test_cases/t20002_sequence_mermaid.svg +++ b/docs/test_cases/t20002_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -109,10 +109,10 @@ - - - - - - + + + + + + diff --git a/docs/test_cases/t20003_sequence.svg b/docs/test_cases/t20003_sequence.svg index 0502df176..e304652be 100644 --- a/docs/test_cases/t20003_sequence.svg +++ b/docs/test_cases/t20003_sequence.svg @@ -1,61 +1,55 @@ - + - - - - - - - - - - - - - - - - - m1<T>(T) - - m1<T>(T) + + + + + + + + + + + m1<T>(T) + + m1<T>(T) - - - m2<T>(T) - - m2<T>(T) + + + m2<T>(T) + + m2<T>(T) - - - m3<T>(T) - - m3<T>(T) + + + m3<T>(T) + + m3<T>(T) - - - m4<T>(T) - - m4<T>(T) + + + m4<T>(T) + + m4<T>(T) - - - - - - - + + + + + + + - - - + + + - - - + + + diff --git a/docs/test_cases/t20003_sequence_mermaid.svg b/docs/test_cases/t20003_sequence_mermaid.svg index 6541cbff6..1da4bead3 100644 --- a/docs/test_cases/t20003_sequence_mermaid.svg +++ b/docs/test_cases/t20003_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -109,10 +109,10 @@ - - - - - - + + + + + + diff --git a/docs/test_cases/t20004_sequence.svg b/docs/test_cases/t20004_sequence.svg index 32db2ffb1..61f8c38a3 100644 --- a/docs/test_cases/t20004_sequence.svg +++ b/docs/test_cases/t20004_sequence.svg @@ -1,157 +1,151 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - main() - - main() - - - - m1<float>(float) - - m1<float>(float) - - - - m1<unsigned long>(unsigned long) - - m1<unsigned long>(unsigned long) - - - - m4<unsigned long>(unsigned long) - - m4<unsigned long>(unsigned long) - - - - m1<std::string>(std::string) - - m1<std::string>(std::string) - - - - m2<std::string>(std::string) - - m2<std::string>(std::string) - - - - m1<int>(int) - - m1<int>(int) - - - - m2<int>(int) - - m2<int>(int) - - - - m3<int>(int) - - m3<int>(int) - - - - m4<int>(int) - - m4<int>(int) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + main() + + main() + + + + m1<float>(float) + + m1<float>(float) + + + + m1<unsigned long>(unsigned long) + + m1<unsigned long>(unsigned long) + + + + m4<unsigned long>(unsigned long) + + m4<unsigned long>(unsigned long) + + + + m1<std::string>(std::string) + + m1<std::string>(std::string) + + + + m2<std::string>(std::string) + + m2<std::string>(std::string) + + + + m1<int>(int) + + m1<int>(int) + + + + m2<int>(int) + + m2<int>(int) + + + + m3<int>(int) + + m3<int>(int) + + + + m4<int>(int) + + m4<int>(int) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t20004_sequence_mermaid.svg b/docs/test_cases/t20004_sequence_mermaid.svg index 20b66b63f..65a0309ae 100644 --- a/docs/test_cases/t20004_sequence_mermaid.svg +++ b/docs/test_cases/t20004_sequence_mermaid.svg @@ -168,17 +168,17 @@ - + - + - + @@ -217,40 +217,40 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t20005_sequence.svg b/docs/test_cases/t20005_sequence.svg index 3cea17ef6..5b458bed5 100644 --- a/docs/test_cases/t20005_sequence.svg +++ b/docs/test_cases/t20005_sequence.svg @@ -1,59 +1,53 @@ - + - - - - - - - - - - - - - - - C<T> - - C<T> + + + + + + + + + C<T> + + C<T> - - - B<T> - - B<T> + + + B<T> + + B<T> - - - A<T> - - A<T> + + + A<T> + + A<T> - - - - - - c(T) - - - - b(T) + + + + + + c(T) + + + + b(T) - - - - a(T) + + + + a(T) - - - - - - + + + + + + diff --git a/docs/test_cases/t20005_sequence_mermaid.svg b/docs/test_cases/t20005_sequence_mermaid.svg index 63cb67807..d0bced3ac 100644 --- a/docs/test_cases/t20005_sequence_mermaid.svg +++ b/docs/test_cases/t20005_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -106,16 +106,16 @@ - c(T) - - b(T) - - a(T) - - - - - - - + c(T) + + b(T) + + a(T) + + + + + + + diff --git a/docs/test_cases/t20006_sequence.svg b/docs/test_cases/t20006_sequence.svg index a254564e2..8c0ff9b82 100644 --- a/docs/test_cases/t20006_sequence.svg +++ b/docs/test_cases/t20006_sequence.svg @@ -1,207 +1,201 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() - - - - B<int> - - B<int> - - - - A<int> - - A<int> - - - - B<std::string> - - B<std::string> - - - - A<std::string> - - A<std::string> - - - - BB<int,std::string> - - BB<int,std::string> - - - - BB<int,float> - - BB<int,float> - - - - BB<int,int> - - BB<int,int> - - - - AA<int> - - AA<int> - - - - - - - - - - - - - - - - - - - - - - - b(int) - - - - - a1(int) - - - - - - - - - b(std::string) - - - - - a2(std::string) - - - - - - - - - BB(AA<int> *) - - - - - BB(AA<int> &) - - - - - bb1(int,int) - - - - - aa1(int) - - - - - bb2(int,int) - - - - - aa2(int) - - - - - bb1(int,std::string) - - - - - aa2(int) - - - - - bb2(int,std::string) - - - - - aa1(int) - - - - - bb1(int,float) - - - - - - - bb2(int,float) - - - - - aa2(int) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tmain() + + tmain() + + + + B<int> + + B<int> + + + + A<int> + + A<int> + + + + B<std::string> + + B<std::string> + + + + A<std::string> + + A<std::string> + + + + BB<int,std::string> + + BB<int,std::string> + + + + BB<int,float> + + BB<int,float> + + + + BB<int,int> + + BB<int,int> + + + + AA<int> + + AA<int> + + + + + + + + + + + + + + + + + + + + + + + b(int) + + + + + a1(int) + + + + + + + + + b(std::string) + + + + + a2(std::string) + + + + + + + + + BB(AA<int> *) + + + + + BB(AA<int> &) + + + + + bb1(int,int) + + + + + aa1(int) + + + + + bb2(int,int) + + + + + aa2(int) + + + + + bb1(int,std::string) + + + + + aa2(int) + + + + + bb2(int,std::string) + + + + + aa1(int) + + + + + bb1(int,float) + + + + + + + bb2(int,float) + + + + + aa2(int) diff --git a/docs/test_cases/t20006_sequence_mermaid.svg b/docs/test_cases/t20006_sequence_mermaid.svg index 33f9eca76..e291068dd 100644 --- a/docs/test_cases/t20006_sequence_mermaid.svg +++ b/docs/test_cases/t20006_sequence_mermaid.svg @@ -153,17 +153,17 @@ - + - + - + @@ -226,46 +226,46 @@ - b(int) - - a1(int) - - - - - - b(std::string) - - a2(std::string) - - - - - - BB(AA<int> *) - - BB(AA<int> &) - - bb1(int,int) - - aa1(int) - - bb2(int,int) - - aa2(int) - - bb1(int,std::string) - - aa2(int) - - bb2(int,std::string) - - aa1(int) - - bb1(int,float) - + b(int) + + a1(int) + + + + + + b(std::string) + + a2(std::string) + + + + + + BB(AA<int> *) + + BB(AA<int> &) + + bb1(int,int) + + aa1(int) + + bb2(int,int) + + aa2(int) + + bb1(int,std::string) + + aa2(int) + + bb2(int,std::string) + + aa1(int) + + bb1(int,float) + bb2(int,float) - aa2(int) - + aa2(int) + diff --git a/docs/test_cases/t20007_sequence.svg b/docs/test_cases/t20007_sequence.svg index f26892f63..23f8ca87e 100644 --- a/docs/test_cases/t20007_sequence.svg +++ b/docs/test_cases/t20007_sequence.svg @@ -1,70 +1,64 @@ - + - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + tmain() + + tmain() - - - Adder<int,int> - - Adder<int,int> + + + Adder<int,int> + + Adder<int,int> - - - Adder<int,float,double> - - Adder<int,float,double> + + + Adder<int,float,double> + + Adder<int,float,double> - - - Adder<std::string,std::string,std::string> - - Adder<std::string,std::string,std::string> + + + Adder<std::string,std::string,std::string> + + Adder<std::string,std::string,std::string> - - - - - - - - add(int &&,int &&) + + + + + + + + add(int &&,int &&) - - - - - - add(int &&,float &&,double &&) + + + + + + add(int &&,float &&,double &&) - - - - - - add(std::string &&,std::string &&,std::string &&) + + + + + + add(std::string &&,std::string &&,std::string &&) - - + + diff --git a/docs/test_cases/t20007_sequence_mermaid.svg b/docs/test_cases/t20007_sequence_mermaid.svg index 445787644..d8e74d36f 100644 --- a/docs/test_cases/t20007_sequence_mermaid.svg +++ b/docs/test_cases/t20007_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -109,16 +109,16 @@ - add(int &&,int &&) - - - - add(int &&,float &&,double &&) - - - - add(std::string &&,std::string &&,std::string &&) - - - + add(int &&,int &&) + + + + add(int &&,float &&,double &&) + + + + add(std::string &&,std::string &&,std::string &&) + + + diff --git a/docs/test_cases/t20008_sequence.svg b/docs/test_cases/t20008_sequence.svg index 811803db1..db08dfd7e 100644 --- a/docs/test_cases/t20008_sequence.svg +++ b/docs/test_cases/t20008_sequence.svg @@ -1,106 +1,100 @@ - + - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - B<int> - - B<int> + + + B<int> + + B<int> - - - A<int> - - A<int> + + + A<int> + + A<int> - - - B<const char *> - - B<const char *> + + + B<const char *> + + B<const char *> - - - A<const char *> - - A<const char *> + + + A<const char *> + + A<const char *> - - - B<std::string> - - B<std::string> + + + B<std::string> + + B<std::string> - - - A<std::string> - - A<std::string> + + + A<std::string> + + A<std::string> - - - - - - - - - - - b(int) + + + + + + + + + + + b(int) - - - - a1(int) + + + + a1(int) - - - - b(const char *) + + + + b(const char *) - - - - a2(const char *) + + + + a2(const char *) - - - - b(std::string) + + + + b(std::string) - - - - a3(std::string) + + + + a3(std::string) diff --git a/docs/test_cases/t20008_sequence_mermaid.svg b/docs/test_cases/t20008_sequence_mermaid.svg index 12de9b96b..7ed8f2b46 100644 --- a/docs/test_cases/t20008_sequence_mermaid.svg +++ b/docs/test_cases/t20008_sequence_mermaid.svg @@ -123,17 +123,17 @@ - + - + - + @@ -163,16 +163,16 @@ - b(int) - - a1(int) - - b(const char *) - - a2(const char *) - - b(std::string) - - a3(std::string) - + b(int) + + a1(int) + + b(const char *) + + a2(const char *) + + b(std::string) + + a3(std::string) + diff --git a/docs/test_cases/t20009_sequence.svg b/docs/test_cases/t20009_sequence.svg index b9342bc37..ae5e4c23e 100644 --- a/docs/test_cases/t20009_sequence.svg +++ b/docs/test_cases/t20009_sequence.svg @@ -1,106 +1,100 @@ - + - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - B<std::string> - - B<std::string> + + + B<std::string> + + B<std::string> - - - A<std::string> - - A<std::string> + + + A<std::string> + + A<std::string> - - - B<int> - - B<int> + + + B<int> + + B<int> - - - A<int> - - A<int> + + + A<int> + + A<int> - - - B<float> - - B<float> + + + B<float> + + B<float> - - - A<float> - - A<float> + + + A<float> + + A<float> - - - - - - - - - - - b(std::string) + + + + + + + + + + + b(std::string) - - - - a(std::string) + + + + a(std::string) - - - - b(int) + + + + b(int) - - - - a(int) + + + + a(int) - - - - b(float) + + + + b(float) - - - - a(float) + + + + a(float) diff --git a/docs/test_cases/t20009_sequence_mermaid.svg b/docs/test_cases/t20009_sequence_mermaid.svg index a5ffc27e4..f53d5c875 100644 --- a/docs/test_cases/t20009_sequence_mermaid.svg +++ b/docs/test_cases/t20009_sequence_mermaid.svg @@ -123,17 +123,17 @@ - + - + - + @@ -163,16 +163,16 @@ - b(std::string) - - a(std::string) - - b(int) - - a(int) - - b(float) - - a(float) - + b(std::string) + + a(std::string) + + b(int) + + a(int) + + b(float) + + a(float) + diff --git a/docs/test_cases/t20010_sequence.svg b/docs/test_cases/t20010_sequence.svg index 97d689c42..2325ea614 100644 --- a/docs/test_cases/t20010_sequence.svg +++ b/docs/test_cases/t20010_sequence.svg @@ -1,92 +1,86 @@ - + - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + tmain() + + tmain() - - - B<int> - - B<int> + + + B<int> + + B<int> - - - A - - A + + + A + + A - - - - - - - - - - - - - b1() + + + + + + + + + + + + + b1() - - - - a1() + + + + a1() - - - - b2() + + + + b2() - - - - a2() + + + + a2() - - - - b3() + + + + b3() - - - - a3() + + + + a3() - - - - b4() + + + + b4() - - - - a4() + + + + a4() diff --git a/docs/test_cases/t20010_sequence_mermaid.svg b/docs/test_cases/t20010_sequence_mermaid.svg index f8beb39ec..787ae425f 100644 --- a/docs/test_cases/t20010_sequence_mermaid.svg +++ b/docs/test_cases/t20010_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -109,20 +109,20 @@ - b1() - - a1() - - b2() - - a2() - - b3() - - a3() - - b4() - - a4() - + b1() + + a1() + + b2() + + a2() + + b3() + + a3() + + b4() + + a4() + diff --git a/docs/test_cases/t20011_sequence.svg b/docs/test_cases/t20011_sequence.svg index b6d821668..17c11786c 100644 --- a/docs/test_cases/t20011_sequence.svg +++ b/docs/test_cases/t20011_sequence.svg @@ -1,109 +1,103 @@ - + - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - - - - - - - - - - - a(int) + + + + + + + + + + + + + a(int) - - - alt - - - - - - a(int) + + + alt + + + + + + a(int) - - - - b(int) + + + + b(int) - - - - - - c(int) + + + + + + c(int) - - - - - - d(int) + + + + + + d(int) - - - alt - - - - - - b(int) + + + alt + + + + + + b(int) - - - - - - a(int) + + + + + + a(int) - - - alt - - - - - - a(int) + + + alt + + + + + + a(int) diff --git a/docs/test_cases/t20011_sequence_mermaid.svg b/docs/test_cases/t20011_sequence_mermaid.svg index c412119f4..1080c061a 100644 --- a/docs/test_cases/t20011_sequence_mermaid.svg +++ b/docs/test_cases/t20011_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -127,12 +127,12 @@
- a(int) - + a(int) + a(int) - b(int) - + b(int) + c(int) d(int) diff --git a/docs/test_cases/t20012_sequence.svg b/docs/test_cases/t20012_sequence.svg index 96fbed238..c9122e079 100644 --- a/docs/test_cases/t20012_sequence.svg +++ b/docs/test_cases/t20012_sequence.svg @@ -1,271 +1,265 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() - - - - tmain()::(lambda t20012.cc:67:20) - - tmain()::(lambda t20012.cc:67:20) - - - - A - - A - - - - B - - B - - - - tmain()::(lambda t20012.cc:80:20) - - tmain()::(lambda t20012.cc:80:20) - - - - C - - C - - - - R<R::(lambda t20012.cc:86:9)> - - R<R::(lambda t20012.cc:86:9)> - - - - tmain()::(lambda t20012.cc:86:9) - - tmain()::(lambda t20012.cc:86:9) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - operator()() - - - - - a() - - - - - - - aa() - - - - - - - aaa() - - - - - b() - - - - - - - bb() - - - - - - - bbb() - - - - - - - operator()() - - - - - c() - - - - - - - cc() - - - - - - - ccc() - - - - - operator()() - - - - - a() - - - - - - - aa() - - - - - - - aaa() - - - - - b() - - - - - - - bb() - - - - - - - bbb() - - - - - - - - - R((lambda at /home/bartek/devel/clang-uml/tests/t20012/t20012.cc:86:9) &&) - - - - - r() - - - - - operator()() - - - - - c() - - - - - - - cc() - - - - - - - ccc() - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tmain() + + tmain() + + + + tmain()::(lambda t20012.cc:67:20) + + tmain()::(lambda t20012.cc:67:20) + + + + A + + A + + + + B + + B + + + + tmain()::(lambda t20012.cc:80:20) + + tmain()::(lambda t20012.cc:80:20) + + + + C + + C + + + + R<R::(lambda t20012.cc:86:9)> + + R<R::(lambda t20012.cc:86:9)> + + + + tmain()::(lambda t20012.cc:86:9) + + tmain()::(lambda t20012.cc:86:9) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + operator()() + + + + + a() + + + + + + + aa() + + + + + + + aaa() + + + + + b() + + + + + + + bb() + + + + + + + bbb() + + + + + + + operator()() + + + + + c() + + + + + + + cc() + + + + + + + ccc() + + + + + operator()() + + + + + a() + + + + + + + aa() + + + + + + + aaa() + + + + + b() + + + + + + + bb() + + + + + + + bbb() + + + + + + + + + R((lambda at /home/bartek/devel/clang-uml/tests/t20012/t20012.cc:86:9) &&) + + + + + r() + + + + + operator()() + + + + + c() + + + + + + + cc() + + + + + + + ccc() + + + diff --git a/docs/test_cases/t20012_sequence_mermaid.svg b/docs/test_cases/t20012_sequence_mermaid.svg index 45caec59c..c0ac56690 100644 --- a/docs/test_cases/t20012_sequence_mermaid.svg +++ b/docs/test_cases/t20012_sequence_mermaid.svg @@ -138,17 +138,17 @@ - + - + - + @@ -232,60 +232,60 @@ - operator()() - - a() - + operator()() + + a() + aa() aaa() - b() - + b() + bb() bbb() - - - operator()() - - c() - + + + operator()() + + c() + cc() ccc() - operator()() - - a() - + operator()() + + a() + aa() aaa() - b() - + b() + bb() bbb() - - - - - R((lambda at /home/bartek/devel/clang-uml/tests/t20012/t20012.cc:86:9) &&) - - r() - - operator()() - - c() - + + + + + R((lambda at /home/bartek/devel/clang-uml/tests/t20012/t20012.cc:86:9) &&) + + r() + + operator()() + + c() + cc() ccc() - - + + diff --git a/docs/test_cases/t20013_sequence.svg b/docs/test_cases/t20013_sequence.svg index 82745b5d0..d89a1efdc 100644 --- a/docs/test_cases/t20013_sequence.svg +++ b/docs/test_cases/t20013_sequence.svg @@ -1,90 +1,84 @@ - + - - - - - - - - - - - - - - - - - - - tmain(int,char **) - - tmain(int,char **) + + + + + + + + + + + + + tmain(int,char **) + + tmain(int,char **) - - - B - - B + + + B + + B - - - A - - A + + + A + + A - - - - - - - - - - - b(int) + + + + + + + + + + + b(int) - - - - a1(int) + + + + a1(int) - - - - - - - - b(double) + + + + + + + + b(double) - - - - a2(double) + + + + a2(double) - - - - - - - - b(const char *) + + + + + + + + b(const char *) - - - - a3(const char *) + + + + a3(const char *) - - - - + + + + diff --git a/docs/test_cases/t20013_sequence_mermaid.svg b/docs/test_cases/t20013_sequence_mermaid.svg index 9113c14e8..1cc14dee4 100644 --- a/docs/test_cases/t20013_sequence_mermaid.svg +++ b/docs/test_cases/t20013_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -103,28 +103,28 @@ - b(int) - - a1(int) - - - - - - b(double) - - a2(double) - - - - - - b(const char *) - - a3(const char *) - - - - - + b(int) + + a1(int) + + + + + + b(double) + + a2(double) + + + + + + b(const char *) + + a3(const char *) + + + + + diff --git a/docs/test_cases/t20014.md b/docs/test_cases/t20014.md index aa6bae266..d35af34a6 100644 --- a/docs/test_cases/t20014.md +++ b/docs/test_cases/t20014.md @@ -17,55 +17,55 @@ diagrams: - function: "clanguml::t20014::tmain()" ``` ## Source code -File t20014.cc +File t20014_a.cc ```cpp -#include "include/t20014.h" -#include "include/t20014_b.h" -#include "include/t20014_c.h" - +#include "include/t20014_a.h" namespace clanguml { namespace t20014 { -void log(const char *msg) { } - -int tmain() -{ - B b; - C c; - - b.b1(0, 1); - b.b2(1, 2); +int A::a1(int i, int j) { return i + j; } - c.c1(2, 3); +int A::a2(int i, int j) { return i - j; } - return 0; -} } } ``` -File t20014_a.cc +File t20014_b.cc ```cpp -#include "include/t20014_a.h" +#include "include/t20014_b.h" namespace clanguml { namespace t20014 { -int A::a1(int i, int j) { return i + j; } +int B::b1(int i, int j) { return a_.a1(i, j); } -int A::a2(int i, int j) { return i - j; } +int B::b2(int i, int j) { return a_.a2(i, j); } } } ``` -File t20014_b.cc +File t20014.cc ```cpp +#include "include/t20014.h" #include "include/t20014_b.h" +#include "include/t20014_c.h" + namespace clanguml { namespace t20014 { -int B::b1(int i, int j) { return a_.a1(i, j); } +void log(const char *msg) { } -int B::b2(int i, int j) { return a_.a2(i, j); } +int tmain() +{ + B b; + C c; + + b.b1(0, 1); + b.b2(1, 2); + + c.c1(2, 3); + return 0; +} } } ``` diff --git a/docs/test_cases/t20014_sequence.svg b/docs/test_cases/t20014_sequence.svg index dee72eee7..a8adb8d0d 100644 --- a/docs/test_cases/t20014_sequence.svg +++ b/docs/test_cases/t20014_sequence.svg @@ -1,106 +1,100 @@ - + - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + tmain() + + tmain() - - - B - - B + + + B + + B - - - A - - A + + + A + + A - - - C<B,int> - - C<B,int> + + + C<B,int> + + C<B,int> - - - - - - - - - - - - b1(int,int) + + + + + + + + + + + + b1(int,int) - - - - a1(int,int) + + + + a1(int,int) - - - - - - - - b2(int,int) + + + + + + + + b2(int,int) - - - - a2(int,int) + + + + a2(int,int) - - - - - - - - c1(int,int) + + + + + + + + c1(int,int) - - - - b1(int,int) + + + + b1(int,int) - - - - a1(int,int) + + + + a1(int,int) - - - - - - + + + + + + diff --git a/docs/test_cases/t20014_sequence_mermaid.svg b/docs/test_cases/t20014_sequence_mermaid.svg index 701f40f77..863079c34 100644 --- a/docs/test_cases/t20014_sequence_mermaid.svg +++ b/docs/test_cases/t20014_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -121,32 +121,32 @@ - b1(int,int) - - a1(int,int) - - - - - - b2(int,int) - - a2(int,int) - - - - - - c1(int,int) - - b1(int,int) - - a1(int,int) - - - - - - - + b1(int,int) + + a1(int,int) + + + + + + b2(int,int) + + a2(int,int) + + + + + + c1(int,int) + + b1(int,int) + + a1(int,int) + + + + + + + diff --git a/docs/test_cases/t20015_sequence.svg b/docs/test_cases/t20015_sequence.svg index c11653fcd..2d66c97d0 100644 --- a/docs/test_cases/t20015_sequence.svg +++ b/docs/test_cases/t20015_sequence.svg @@ -1,36 +1,30 @@ - + - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + tmain() + + tmain() - - - B - - B + + + B + + B - - - - - - setup_a(std::shared_ptr<detail::A> &) + + + + + + setup_a(std::shared_ptr<detail::A> &) diff --git a/docs/test_cases/t20015_sequence_mermaid.svg b/docs/test_cases/t20015_sequence_mermaid.svg index 15fab6f55..1ad5fd15c 100644 --- a/docs/test_cases/t20015_sequence_mermaid.svg +++ b/docs/test_cases/t20015_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -73,6 +73,6 @@ - setup_a(std::shared_ptr<detail::A> &) - + setup_a(std::shared_ptr<detail::A> &) + diff --git a/docs/test_cases/t20016_sequence.svg b/docs/test_cases/t20016_sequence.svg index 855247e63..06aa5c569 100644 --- a/docs/test_cases/t20016_sequence.svg +++ b/docs/test_cases/t20016_sequence.svg @@ -1,68 +1,62 @@ - + - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + tmain() + + tmain() - - - B<long> - - B<long> + + + B<long> + + B<long> - - - A - - A + + + A + + A - - - - - - - - - b1(long) + + + + + + + + + b1(long) - - - - a1(int) + + + + a1(int) - - - - b2(long) + + + + b2(long) - - - - a2(const long &) + + + + a2(const long &) - - - - + + + + diff --git a/docs/test_cases/t20016_sequence_mermaid.svg b/docs/test_cases/t20016_sequence_mermaid.svg index a4e11094a..ab1dfed3b 100644 --- a/docs/test_cases/t20016_sequence_mermaid.svg +++ b/docs/test_cases/t20016_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -97,16 +97,16 @@ - b1(long) - - a1(int) - - b2(long) - - a2(const long &) - - - - - + b1(long) + + a1(int) + + b2(long) + + a2(const long &) + + + + + diff --git a/docs/test_cases/t20017_sequence.svg b/docs/test_cases/t20017_sequence.svg index 409b17752..922dc27c2 100644 --- a/docs/test_cases/t20017_sequence.svg +++ b/docs/test_cases/t20017_sequence.svg @@ -1,80 +1,74 @@ - + - - - - - - - - - - - - - - - - - t20017.cc - - t20017.cc - - include/t20017_a.h - - include/t20017_a.h - - include/t20017_b.h - - include/t20017_b.h - - - - - - - - - tmain() - - - - a3(int,int) + + + + + + + + + + + t20017.cc + + t20017.cc + + include/t20017_a.h + + include/t20017_a.h + + include/t20017_b.h + + include/t20017_b.h + + + + + + + + + tmain() + + + + a3(int,int) - - - - - - b1(int,int) + + + + + + b1(int,int) - - - - - - a2(int,int) + + + + + + a2(int,int) - - - - - - a1(int,int) + + + + + + a1(int,int) - - - - - - b2<int>(int,int) + + + + + + b2<int>(int,int) - - - - + + + + diff --git a/docs/test_cases/t20017_sequence_mermaid.svg b/docs/test_cases/t20017_sequence_mermaid.svg index 27d40e197..61f8c28f6 100644 --- a/docs/test_cases/t20017_sequence_mermaid.svg +++ b/docs/test_cases/t20017_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -115,28 +115,28 @@ - tmain() - - a3(int,int) - - - - b1(int,int) - - - - a2(int,int) - - - - a1(int,int) - - - - b2<int>(int,int) - - - - - + tmain() + + a3(int,int) + + + + b1(int,int) + + + + a2(int,int) + + + + a1(int,int) + + + + b2<int>(int,int) + + + + + diff --git a/docs/test_cases/t20018_sequence.svg b/docs/test_cases/t20018_sequence.svg index 931d5df09..de229a102 100644 --- a/docs/test_cases/t20018_sequence.svg +++ b/docs/test_cases/t20018_sequence.svg @@ -1,120 +1,114 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - Answer<Factorial<5>,120> - - Answer<Factorial<5>,120> + + + Answer<Factorial<5>,120> + + Answer<Factorial<5>,120> - - - Factorial<5> - - Factorial<5> + + + Factorial<5> + + Factorial<5> - - - Factorial<4> - - Factorial<4> + + + Factorial<4> + + Factorial<4> - - - Factorial<3> - - Factorial<3> + + + Factorial<3> + + Factorial<3> - - - Factorial<2> - - Factorial<2> + + + Factorial<2> + + Factorial<2> - - - Factorial<1> - - Factorial<1> + + + Factorial<1> + + Factorial<1> - - - Factorial<0> - - Factorial<0> + + + Factorial<0> + + Factorial<0> - - - - - - - - - - - - print() + + + + + + + + + + + + print() - - - - print(int) + + + + print(int) - - - - print(int) + + + + print(int) - - - - print(int) + + + + print(int) - - - - print(int) + + + + print(int) - - - - print(int) + + + + print(int) - - - - print(int) + + + + print(int) diff --git a/docs/test_cases/t20018_sequence_mermaid.svg b/docs/test_cases/t20018_sequence_mermaid.svg index 93ba205fe..f42342345 100644 --- a/docs/test_cases/t20018_sequence_mermaid.svg +++ b/docs/test_cases/t20018_sequence_mermaid.svg @@ -138,17 +138,17 @@ - + - + - + @@ -181,18 +181,18 @@ - print() - - print(int) - - print(int) - - print(int) - - print(int) - - print(int) - - print(int) - + print() + + print(int) + + print(int) + + print(int) + + print(int) + + print(int) + + print(int) + diff --git a/docs/test_cases/t20019_sequence.svg b/docs/test_cases/t20019_sequence.svg index af6372315..ba3dd8e0d 100644 --- a/docs/test_cases/t20019_sequence.svg +++ b/docs/test_cases/t20019_sequence.svg @@ -1,106 +1,100 @@ - + - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - Base<D1> - - Base<D1> + + + Base<D1> + + Base<D1> - - - D1 - - D1 + + + D1 + + D1 - - - Base<D2> - - Base<D2> + + + Base<D2> + + Base<D2> - - - D2 - - D2 + + + D2 + + D2 - - - - - - - - - - - - - name() + + + + + + + + + + + + + name() - - - - impl() + + + + impl() - - - - name() + + + + name() - - - - impl() + + + + impl() - - - - name() + + + + name() - - - - impl() + + + + impl() - - - - name() + + + + name() - - - - impl() + + + + impl() diff --git a/docs/test_cases/t20019_sequence_mermaid.svg b/docs/test_cases/t20019_sequence_mermaid.svg index 51597fd2d..0faa67ede 100644 --- a/docs/test_cases/t20019_sequence_mermaid.svg +++ b/docs/test_cases/t20019_sequence_mermaid.svg @@ -93,17 +93,17 @@ - + - + - + @@ -139,20 +139,20 @@ - name() - - impl() - - name() - - impl() - - name() - - impl() - - name() - - impl() - + name() + + impl() + + name() + + impl() + + name() + + impl() + + name() + + impl() + diff --git a/docs/test_cases/t20020_sequence.svg b/docs/test_cases/t20020_sequence.svg index 4e25416c6..d2ed0f527 100644 --- a/docs/test_cases/t20020_sequence.svg +++ b/docs/test_cases/t20020_sequence.svg @@ -1,203 +1,193 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() - - - - A - - A - - - - C - - C - - - - B - - B - - - - D<int> - - D<int> - - - - - - - - - - - - - - - - - - alt - - - - a1() - - - - - - - - a5() - - - - - - - alt - - - - [ - a2() - ] - - - - - - - [ - c3(int) - ] - - - - - - - b1() - - - - - - - - [ - a3() - ] - - - - - - - b2() - - - - - - - - a4() - - - - - - - log() - - - - alt - - - - c1() const - - - - alt - - - - - - [ - c2() const - ] - - - - - - - - - - - log() const - - - - alt - - - - d1(int,int) - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + tmain() + + tmain() + + + + A + + A + + + + C + + C + + + + B + + B + + + + D<int> + + D<int> + + + + + + + + + + + + + + + + + + alt + + + + a1() + + + + + + + + a5() + + + + + + + alt + + + + [ + a2() + ] + + + + + + + [ + c3(int) + ] + + + + + + + b1() + + + + + + + + [ + a3() + ] + + + + + + + b2() + + + + + + + + a4() + + + + + + + log() + + + + alt + + + + c1() const + + + + alt + + + + + + [ + c2() const + ] + + + + + + + + + + + log() const + + + + alt + + + + d1(int,int) + + + diff --git a/docs/test_cases/t20020_sequence_mermaid.svg b/docs/test_cases/t20020_sequence_mermaid.svg index df3f9b5ac..5d5264f70 100644 --- a/docs/test_cases/t20020_sequence_mermaid.svg +++ b/docs/test_cases/t20020_sequence_mermaid.svg @@ -93,17 +93,17 @@ - + - + - + @@ -213,50 +213,50 @@ - a1() - - - - a5() - - - - [a2()] - - - - [c3(int)] - - - - b1() - - - - [a3()] - - - - b2() - - - - a4() - - - - log() - - c1() const - + a1() + + + + a5() + + + + [a2()] + + + + [c3(int)] + + + + b1() + + + + [a3()] + + + + b2() + + + + a4() + + + + log() + + c1() const + [c2() const] log() const - d1(int,int) - - - + d1(int,int) + + + diff --git a/docs/test_cases/t20021_sequence.svg b/docs/test_cases/t20021_sequence.svg index d18826602..d196bbf17 100644 --- a/docs/test_cases/t20021_sequence.svg +++ b/docs/test_cases/t20021_sequence.svg @@ -1,178 +1,172 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - C - - C + + + C + + C - - - A - - A + + + A + + A - - - B - - B + + + B + + B - - - - - - - - - - - - - - - loop - - - - [ - c4() - ] + + + + + + + + + + + + + + + loop + + + + [ + c4() + ] - - - - - - c5() + + + + + + c5() - - - - - - - - - - a3() + + + + + + + + + + a3() - - - - - loop - - - loop - - - - [ - a2() - ] + + + + + loop + + + loop + + + + [ + a2() + ] - - - - - - [ - c1() - ] + + + + + + [ + c1() + ] - - - - - - [ - c2() - ] + + + + + + [ + c2() + ] - - - - - - a1() + + + + + + a1() - - - - - - [ - c3() - ] + + + + + + [ + c3() + ] - - - - - loop - - - - b2() const + + + + + loop + + + + b2() const - - - - - loop - - - - [ - contents() - ] + + + + + loop + + + + [ + contents() + ] - - - - - - b2() const + + + + + + b2() const - - + + diff --git a/docs/test_cases/t20021_sequence_mermaid.svg b/docs/test_cases/t20021_sequence_mermaid.svg index 5b801fd50..304da27ef 100644 --- a/docs/test_cases/t20021_sequence_mermaid.svg +++ b/docs/test_cases/t20021_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -188,48 +188,48 @@ - [c4()] - + [c4()] + c5() - - - a3() - - - - [a2()] - - - - [c1()] - - - - [c2()] - - - - a1() - - - - [c3()] - - - - b2() const - - - - [contents()] - - - - b2() const - - - + + + a3() + + + + [a2()] + + + + [c1()] + + + + [c2()] + + + + a1() + + + + [c3()] + + + + b2() const + + + + [contents()] + + + + b2() const + + + diff --git a/docs/test_cases/t20022_sequence.svg b/docs/test_cases/t20022_sequence.svg index 4395b7925..ffe018f66 100644 --- a/docs/test_cases/t20022_sequence.svg +++ b/docs/test_cases/t20022_sequence.svg @@ -1,58 +1,52 @@ - + - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - B - - B + + + B + + B - - - - - - - - A(std::unique_ptr - ) + + + + + + + + A(std::unique_ptr + ) - - - - a() + + + + a() - - - - b() + + + + b() diff --git a/docs/test_cases/t20022_sequence_mermaid.svg b/docs/test_cases/t20022_sequence_mermaid.svg index d9408adc4..d5311f888 100644 --- a/docs/test_cases/t20022_sequence_mermaid.svg +++ b/docs/test_cases/t20022_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -94,10 +94,10 @@ - A(std::unique_ptr<B>) - - a() - - b() - + A(std::unique_ptr<B>) + + a() + + b() + diff --git a/docs/test_cases/t20023_sequence.svg b/docs/test_cases/t20023_sequence.svg index 7b97fa28e..6f73c73b8 100644 --- a/docs/test_cases/t20023_sequence.svg +++ b/docs/test_cases/t20023_sequence.svg @@ -1,103 +1,94 @@ - + - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - - - - - - - - a() + + + + + + + + + + a() - - - try - - - - - - a1() + + + try + + + + + + a1() - - - - - - [std::runtime_error &] - - - - - - a2() + + + + + + [std::runtime_error &] + + + + + + a2() - - - - - - [std::logic_error &] - - - - - - a3() + + + + + + [std::logic_error &] + + + + + + a3() - - - - - - [...] - - - - - - a4() + + + + + + [...] + + + + + + a4() - - - - - - + + + + + + diff --git a/docs/test_cases/t20023_sequence_mermaid.svg b/docs/test_cases/t20023_sequence_mermaid.svg index 724fa9de7..fd33db0c3 100644 --- a/docs/test_cases/t20023_sequence_mermaid.svg +++ b/docs/test_cases/t20023_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -104,8 +104,8 @@ rror &] [...] - a() - + a() + a1() @@ -122,6 +122,6 @@ - - + + diff --git a/docs/test_cases/t20024_sequence.svg b/docs/test_cases/t20024_sequence.svg index 0db18bd4c..73febb286 100644 --- a/docs/test_cases/t20024_sequence.svg +++ b/docs/test_cases/t20024_sequence.svg @@ -1,172 +1,158 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - B - - B + + + B + + B - - - - - - - - - - - - - - - select(enum_a) + + + + + + + + + + + + + + + select(enum_a) - - - switch - - [zero] - - - - - - a0() + + + switch + + [zero] + + + + + + a0() - - - - - - [one] - - - - - - a1() + + + + + + [one] + + + + + + a1() - - - - - - [two] - - - - - - a2() + + + + + + [two] + + + + + + a2() - - - - - - [default] - - - - - - a3() + + + + + + [default] + + + + + + a3() - - - - - - - - - - select(colors) + + + + + + + + + + select(colors) - - - switch - - [enum colors::red] - - - - - - red() + + + switch + + [enum colors::red] + + + + + + red() - - [enum colors::orange] - - - - - - orange() + + [enum colors::orange] + + + + + + orange() - - [enum colors::green] - - - - - - green() + + [enum colors::green] + + + + + + green() - - [default] - - - - - - grey() + + [default] + + + + + + grey() diff --git a/docs/test_cases/t20024_sequence_mermaid.svg b/docs/test_cases/t20024_sequence_mermaid.svg index f7db7c3e1..b75ef24ae 100644 --- a/docs/test_cases/t20024_sequence_mermaid.svg +++ b/docs/test_cases/t20024_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -158,8 +158,8 @@ ] [default] - select(enum_a) - + select(enum_a) + a0() @@ -176,10 +176,10 @@ - - - select(colors) - + + + select(colors) + red() orange() diff --git a/docs/test_cases/t20025_sequence.svg b/docs/test_cases/t20025_sequence.svg index f919c8ee6..81d9adc01 100644 --- a/docs/test_cases/t20025_sequence.svg +++ b/docs/test_cases/t20025_sequence.svg @@ -1,53 +1,47 @@ - + - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - add(int,int) - - add(int,int) + + + add(int,int) + + add(int,int) - - - - - - - a() + + + + + + + a() - - - - - + + + + + - - + + diff --git a/docs/test_cases/t20025_sequence_mermaid.svg b/docs/test_cases/t20025_sequence_mermaid.svg index 35762bd1b..c0d865458 100644 --- a/docs/test_cases/t20025_sequence_mermaid.svg +++ b/docs/test_cases/t20025_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -91,12 +91,12 @@ - a() - - - - - - - + a() + + + + + + + diff --git a/docs/test_cases/t20026_sequence.svg b/docs/test_cases/t20026_sequence.svg index 0e3831340..2c0311048 100644 --- a/docs/test_cases/t20026_sequence.svg +++ b/docs/test_cases/t20026_sequence.svg @@ -1,36 +1,30 @@ - + - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - - - - a() + + + + + + a() diff --git a/docs/test_cases/t20026_sequence_mermaid.svg b/docs/test_cases/t20026_sequence_mermaid.svg index 121a3afbd..aa7c3fe8a 100644 --- a/docs/test_cases/t20026_sequence_mermaid.svg +++ b/docs/test_cases/t20026_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -73,6 +73,6 @@ - a() - + a() + diff --git a/docs/test_cases/t20027_sequence.svg b/docs/test_cases/t20027_sequence.svg index a246289c1..12fa08edf 100644 --- a/docs/test_cases/t20027_sequence.svg +++ b/docs/test_cases/t20027_sequence.svg @@ -1,36 +1,30 @@ - + - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - - - - a() + + + + + + a() diff --git a/docs/test_cases/t20027_sequence_mermaid.svg b/docs/test_cases/t20027_sequence_mermaid.svg index 121a3afbd..aa7c3fe8a 100644 --- a/docs/test_cases/t20027_sequence_mermaid.svg +++ b/docs/test_cases/t20027_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -73,6 +73,6 @@ - a() - + a() + diff --git a/docs/test_cases/t20028_sequence.svg b/docs/test_cases/t20028_sequence.svg index c59663677..db24a03b6 100644 --- a/docs/test_cases/t20028_sequence.svg +++ b/docs/test_cases/t20028_sequence.svg @@ -1,73 +1,66 @@ - + - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + tmain() + + tmain() - - - A - - A + + + A + + A - - - - - - - - alt - - - - [ - a() - ] + + + + + + + + alt + + + + [ + a() + ] - - - - - - b() + + + + + + b() - - - - - - c() + + + + + + c() - - - - - - - d() + + + + + + + d() - - + + diff --git a/docs/test_cases/t20028_sequence_mermaid.svg b/docs/test_cases/t20028_sequence_mermaid.svg index 0ebc51b34..8e6a25b52 100644 --- a/docs/test_cases/t20028_sequence_mermaid.svg +++ b/docs/test_cases/t20028_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -94,20 +94,20 @@ - [a()] - - - - b() - - - - c() - - - - d() - - - + [a()] + + + + b() + + + + c() + + + + d() + + + diff --git a/docs/test_cases/t20029_sequence.svg b/docs/test_cases/t20029_sequence.svg index 370102a5b..ae1d11652 100644 --- a/docs/test_cases/t20029_sequence.svg +++ b/docs/test_cases/t20029_sequence.svg @@ -1,142 +1,136 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - Encoder<Retrier<ConnectionPool>> - - Encoder<Retrier<ConnectionPool>> + + + Encoder<Retrier<ConnectionPool>> + + Encoder<Retrier<ConnectionPool>> - - - Retrier<ConnectionPool> - - Retrier<ConnectionPool> + + + Retrier<ConnectionPool> + + Retrier<ConnectionPool> - - - ConnectionPool - - ConnectionPool + + + ConnectionPool + + ConnectionPool - - - encode_b64(std::string &&) - - encode_b64(std::string &&) + + + encode_b64(std::string &&) + + encode_b64(std::string &&) - - - - - - - - - - Establish connection to the - remote server synchronously - - - - connect() + + + + + + + + + + Establish connection to the + remote server synchronously + + + + connect() - - - Repeat for each line in the - input stream - - - loop - - - alt - - - - [ - send(std::string &&) - ] + + + Repeat for each line in the + input stream + + + loop + + + alt + + + + [ + send(std::string &&) + ] - - - Encode the message using - Base64 encoding and pass - it to the next layer - - - - - - encode(std::string &&) + + + Encode the message using + Base64 encoding and pass + it to the next layer + + + + + + encode(std::string &&) - - - + + + - - - - - - - - - - send(std::string &&) + + + + + + + + + + send(std::string &&) - - - Repeat until send() succeeds - or retry count is exceeded - - - loop - - - alt - - - - [ - send(const std::string &) - ] + + + Repeat until send() succeeds + or retry count is exceeded + + + loop + + + alt + + + + [ + send(const std::string &) + ] - - - - - - + + + + + + diff --git a/docs/test_cases/t20029_sequence_mermaid.svg b/docs/test_cases/t20029_sequence_mermaid.svg index 262a00977..1938095eb 100644 --- a/docs/test_cases/t20029_sequence_mermaid.svg +++ b/docs/test_cases/t20029_sequence_mermaid.svg @@ -93,17 +93,17 @@ - + - + - + @@ -216,26 +216,26 @@ - connect() - - [send(std::string &&)] - + connect() + + [send(std::string &&)] + encode(std::string &&) - - - - + + + + - send(std::string &&) - - [send(const std::string &)] - - - - - - - + send(std::string &&) + + [send(const std::string &)] + + + + + + + diff --git a/docs/test_cases/t20030_sequence.svg b/docs/test_cases/t20030_sequence.svg index 20b8a1dce..c75f12f30 100644 --- a/docs/test_cases/t20030_sequence.svg +++ b/docs/test_cases/t20030_sequence.svg @@ -1,155 +1,149 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain(int) - - tmain(int) - - - - magic() - - magic() - - - - A - - A - - - - tmain(bool,int) - - tmain(bool,int) - - - - - - - - - - - - - - - - - - - - - - - - - - A(int) - - - - - operator+=(int) - - - - - - - add(int) - - - - - - - A() - - - - - - - create() - - - - - A() - - - - - - - create() - - - - - operator+=(int) - - - - - - - add(int) - - - - - - - operator=(const A &) - - - - - - - set(int) - - - - - - - value() const - - - + + + + + + + + + + + + + + + + + + + + + + tmain(int) + + tmain(int) + + + + magic() + + magic() + + + + A + + A + + + + tmain(bool,int) + + tmain(bool,int) + + + + + + + + + + + + + + + + + + + + + + + + + + A(int) + + + + + operator+=(int) + + + + + + + add(int) + + + + + + + A() + + + + + + + create() + + + + + A() + + + + + + + create() + + + + + operator+=(int) + + + + + + + add(int) + + + + + + + operator=(const A &) + + + + + + + set(int) + + + + + + + value() const + + + diff --git a/docs/test_cases/t20030_sequence_mermaid.svg b/docs/test_cases/t20030_sequence_mermaid.svg index 13ec0fccd..5fd85c747 100644 --- a/docs/test_cases/t20030_sequence_mermaid.svg +++ b/docs/test_cases/t20030_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -142,40 +142,40 @@ - - - - - A(int) - - operator+=(int) - + + + + + A(int) + + operator+=(int) + add(int) - - - A() - + + + A() + create() - A() - + A() + create() - operator+=(int) - + operator+=(int) + add(int) - - - operator=(const A &) - + + + operator=(const A &) + set(int) - - - value() const - - - + + + value() const + + + diff --git a/docs/test_cases/t20031_sequence.svg b/docs/test_cases/t20031_sequence.svg index bad071f91..aefafeb1d 100644 --- a/docs/test_cases/t20031_sequence.svg +++ b/docs/test_cases/t20031_sequence.svg @@ -1,77 +1,71 @@ - + - - - - - - - - - - - - - - - - - - - tmain(int) - - tmain(int) + + + + + + + + + + + + + tmain(int) + + tmain(int) - - - magic() - - magic() + + + magic() + + magic() - - - tmain(bool,int) - - tmain(bool,int) + + + tmain(bool,int) + + tmain(bool,int) - - - execute(std::function<int ()>) - - execute(std::function<int ()>) + + + execute(std::function<int ()>) + + execute(std::function<int ()>) - - - A - - A + + + A + + A - - - - - - - - + + + + + + + + - - - - - + + + + + - - - - - - value() const + + + + + + value() const - - + + diff --git a/docs/test_cases/t20031_sequence_mermaid.svg b/docs/test_cases/t20031_sequence_mermaid.svg index c6200e3a2..7bf65719e 100644 --- a/docs/test_cases/t20031_sequence_mermaid.svg +++ b/docs/test_cases/t20031_sequence_mermaid.svg @@ -93,17 +93,17 @@ - + - + - + @@ -127,16 +127,16 @@ - - - - - - - - - value() const - - - + + + + + + + + + value() const + + + diff --git a/docs/test_cases/t20032_sequence.svg b/docs/test_cases/t20032_sequence.svg index b07f4fc28..33a630a4b 100644 --- a/docs/test_cases/t20032_sequence.svg +++ b/docs/test_cases/t20032_sequence.svg @@ -1,96 +1,90 @@ - + - - - - - - - - - - - - - - - - - - - tmain(int,char **) - - tmain(int,char **) + + + + + + + + + + + + + tmain(int,char **) + + tmain(int,char **) - - - B - - B + + + B + + B - - - A - - A + + + A + + A - - - - - - - - - - - b(int) + + + + + + + + + + + b(int) - - - - a1(int) + + + + a1(int) - - - int - - - int - - - - b(double) + + + int + + + int + + + + b(double) - - - - a2(double) + + + + a2(double) - - - double - - - double - - - - b(const char *) + + + double + + + double + + + + b(const char *) - - - - a3(const char *) + + + + a3(const char *) - - - const char * - - - const char * + + + const char * + + + const char * diff --git a/docs/test_cases/t20032_sequence_mermaid.svg b/docs/test_cases/t20032_sequence_mermaid.svg index 86fd4f5a1..8e19e3e61 100644 --- a/docs/test_cases/t20032_sequence_mermaid.svg +++ b/docs/test_cases/t20032_sequence_mermaid.svg @@ -63,17 +63,17 @@ - + - + - + @@ -103,28 +103,28 @@ - b(int) - - a1(int) - - int - - int - - b(double) - - a2(double) - - double - - double - - b(const char *) - - a3(const char *) - - const char * - - const char * - + b(int) + + a1(int) + + int + + int + + b(double) + + a2(double) + + double + + double + + b(const char *) + + a3(const char *) + + const char * + + const char * + diff --git a/docs/test_cases/t20033_sequence.svg b/docs/test_cases/t20033_sequence.svg index cf252279b..975f15bcb 100644 --- a/docs/test_cases/t20033_sequence.svg +++ b/docs/test_cases/t20033_sequence.svg @@ -1,233 +1,222 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() - - - - A - - A - - - - - - - - - - - - - - - - - - - - - alt - [false] - - [reinterpret_cast<uint64_t>(&a) % 100 == 0ULL] - - - - a1() - - - - - [reinterpret_cast<uint64_t>(&a) % 64 == 0ULL] - - - - a2() - - - - - [a.a2() == 2 && a.a3() == 3] - - - - [ - a2() - ] - - - - - - - [ - a3() - ] - - - - - - - a3() - - - - - - - - a4() - - - - - - alt - [int i = a.a2(); i != 2] - - - - [ - a2() - ] - - - - - - - a3() - - - - - - loop - [int i = 0; i < a.a2(); i++] - - - - [ - a2() - ] - - - - - - - a3() - - - - - - - a3() - - - - - - loop - [retry_count--] - - - - a2() - - - - - - loop - [retry_count++ < a.a3()] - - - - a4() - - - - - - - [ - a3() - ] - - - - - - alt - [a.a4() % 6] - - - - [ - a4() - ] - - - - - - - loop - [ints] - - - - a4() - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tmain() + + tmain() + + + + A + + A + + + + + + + + + + + + + + + + + + + + + alt + [false] + + [reinterpret_cast<uint64_t>(&a) % 100 == 0ULL] + + + + a1() + + + + + [reinterpret_cast<uint64_t>(&a) % 64 == 0ULL] + + + + a2() + + + + + [a.a2() == 2 && a.a3() == 3] + + + + [ + a2() + ] + + + + + + + [ + a3() + ] + + + + + + + a3() + + + + + + + + a4() + + + + + + alt + [int i = a.a2(); i != 2] + + + + [ + a2() + ] + + + + + + + a3() + + + + + + loop + [int i = 0; i < a.a2(); i++] + + + + [ + a2() + ] + + + + + + + a3() + + + + + + + a3() + + + + + + loop + [retry_count--] + + + + a2() + + + + + + loop + [retry_count++ < a.a3()] + + + + a4() + + + + + + + [ + a3() + ] + + + + + + alt + [a.a4() % 6] + + + + [ + a4() + ] + + + + + + + loop + [ints] + + + + a4() + + + diff --git a/docs/test_cases/t20033_sequence_mermaid.svg b/docs/test_cases/t20033_sequence_mermaid.svg index 95d14083d..da3436ddd 100644 --- a/docs/test_cases/t20033_sequence_mermaid.svg +++ b/docs/test_cases/t20033_sequence_mermaid.svg @@ -48,17 +48,17 @@ - + - + - + @@ -102,11 +102,11 @@ [false] - [reinterpret_cast<uint6- - 4_t>(&a) % 100 == + [reinterpret_cast<uint- + 64_t>(&a) % 100 == 0ULL] - [reinterpret_cast<uint6- - 4_t>(&a) % 64 == + [reinterpret_cast<uint- + 64_t>(&a) % 64 == 0ULL] [a.a2() == 2 && a.a3() == 3] @@ -217,68 +217,68 @@ [ints] - a1() - - - - a2() - - - - [a2()] - - - - [a3()] - - - - a3() - - - - a4() - - - - [a2()] - - - - a3() - - - - [a2()] - - - - a3() - - - - a3() - - - - a2() - - - - a4() - - - - [a3()] - - - - [a4()] - - - - a4() - - - + a1() + + + + a2() + + + + [a2()] + + + + [a3()] + + + + a3() + + + + a4() + + + + [a2()] + + + + a3() + + + + [a2()] + + + + a3() + + + + a3() + + + + a2() + + + + a4() + + + + [a3()] + + + + [a4()] + + + + a4() + + + diff --git a/docs/test_cases/t20034_sequence.svg b/docs/test_cases/t20034_sequence.svg index d58a926d4..454d88883 100644 --- a/docs/test_cases/t20034_sequence.svg +++ b/docs/test_cases/t20034_sequence.svg @@ -1,170 +1,164 @@ - + - - - - - - - - - - - - - - D - - D - - - - C - - C - - - - B - - B - - - - A - - A - - - - D::d2()::(lambda t20034.cc:56:18) - - D::d2()::(lambda t20034.cc:56:18) - - - - d2() - - - - c2() - - - - - b2() - - - - - a2() - - - - - - - d2() - - - - a2() - - - - - - - d2() - - - - operator()() - - - - - a2() - - - - - - - d2() - - - - c4() - - - - - b4() - - - - - - - b2() - - - - - a2() - - - - - - - d2() - - - - c1() - - - - - b1() - - - - - a2() - - - - - - - d2() - - - - c3() - - - - - - - c2() - - - - - b2() - - - - - a2() + + + + + + + + D + + D + + + + C + + C + + + + B + + B + + + + A + + A + + + + D::d2()::(lambda t20034.cc:56:18) + + D::d2()::(lambda t20034.cc:56:18) + + + + d2() + + + + c2() + + + + + b2() + + + + + a2() + + + + + + + d2() + + + + a2() + + + + + + + d2() + + + + operator()() + + + + + a2() + + + + + + + d2() + + + + c4() + + + + + b4() + + + + + + + b2() + + + + + a2() + + + + + + + d2() + + + + c1() + + + + + b1() + + + + + a2() + + + + + + + d2() + + + + c3() + + + + + + + c2() + + + + + b2() + + + + + a2() diff --git a/docs/test_cases/t20034_sequence_mermaid.svg b/docs/test_cases/t20034_sequence_mermaid.svg index e8db81674..50735c407 100644 --- a/docs/test_cases/t20034_sequence_mermaid.svg +++ b/docs/test_cases/t20034_sequence_mermaid.svg @@ -108,17 +108,17 @@ - + - + - + @@ -127,50 +127,50 @@ - d2() - - c2() - - b2() - - a2() - - d2() - - a2() - - d2() - - operator()() - - a2() - - d2() - - c4() - - b4() - - b2() - - a2() - - d2() - - c1() - - b1() - - a2() - - d2() - - c3() - - c2() - - b2() - - a2() - + d2() + + c2() + + b2() + + a2() + + d2() + + a2() + + d2() + + operator()() + + a2() + + d2() + + c4() + + b4() + + b2() + + a2() + + d2() + + c1() + + b1() + + a2() + + d2() + + c3() + + c2() + + b2() + + a2() + diff --git a/docs/test_cases/t20035_sequence.svg b/docs/test_cases/t20035_sequence.svg index 2f1a311f8..896c3e7fb 100644 --- a/docs/test_cases/t20035_sequence.svg +++ b/docs/test_cases/t20035_sequence.svg @@ -1,53 +1,47 @@ - + - - - - - - - - - - - - - tmain(int,char **) - - tmain(int,char **) + + + + + + + tmain(int,char **) + + tmain(int,char **) - - - a(int) - - a(int) + + + a(int) + + a(int) - - - b1(int) - - b1(int) + + + b1(int) + + b1(int) - - - c(int) - - c(int) + + + c(int) + + c(int) - - - + + + - - - + + + - - - + + + diff --git a/docs/test_cases/t20035_sequence_mermaid.svg b/docs/test_cases/t20035_sequence_mermaid.svg index dbd1dab48..f0b89c987 100644 --- a/docs/test_cases/t20035_sequence_mermaid.svg +++ b/docs/test_cases/t20035_sequence_mermaid.svg @@ -78,17 +78,17 @@ - + - + - + @@ -97,10 +97,10 @@ - - - - - - + + + + + + diff --git a/docs/test_cases/t20036_sequence.svg b/docs/test_cases/t20036_sequence.svg index 2578e3245..8a32404c1 100644 --- a/docs/test_cases/t20036_sequence.svg +++ b/docs/test_cases/t20036_sequence.svg @@ -1,146 +1,140 @@ - + - - - - - - - - - - - - - C - - C - - - - B - - B - - - - A - - A - - - - D - - D - - - - c1() - - - - b1() - - - - - a2() - - - - - - - d1() - - - - c2() - - - - - b2() - - - - - a2() - - - - - - - d3() - - - - a2() - - - - - - - c4() - - - - b2() - - - - - a2() - - - - - - - c3() - - - - - - c2() - - - - - b2() - - - - - a2() - - - - - - - d2() - - - - c2() - - - - - b2() - - - - - a2() + + + + + + + C + + C + + + + B + + B + + + + A + + A + + + + D + + D + + + + c1() + + + + b1() + + + + + a2() + + + + + + + d1() + + + + c2() + + + + + b2() + + + + + a2() + + + + + + + d3() + + + + a2() + + + + + + + c4() + + + + b2() + + + + + a2() + + + + + + + c3() + + + + + + c2() + + + + + b2() + + + + + a2() + + + + + + + d2() + + + + c2() + + + + + b2() + + + + + a2() diff --git a/docs/test_cases/t20036_sequence_mermaid.svg b/docs/test_cases/t20036_sequence_mermaid.svg index cd661d111..8614a6c33 100644 --- a/docs/test_cases/t20036_sequence_mermaid.svg +++ b/docs/test_cases/t20036_sequence_mermaid.svg @@ -93,17 +93,17 @@ - + - + - + @@ -112,44 +112,44 @@ - c1() - - b1() - - a2() - - d1() - - c2() - - b2() - - a2() - - d3() - - a2() - - c4() - - b2() - - a2() - - c3() - - c2() - - b2() - - a2() - - d2() - - c2() - - b2() - - a2() - + c1() + + b1() + + a2() + + d1() + + c2() + + b2() + + a2() + + d3() + + a2() + + c4() + + b2() + + a2() + + c3() + + c2() + + b2() + + a2() + + d2() + + c2() + + b2() + + a2() + diff --git a/docs/test_cases/t20037_sequence.svg b/docs/test_cases/t20037_sequence.svg index 1447837bb..6830b1137 100644 --- a/docs/test_cases/t20037_sequence.svg +++ b/docs/test_cases/t20037_sequence.svg @@ -1,147 +1,141 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain(int,char **) - - tmain(int,char **) - - - - a() - - a() - - - - A - - A - - - - initb() - - initb() - - - - B - - B - - - - c() - - c() - - - - - - - - - - - - - - - - - - - - - A() - - - - - - - - - - - get() - - - - - - - - - - - - - - - - - - - get() - - - - - - - - - - - - - - - - - - - get() - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + tmain(int,char **) + + tmain(int,char **) + + + + a() + + a() + + + + A + + A + + + + initb() + + initb() + + + + B + + B + + + + c() + + c() + + + + + + + + + + + + + + + + + + + + + A() + + + + + + + + + + + get() + + + + + + + + + + + + + + + + + + + get() + + + + + + + + + + + + + + + + + + + get() + + + + + + + + + + + diff --git a/docs/test_cases/t20037_sequence_mermaid.svg b/docs/test_cases/t20037_sequence_mermaid.svg index eaf8a91cb..531e44ec8 100644 --- a/docs/test_cases/t20037_sequence_mermaid.svg +++ b/docs/test_cases/t20037_sequence_mermaid.svg @@ -108,17 +108,17 @@ - + - + - + @@ -163,46 +163,46 @@ - - - A() - - - - - - get() - - - - - - - - - - - - get() - - - - - - - - - - - - get() - - - - - - - - - + + + A() + + + + + + get() + + + + + + + + + + + + get() + + + + + + + + + + + + get() + + + + + + + + + diff --git a/docs/test_cases/t20038_sequence.svg b/docs/test_cases/t20038_sequence.svg index 4781482eb..6a68c489c 100644 --- a/docs/test_cases/t20038_sequence.svg +++ b/docs/test_cases/t20038_sequence.svg @@ -1,271 +1,263 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tmain() - - tmain() + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tmain() + + tmain() - - - B - - B + + + B + + B - - - A - - A + + + A + + A - - - add<int>(int,int) - - add<int>(int,int) + + + add<int>(int,int) + + add<int>(int,int) - - - add_impl<int>(int,int) - - add_impl<int>(int,int) + + + add_impl<int>(int,int) + + add_impl<int>(int,int) - - - add_impl<double>(double,double) - - add_impl<double>(double,double) + + + add_impl<double>(double,double) + + add_impl<double>(double,double) - - - - - - - - - - - - - - - - - - - - - - Nisl purus in mollis nunc sed id semper. - Varius vel pharetra vel turpis. Arcu - cursus vitae congue mauris rhoncus. - Risus feugiat in ante metus dictum - at tempor. Lacus vel facilisis volutpat - est. Auctor urna nunc id cursus metus - aliquam. Diam sit amet nisl suscipit - adipiscing. Potenti nullam ac tortor - vitae purus faucibus ornare suspendisse - sed. Lobortis feugiat vivamus at augue - eget arcu dictum varius. Non tellus - orci ac auctor. - - - alt - - - Repeat 5 times... - - - loop - - - - b() + + + + + + + + + + + + + + + + + + + + + + Nisl purus in mollis nunc sed id semper. + Varius vel pharetra vel turpis. Arcu + cursus vitae congue mauris rhoncus. + Risus feugiat in ante metus dictum + at tempor. Lacus vel facilisis volutpat + est. Auctor urna nunc id cursus metus + aliquam. Diam sit amet nisl suscipit + adipiscing. Potenti nullam ac tortor + vitae purus faucibus ornare suspendisse + sed. Lobortis feugiat vivamus at augue + eget arcu dictum varius. Non tellus + orci ac auctor. + + + alt + + + Repeat 5 times... + + + loop + + + + b() - - - - a() + + + + a() - - - - - - - - ... or just once - - - - b() + + + + + + + + ... or just once + + + + b() - - - - a() + + + + a() - - - - - - - - bbb() + + + + + + + + bbb() - - - - aaa() + + + + aaa() - - - - - - - - bbbb() + + + + + + + + bbbb() - - - - aaaa() + + + + aaaa() - - - + + + - - - Invoke 'add' implementation - - - + + + Invoke 'add' implementation + + + - - - - - - - - - - - This comment should be rendered only - once - - - - wrap(int) + + + + + + + + + + + This comment should be rendered only + once + + + + wrap(int) - - - - - What is 2 + 2? - - - + + + + + What is 2 + 2? + + + - - - - - Calling B::bbbbb() - - - - bbbbb() + + + + + Calling B::bbbbb() + + + + bbbbb() - - - - aaaa() + + + + aaaa() - - - + + + - - - Invoke 'add' implementation - - - + + + Invoke 'add' implementation + + + - - - - - - - - - - - This is a conditional operator - - - alt - - - - [ - bbb() - ] + + + + + + + + + + + This is a conditional operator + + + alt + + + + [ + bbb() + ] - - - - aaa() + + + + aaa() - - - - - + + + + + diff --git a/docs/test_cases/t20038_sequence_mermaid.svg b/docs/test_cases/t20038_sequence_mermaid.svg index 91eb0a953..25f5c3522 100644 --- a/docs/test_cases/t20038_sequence_mermaid.svg +++ b/docs/test_cases/t20038_sequence_mermaid.svg @@ -108,17 +108,17 @@ - + - + - + @@ -309,76 +309,76 @@ - b() - - a() - - - - - - b() - - a() - - - - - - bbb() - - aaa() - - - - - - bbbb() - - aaaa() - - - - - - - - - - - - - - wrap(int) - - - - - - - - bbbbb() - - aaaa() - - - - - - - - - - - - - - [bbb()] - - aaa() - - - - - + b() + + a() + + + + + + b() + + a() + + + + + + bbb() + + aaa() + + + + + + bbbb() + + aaaa() + + + + + + + + + + + + + + wrap(int) + + + + + + + + bbbbb() + + aaaa() + + + + + + + + + + + + + + [bbb()] + + aaa() + + + + + diff --git a/docs/test_cases/t30001_package.svg b/docs/test_cases/t30001_package.svg index 7d4138588..28e96bc6b 100644 --- a/docs/test_cases/t30001_package.svg +++ b/docs/test_cases/t30001_package.svg @@ -1,76 +1,87 @@ - + - - - - - - - Basic package diagram example - - - - A + Basic package diagram example + + + + + A + + + + + + + AA + + + + + + + B + + + + + + + AA + + + + + + AAA - - - - AA + + + + BBB - - - - B + + + + BB - - - - AA + + + + AAA - - - - AAA + + + + BBB - - - - BBB + + + + BB - - - - BB - - - - - AAA - - - - - BBB - - - - - BB - - - - A AAA note... - - - This is namespace AA in namespace A - - - This is namespace AA in namespace B - - - + + + + A AAA note... + + + + + This is namespace AA in namespace A + + + + + This is namespace AA in namespace B + + + + + + + diff --git a/docs/test_cases/t30001_package_mermaid.svg b/docs/test_cases/t30001_package_mermaid.svg index a1082ce02..93264eee3 100644 --- a/docs/test_cases/t30001_package_mermaid.svg +++ b/docs/test_cases/t30001_package_mermaid.svg @@ -1,23 +1,22 @@ - - Basic package diagram example + - + - + - + - + - + - + diff --git a/docs/test_cases/t30002_package.svg b/docs/test_cases/t30002_package.svg index b28106113..dac3304ee 100644 --- a/docs/test_cases/t30002_package.svg +++ b/docs/test_cases/t30002_package.svg @@ -1,164 +1,202 @@ - + - - - - - - - - - - A - - - - - AA - - - - - B - - - - - BB - - - - - A1 - - - - - A2 - - - - - A3 - - - - - A4 - - - - - A5 - - - - - A6 - - - - - A7 - - - - - A8 - - - - - A9 - - - - - A10 - - - - - A11 - - - - - A12 - - - - - A13 - - - - - A14 - - - - - A15 - - - - - A16 - - - - - A17 - - - - - A18 - - - - - BBB - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + A + + + + + + + AA + + + + + + + B + + + + + + + BB + + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + A6 + + + + + A7 + + + + + A8 + + + + + A9 + + + + + A10 + + + + + A11 + + + + + A12 + + + + + A13 + + + + + A14 + + + + + A15 + + + + + A16 + + + + + A17 + + + + + A18 + + + + + BBB + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t30002_package_mermaid.svg b/docs/test_cases/t30002_package_mermaid.svg index 652965df1..7f16d0033 100644 --- a/docs/test_cases/t30002_package_mermaid.svg +++ b/docs/test_cases/t30002_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -63,24 +63,24 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t30003_package.svg b/docs/test_cases/t30003_package.svg index c085f86c6..3bc5762d8 100644 --- a/docs/test_cases/t30003_package.svg +++ b/docs/test_cases/t30003_package.svg @@ -1,47 +1,49 @@ - + - - - - - - - - - - ns1 + + + + + ns1 + + + + + + + ns3 + «deprecated» + + + + + + + ns1 + + + + + + ns2_v1_0_0 - - - - ns3 - «deprecated» + + + + ns2_v0_9_0 + «deprecated» - - - - ns1 + + + + ns2 - - - - ns2_v1_0_0 - - - - - ns2_v0_9_0 - «deprecated» - - - - - ns2 - - - + + + + diff --git a/docs/test_cases/t30003_package_mermaid.svg b/docs/test_cases/t30003_package_mermaid.svg index 0a3b23e05..a33de6b3e 100644 --- a/docs/test_cases/t30003_package_mermaid.svg +++ b/docs/test_cases/t30003_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -48,7 +48,7 @@ - + diff --git a/docs/test_cases/t30004_package.svg b/docs/test_cases/t30004_package.svg index 9cd60c156..86887e73e 100644 --- a/docs/test_cases/t30004_package.svg +++ b/docs/test_cases/t30004_package.svg @@ -1,54 +1,54 @@ - + - - - - - - - - - - A + + + + + A + + + + + + Package AAA. + + + + + Package BBB. + + + + + CCCC package note. + + + + + We skipped DDD. + + + + + AAA - - - Package AAA. - - - Package BBB. - - - CCCC package note. - - - We skipped DDD. - - - - AAA + + + + BBB - - - - BBB + + + + CCC - - - - CCC + + + + EEE - - - - EEE - - - - - diff --git a/docs/test_cases/t30004_package_mermaid.svg b/docs/test_cases/t30004_package_mermaid.svg index b3da38b35..1a3774e11 100644 --- a/docs/test_cases/t30004_package_mermaid.svg +++ b/docs/test_cases/t30004_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + diff --git a/docs/test_cases/t30005_package.svg b/docs/test_cases/t30005_package.svg index 7ed8aa328..85314efb1 100644 --- a/docs/test_cases/t30005_package.svg +++ b/docs/test_cases/t30005_package.svg @@ -1,62 +1,72 @@ - + - - - - - - - - - - A + + + + + A + + + + + + + AA + + + + + + + B + + + + + + + BB + + + + + + + C + + + + + + + CC + + + + + + AAA - - - - AA + + + + BBB - - - - B + + + + CCC - - - - BB - - - - - C - - - - - CC - - - - - AAA - - - - - BBB - - - - - CCC - - - - - + + + + + + + + diff --git a/docs/test_cases/t30005_package_mermaid.svg b/docs/test_cases/t30005_package_mermaid.svg index f97615b4d..5cf8401dc 100644 --- a/docs/test_cases/t30005_package_mermaid.svg +++ b/docs/test_cases/t30005_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -83,8 +83,8 @@ - - + + diff --git a/docs/test_cases/t30006_package.svg b/docs/test_cases/t30006_package.svg index 0ce8cd11c..9014a29cf 100644 --- a/docs/test_cases/t30006_package.svg +++ b/docs/test_cases/t30006_package.svg @@ -1,36 +1,35 @@ - + - - - - - - - - - - B + + + + B - - - - A + + + + A - - - - C + + + + C - - - Top A note. - - - - - + + + + Top A note. + + + + + + + + + diff --git a/docs/test_cases/t30006_package_mermaid.svg b/docs/test_cases/t30006_package_mermaid.svg index 6bc8f0068..525d94bde 100644 --- a/docs/test_cases/t30006_package_mermaid.svg +++ b/docs/test_cases/t30006_package_mermaid.svg @@ -1,30 +1,30 @@ - + - + - + - + - + - + - - + + diff --git a/docs/test_cases/t30007_package.svg b/docs/test_cases/t30007_package.svg index 8e8531def..c565a5341 100644 --- a/docs/test_cases/t30007_package.svg +++ b/docs/test_cases/t30007_package.svg @@ -1,41 +1,45 @@ - + - - - - - - - - - - A + + + + + A + + + + + + B - - - - B + + + + AA - - - - AA + + + + C - - - - C - - - - Compare layout with t30006. - - - - - + + + + Compare layout with t30006. + + + + + + + + + + + + diff --git a/docs/test_cases/t30007_package_mermaid.svg b/docs/test_cases/t30007_package_mermaid.svg index bb0c362da..2422f95b7 100644 --- a/docs/test_cases/t30007_package_mermaid.svg +++ b/docs/test_cases/t30007_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -33,8 +33,8 @@ - - + + diff --git a/docs/test_cases/t30008_package.svg b/docs/test_cases/t30008_package.svg index 402a1dfd2..bc5d1a6a9 100644 --- a/docs/test_cases/t30008_package.svg +++ b/docs/test_cases/t30008_package.svg @@ -1,61 +1,67 @@ - + - - - - - - - - - - dependants + + + + + dependants + + + + + + + dependencies + + + + + + A - - - - dependencies + + + + B - - - - A + + + + C - - - - B + + + + D - - - - C + + + + E - - - - D + + + + F - - - - E - - - - - F - - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t30008_package_mermaid.svg b/docs/test_cases/t30008_package_mermaid.svg index 6d9fc16a9..7acd7df57 100644 --- a/docs/test_cases/t30008_package_mermaid.svg +++ b/docs/test_cases/t30008_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -38,8 +38,8 @@ - - + + @@ -111,8 +111,8 @@ - - + + diff --git a/docs/test_cases/t30009_package.svg b/docs/test_cases/t30009_package.svg index e736667a7..4b1692e86 100644 --- a/docs/test_cases/t30009_package.svg +++ b/docs/test_cases/t30009_package.svg @@ -1,63 +1,61 @@ - + - - - - - - - - - - One - - - - - Two - - - - - B - - - - - D - - - - - A - - - - - C - - - - - A - - - - - B - - - - - C - - - - - D + + + + + One + + + + + + + Two + + + + + + B + + + + + D + + + + + A + + + + + C + + + + + A + + + + + B + + + + + C + + + + + D diff --git a/docs/test_cases/t30009_package_mermaid.svg b/docs/test_cases/t30009_package_mermaid.svg index 903c69798..96147c29a 100644 --- a/docs/test_cases/t30009_package_mermaid.svg +++ b/docs/test_cases/t30009_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + diff --git a/docs/test_cases/t30010_package.svg b/docs/test_cases/t30010_package.svg index 2517bf981..eb39163ba 100644 --- a/docs/test_cases/t30010_package.svg +++ b/docs/test_cases/t30010_package.svg @@ -1,49 +1,53 @@ - + - - - - - - - - - libraries - - - - lib1 + + + + libraries + + + + + lib1 - - - - lib2 + + + + lib2 - - - - lib3 + + + + lib3 - - - - lib4 + + + + lib4 - - - - app + + + + app - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t30010_package_mermaid.svg b/docs/test_cases/t30010_package_mermaid.svg index 897b1799b..8b12ecd08 100644 --- a/docs/test_cases/t30010_package_mermaid.svg +++ b/docs/test_cases/t30010_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -33,10 +33,10 @@ - - - - + + + + diff --git a/docs/test_cases/t30011_package.svg b/docs/test_cases/t30011_package.svg index 61a22fe24..2b28ab19c 100644 --- a/docs/test_cases/t30011_package.svg +++ b/docs/test_cases/t30011_package.svg @@ -1,49 +1,53 @@ - + - - - - - - - - - libraries - - - - lib1 + + + + libraries + + + + + lib1 - - - - lib2 + + + + lib2 - - - - lib3 + + + + lib3 - - - - lib4 + + + + lib4 - - - - app + + + + app - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t30011_package_mermaid.svg b/docs/test_cases/t30011_package_mermaid.svg index 897b1799b..8b12ecd08 100644 --- a/docs/test_cases/t30011_package_mermaid.svg +++ b/docs/test_cases/t30011_package_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -33,10 +33,10 @@ - - - - + + + + diff --git a/docs/test_cases/t30012.md b/docs/test_cases/t30012.md new file mode 100644 index 000000000..6bd5bbcc6 --- /dev/null +++ b/docs/test_cases/t30012.md @@ -0,0 +1,110 @@ +# t30012 - C++20 modules package diagram test +## Config +```yaml +diagrams: + t30012_package: + type: package + glob: + - t30012.cc + package_type: module + include: + modules: + - t30012 + using_module: t30012 +``` +## Source code +File t30012.cc +```cpp +import t30012.app; +import t30012.app.lib1; +import t30012.app.lib1.mod1; +import t30012.app.lib1.mod2; +import t30012.app.lib2; + +namespace clanguml { +namespace t30012 { +class R { + A *a; + B *b; + C *c; +}; +} +} +``` +## Generated PlantUML diagrams +![t30012_package](./t30012_package.svg "C++20 modules package diagram test") +## Generated Mermaid diagrams +![t30012_package](./t30012_package_mermaid.svg "C++20 modules package diagram test") +## Generated JSON models +```json +{ + "diagram_type": "package", + "elements": [ + { + "display_name": "app", + "elements": [ + { + "display_name": "app.lib1", + "elements": [ + { + "display_name": "app.lib1.mod1", + "id": "1890617159212924206", + "is_deprecated": false, + "name": "mod1", + "source_location": { + "column": 7, + "file": "src/lib1mod1.cppm", + "line": 4, + "translation_unit": "t30012.cc" + }, + "type": "namespace" + }, + { + "display_name": "app.lib1.mod2", + "id": "206451677325228178", + "is_deprecated": false, + "name": "mod2", + "source_location": { + "column": 7, + "file": "src/lib1mod2.cppm", + "line": 4, + "translation_unit": "t30012.cc" + }, + "type": "namespace" + } + ], + "id": "2078388864960203240", + "is_deprecated": false, + "name": "lib1", + "source_location": { + "column": 7, + "file": "src/lib1.cppm", + "line": 4, + "translation_unit": "t30012.cc" + }, + "type": "namespace" + }, + { + "display_name": "app.lib2", + "id": "765684581621927632", + "is_deprecated": false, + "name": "lib2", + "source_location": { + "column": 7, + "file": "src/lib2.cppm", + "line": 4, + "translation_unit": "t30012.cc" + }, + "type": "namespace" + } + ], + "id": "381866731754697815", + "is_deprecated": false, + "name": "app", + "type": "namespace" + } + ], + "name": "t30012_package", + "relationships": [] +} +``` diff --git a/docs/test_cases/t30012_package.svg b/docs/test_cases/t30012_package.svg new file mode 100644 index 000000000..95d8a5c10 --- /dev/null +++ b/docs/test_cases/t30012_package.svg @@ -0,0 +1,34 @@ + + + + + + + + + app + + + + + + lib1 + + + + + + mod1 + + + + + mod2 + + + + + lib2 + + + diff --git a/docs/test_cases/t30012_package_mermaid.svg b/docs/test_cases/t30012_package_mermaid.svg new file mode 100644 index 000000000..bb6e2a9dc --- /dev/null +++ b/docs/test_cases/t30012_package_mermaid.svg @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ app +
+
+
+
+
+ + + + + + + + + +
+ lib1 +
+
+
+
+
+ + + + + + + + +
+ mod1 +
+
+
+
+ + + + + +
+ mod2 +
+
+
+
+
+
+ + + + + +
+ lib2 +
+
+
+
+
+
+
+
+
+
diff --git a/docs/test_cases/t30013.md b/docs/test_cases/t30013.md new file mode 100644 index 000000000..1d9bac614 --- /dev/null +++ b/docs/test_cases/t30013.md @@ -0,0 +1,394 @@ +# t30013 - C++20 modules package dependencies diagram test +## Config +```yaml +diagrams: + t30013_package: + type: package + glob: + - t30013.cc + package_type: module + include: + modules: + - t30013 + using_module: t30013 +``` +## Source code +File t30013.cc +```cpp +import t30013.app; +import t30013.mod2; +import t30013.mod3; +import t30013.mod4; +import t30013.mod5; +import t30013.mod6; +import t30013.mod7; +import t30013.mod8; +import t30013.mod9; +import t30013.mod10; +import t30013.mod11; +import t30013.mod12; +import t30013.mod13; +import t30013.mod14; +import t30013.mod15; +import t30013.mod16; +import t30013.mod17; +import t30013.mod18; + +namespace clanguml::t30013 { +class R { + CBA cba; +}; +} // namespace clanguml::t30013 +``` +## Generated PlantUML diagrams +![t30013_package](./t30013_package.svg "C++20 modules package dependencies diagram test") +## Generated Mermaid diagrams +![t30013_package](./t30013_package_mermaid.svg "C++20 modules package dependencies diagram test") +## Generated JSON models +```json +{ + "diagram_type": "package", + "elements": [ + { + "display_name": "mod1", + "id": "2044296282469444594", + "is_deprecated": false, + "name": "mod1", + "source_location": { + "column": 8, + "file": "src/mod1.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod2", + "id": "1532747677179216874", + "is_deprecated": false, + "name": "mod2", + "source_location": { + "column": 30, + "file": "src/mod2.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod3", + "id": "2181211985644595508", + "is_deprecated": false, + "name": "mod3", + "source_location": { + "column": 8, + "file": "src/mod3.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod4", + "id": "1994575092781206355", + "is_deprecated": false, + "name": "mod4", + "source_location": { + "column": 8, + "file": "src/mod4.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod5", + "id": "83546849245676714", + "is_deprecated": false, + "name": "mod5", + "source_location": { + "column": 8, + "file": "src/mod5.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod6", + "id": "441620369599169965", + "is_deprecated": false, + "name": "mod6", + "source_location": { + "column": 8, + "file": "src/mod6.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod7", + "id": "836435135277319151", + "is_deprecated": false, + "name": "mod7", + "source_location": { + "column": 8, + "file": "src/mod7.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod8", + "id": "420790450869221512", + "is_deprecated": false, + "name": "mod8", + "source_location": { + "column": 8, + "file": "src/mod8.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod9", + "id": "396495954682989840", + "is_deprecated": false, + "name": "mod9", + "source_location": { + "column": 8, + "file": "src/mod9.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod10", + "id": "2177162846045884064", + "is_deprecated": false, + "name": "mod10", + "source_location": { + "column": 8, + "file": "src/mod10.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod11", + "id": "1414886740502603020", + "is_deprecated": false, + "name": "mod11", + "source_location": { + "column": 8, + "file": "src/mod11.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod12", + "id": "1312439587201843275", + "is_deprecated": false, + "name": "mod12", + "source_location": { + "column": 8, + "file": "src/mod12.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod13", + "id": "1087761784810349022", + "is_deprecated": false, + "name": "mod13", + "source_location": { + "column": 8, + "file": "src/mod13.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod14", + "id": "613410583917815311", + "is_deprecated": false, + "name": "mod14", + "source_location": { + "column": 8, + "file": "src/mod14.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod15", + "id": "1226951305255100636", + "is_deprecated": false, + "name": "mod15", + "source_location": { + "column": 8, + "file": "src/mod15.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod16", + "id": "1931818205177002737", + "is_deprecated": false, + "name": "mod16", + "source_location": { + "column": 8, + "file": "src/mod16.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod17", + "id": "1954698286919808752", + "is_deprecated": false, + "name": "mod17", + "source_location": { + "column": 8, + "file": "src/mod17.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "mod18", + "id": "984386744169567889", + "is_deprecated": false, + "name": "mod18", + "source_location": { + "column": 12, + "file": "src/mod18.cppm", + "line": 4, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + }, + { + "display_name": "app", + "id": "45223532970498010", + "is_deprecated": false, + "name": "app", + "source_location": { + "column": 7, + "file": "src/app.cppm", + "line": 32, + "translation_unit": "t30013.cc" + }, + "type": "namespace" + } + ], + "name": "t30013_package", + "relationships": [ + { + "destination": "420790450869221512", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "396495954682989840", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "2044296282469444594", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1532747677179216874", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "2181211985644595508", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1994575092781206355", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1226951305255100636", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "984386744169567889", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1931818205177002737", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "613410583917815311", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "83546849245676714", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "836435135277319151", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1954698286919808752", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "441620369599169965", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "2177162846045884064", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1414886740502603020", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1312439587201843275", + "source": "45223532970498010", + "type": "dependency" + }, + { + "destination": "1087761784810349022", + "source": "45223532970498010", + "type": "dependency" + } + ] +} +``` diff --git a/docs/test_cases/t30013_package.svg b/docs/test_cases/t30013_package.svg new file mode 100644 index 000000000..d5516829a --- /dev/null +++ b/docs/test_cases/t30013_package.svg @@ -0,0 +1,174 @@ + + + + + + + + + mod1 + + + + + mod2 + + + + + mod3 + + + + + mod4 + + + + + mod5 + + + + + mod6 + + + + + mod7 + + + + + mod8 + + + + + mod9 + + + + + mod10 + + + + + mod11 + + + + + mod12 + + + + + mod13 + + + + + mod14 + + + + + mod15 + + + + + mod16 + + + + + mod17 + + + + + mod18 + + + + + app + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t30013_package_mermaid.svg b/docs/test_cases/t30013_package_mermaid.svg new file mode 100644 index 000000000..9e88cc842 --- /dev/null +++ b/docs/test_cases/t30013_package_mermaid.svg @@ -0,0 +1,421 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+ + + +
+ +
+
+
+
+
+ + + + + + +
+ app +
+
+
+
+ + + + + +
+ mod8 +
+
+
+
+ + + + + +
+ mod9 +
+
+
+
+ + + + + +
+ mod1 +
+
+
+
+ + + + + +
+ mod2 +
+
+
+
+ + + + + +
+ mod3 +
+
+
+
+ + + + + +
+ mod4 +
+
+
+
+ + + + + +
+ mod15 +
+
+
+
+ + + + + +
+ mod18 +
+
+
+
+ + + + + +
+ mod16 +
+
+
+
+ + + + + +
+ mod14 +
+
+
+
+ + + + + +
+ mod5 +
+
+
+
+ + + + + +
+ mod7 +
+
+
+
+ + + + + +
+ mod17 +
+
+
+
+ + + + + +
+ mod6 +
+
+
+
+ + + + + +
+ mod10 +
+
+
+
+ + + + + +
+ mod11 +
+
+
+
+ + + + + +
+ mod12 +
+
+
+
+ + + + + +
+ mod13 +
+
+
+
+
+
+
+
diff --git a/docs/test_cases/t40001_include.svg b/docs/test_cases/t40001_include.svg index 13fa4d9c5..91591438d 100644 --- a/docs/test_cases/t40001_include.svg +++ b/docs/test_cases/t40001_include.svg @@ -1,65 +1,97 @@ - + - - - - - - - Basic include diagram example - - - src - - - include - - - lib1 - - - - t40001.cc - - - - - t40001_include1.h - - - - lib1.h - - - string - - - vector - - - yaml-cpp/yaml.h - - - This is a lib1 include dir - - - This is a t40001_include1.h include file - - - - - - - - - - - - - - + Basic include diagram example + + + + src + + + + + include + + + + + lib1 + + + + + + t40001.cc + + + + + + + t40001_include1.h + + + + + + lib1.h + + + + + string + + + + + vector + + + + + yaml-cpp/yaml.h + + + + + This is a lib1 include dir + + + + + This is a t40001_include1.h include file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t40001_include_mermaid.svg b/docs/test_cases/t40001_include_mermaid.svg index 91873c2ef..0bcb2e3bf 100644 --- a/docs/test_cases/t40001_include_mermaid.svg +++ b/docs/test_cases/t40001_include_mermaid.svg @@ -1,23 +1,22 @@ - - Basic include diagram example + - + - + - + - + - + - + @@ -54,12 +53,12 @@ - - - - - - + + + + + + @@ -138,7 +137,7 @@
- + @@ -151,7 +150,7 @@ - + @@ -164,7 +163,7 @@ - + diff --git a/docs/test_cases/t40002_include.svg b/docs/test_cases/t40002_include.svg index 7760b594e..cb9c6e02f 100644 --- a/docs/test_cases/t40002_include.svg +++ b/docs/test_cases/t40002_include.svg @@ -1,66 +1,92 @@ - + - - - - - - - - - src - - - lib1 - - - lib2 - - - include - - - lib1 - - - lib2 - - - - t40002.cc - - - - - lib1.cc - - - - - lib2.cc - - - - - lib1.h - - - - - lib2.h - - - - - - - - - - - + + + + src + + + + + lib1 + + + + + lib2 + + + + + include + + + + + lib1 + + + + + lib2 + + + + + + t40002.cc + + + + + + + lib1.cc + + + + + + + lib2.cc + + + + + + + lib1.h + + + + + + + lib2.h + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t40002_include_mermaid.svg b/docs/test_cases/t40002_include_mermaid.svg index b26d81a5f..e49e2bfc2 100644 --- a/docs/test_cases/t40002_include_mermaid.svg +++ b/docs/test_cases/t40002_include_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -83,11 +83,11 @@ - - - - - + + + + + @@ -137,7 +137,7 @@ - + @@ -150,7 +150,7 @@ - + @@ -163,7 +163,7 @@ - + @@ -176,7 +176,7 @@ - + @@ -189,7 +189,7 @@ - + diff --git a/docs/test_cases/t40003_include.svg b/docs/test_cases/t40003_include.svg index 46d652d72..c1236a2b8 100644 --- a/docs/test_cases/t40003_include.svg +++ b/docs/test_cases/t40003_include.svg @@ -1,88 +1,128 @@ - + - - - - - - - - - src - - - dependants - - - dependencies - - - include - - - dependants - - - dependencies - - - - t1.cc - - - - - t2.cc - - - - - t3.h - - - - - t2.h - - - - t1.h - - - - t3.h - - - - - t2.h - - - - t1.h - - - - t5.h - - - - - - - - - - - - - - - - - + + + + src + + + + + dependants + + + + + dependencies + + + + + include + + + + + dependants + + + + + dependencies + + + + + + t1.cc + + + + + + + t2.cc + + + + + + + t3.h + + + + + + + t2.h + + + + + + t1.h + + + + + + t3.h + + + + + + + t2.h + + + + + + t1.h + + + + + + t5.h + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/test_cases/t40003_include_mermaid.svg b/docs/test_cases/t40003_include_mermaid.svg index 99dc87132..1453817c0 100644 --- a/docs/test_cases/t40003_include_mermaid.svg +++ b/docs/test_cases/t40003_include_mermaid.svg @@ -1,22 +1,22 @@ - + - + - + - + - + - + @@ -83,14 +83,14 @@ - - - - - - - - + + + + + + + + @@ -167,7 +167,7 @@ - + @@ -180,7 +180,7 @@ - + @@ -193,7 +193,7 @@ - + @@ -206,7 +206,7 @@ - + @@ -219,7 +219,7 @@ - + @@ -232,7 +232,7 @@ - + @@ -245,7 +245,7 @@ - + @@ -258,7 +258,7 @@ - + @@ -271,7 +271,7 @@ - + diff --git a/docs/test_cases/t90000_class.svg b/docs/test_cases/t90000_class.svg index 64b6d9629..03f295935 100644 --- a/docs/test_cases/t90000_class.svg +++ b/docs/test_cases/t90000_class.svg @@ -1,48 +1,60 @@ - + - - - - - - - - - - Foo - - - int value - - - - - ArrayList - - - - - This is a very important class. - - - This is a - floating note - - - This note is connected - to several objects. - - - - Boo - - - - - - + + + + + Foo + + + int value + + + + + + + ArrayList + + + + + + + This is a very important class. + + + + + This is a + floating note + + + + + This note is connected + to several objects. + + + + + + Boo + + + + + + + + + + + + + diff --git a/docs/test_cases/t90000_class_mermaid.svg b/docs/test_cases/t90000_class_mermaid.svg index ea66542d6..112348232 100644 --- a/docs/test_cases/t90000_class_mermaid.svg +++ b/docs/test_cases/t90000_class_mermaid.svg @@ -1,56 +1,61 @@ - + - + - + - + - + - + - + - + - + - - + + + + + + + - +