Ported template instantiation handling to cppast

This commit is contained in:
Bartek Kryza
2021-03-28 22:21:41 +02:00
parent 1daf611329
commit b61143a5b2
12 changed files with 642 additions and 622 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -56,7 +56,8 @@ TEST_CASE("t00003", "[test-case][class]")
REQUIRE_THAT(puml, IsField(Public("int public_member")));
REQUIRE_THAT(puml, IsField(Protected("int protected_member")));
REQUIRE_THAT(puml, IsField(Private("int private_member")));
REQUIRE_THAT(puml, IsField(Static(Public("unsigned long const auto_member"))));
REQUIRE_THAT(
puml, IsField(Static(Public("unsigned long const auto_member"))));
REQUIRE_THAT(puml, IsField(Private("int a")));
REQUIRE_THAT(puml, IsField(Private("int b")));

View File

@@ -48,8 +48,7 @@ TEST_CASE("t00009", "[test-case][class]")
REQUIRE_THAT(puml, IsField(Public("T value")));
REQUIRE_THAT(puml, IsField(Public("A<int> aint")));
REQUIRE_THAT(puml, IsField(Public("A<std::string>* astring")));
REQUIRE_THAT(
puml, IsField(Public("A<std::vector<std::string>>& avector")));
REQUIRE_THAT(puml, IsField(Public("A<std::vector<std::string>>& avector")));
REQUIRE_THAT(puml, IsInstantiation(_A("A<T>"), _A("A<int>")));
REQUIRE_THAT(puml, IsInstantiation(_A("A<T>"), _A("A<std::string>")));

View File

@@ -47,7 +47,7 @@ TEST_CASE("t00011", "[test-case][class]")
REQUIRE_THAT(puml, IsClass(_A("D<T>")));
REQUIRE_THAT(puml, IsFriend(_A("A"), _A("B")));
//REQUIRE_THAT(puml, IsFriend(_A("A"), _A("D<T>")));
// REQUIRE_THAT(puml, IsFriend(_A("A"), _A("D<T>")));
save_puml(
"./" + config.output_directory + "/" + diagram->name + ".puml", puml);

View File

@@ -3,6 +3,7 @@
#include <numeric>
#include <string>
#include <variant>
#include <vector>
namespace clanguml {
namespace t00012 {

View File

@@ -50,7 +50,7 @@ TEST_CASE("t00012", "[test-case][class]")
puml, IsInstantiation(_A("B<int Is...>"), _A("B<1, 1, 1, 1>")));
REQUIRE_THAT(puml,
IsInstantiation(_A("C<T, int Is...>"),
_A("C<std::map<int, "
_A("C<std::map<int,"
"std::vector<std::vector<std::vector<std::string>>>>, 3, 3, "
"3>")));