# t20003 - Function template sequence diagram test case ## Config ```yaml diagrams: t20003_sequence: type: sequence glob: - t20003.cc include: namespaces: - clanguml::t20003 using_namespace: clanguml::t20003 from: - function: "clanguml::t20003::m1(T)" ``` ## Source code File `tests/t20003/t20003.cc` ```cpp namespace clanguml { namespace t20003 { template void m4(T p) { } template void m3(T p) { m4(p); } template void m2(T p) { m3(p); } template void m1(T p) { m2(p); } } } ``` ## Generated PlantUML diagrams ![t20003_sequence](./t20003_sequence.svg "Function template sequence diagram test case") ## Generated Mermaid diagrams ![t20003_sequence](./t20003_sequence_mermaid.svg "Function template sequence diagram test case") ## Generated JSON models ```json { "diagram_type": "sequence", "name": "t20003_sequence", "participants": [ { "display_name": "m1(T)", "id": "469205740799240869", "name": "m1", "namespace": "clanguml::t20003", "source_location": { "column": 28, "file": "t20003.cc", "line": 10, "translation_unit": "t20003.cc" }, "type": "function_template" }, { "display_name": "m2(T)", "id": "1502957449367040488", "name": "m2", "namespace": "clanguml::t20003", "source_location": { "column": 28, "file": "t20003.cc", "line": 8, "translation_unit": "t20003.cc" }, "type": "function_template" }, { "display_name": "m3(T)", "id": "613477682313507585", "name": "m3", "namespace": "clanguml::t20003", "source_location": { "column": 28, "file": "t20003.cc", "line": 6, "translation_unit": "t20003.cc" }, "type": "function_template" }, { "display_name": "m4(T)", "id": "619960023608507925", "name": "m4", "namespace": "clanguml::t20003", "source_location": { "column": 28, "file": "t20003.cc", "line": 4, "translation_unit": "t20003.cc" }, "type": "function_template" } ], "sequences": [ { "messages": [ { "from": { "activity_id": "469205740799240869", "participant_id": "469205740799240869" }, "name": "", "return_type": "void", "scope": "normal", "source_location": { "column": 38, "file": "t20003.cc", "line": 10, "translation_unit": "t20003.cc" }, "to": { "activity_id": "1502957449367040488", "participant_id": "1502957449367040488" }, "type": "message" }, { "from": { "activity_id": "1502957449367040488", "participant_id": "1502957449367040488" }, "name": "", "return_type": "void", "scope": "normal", "source_location": { "column": 38, "file": "t20003.cc", "line": 8, "translation_unit": "t20003.cc" }, "to": { "activity_id": "613477682313507585", "participant_id": "613477682313507585" }, "type": "message" }, { "from": { "activity_id": "613477682313507585", "participant_id": "613477682313507585" }, "name": "", "return_type": "void", "scope": "normal", "source_location": { "column": 38, "file": "t20003.cc", "line": 6, "translation_unit": "t20003.cc" }, "to": { "activity_id": "619960023608507925", "participant_id": "619960023608507925" }, "type": "message" } ], "start_from": { "id": 469205740799240869, "location": "clanguml::t20003::m1(T)" } } ], "using_namespace": "clanguml::t20003" } ```