LCOV - code coverage report
Current view: top level - data/source/entity - data_diagram_type.c (source / functions) Coverage Total Hit
Test: crystal-facet-uml_v1.67.0_covts Lines: 80.0 % 5 4
Test Date: 2025-11-06 17:22:08 Functions: 100.0 % 1 1

            Line data    Source code
       1              : /* File: data_diagram_type.c; Copyright and License: see below */
       2              : 
       3              : #include "entity/data_diagram_type.h"
       4              : #include <stddef.h>
       5              : #include <assert.h>
       6              : 
       7              : const data_diagram_type_t DATA_DIAGRAM_TYPE_ARRAY [DATA_DIAGRAM_TYPE_COUNT]
       8              :     = {
       9              :         DATA_DIAGRAM_TYPE_LIST,
      10              :         DATA_DIAGRAM_TYPE_BOX_DIAGRAM,
      11              :         DATA_DIAGRAM_TYPE_SYSML_BLOCK_DEFINITION_DIAGRAM,
      12              :         DATA_DIAGRAM_TYPE_SYSML_INTERNAL_BLOCK_DIAGRAM,
      13              :         DATA_DIAGRAM_TYPE_SYSML_PARAMETRIC_DIAGRAM,
      14              :         DATA_DIAGRAM_TYPE_SYSML_REQUIREMENTS_DIAGRAM,
      15              :         DATA_DIAGRAM_TYPE_UML_USE_CASE_DIAGRAM,
      16              :         DATA_DIAGRAM_TYPE_UML_ACTIVITY_DIAGRAM,
      17              :         DATA_DIAGRAM_TYPE_UML_STATE_MACHINE_DIAGRAM,
      18              :         DATA_DIAGRAM_TYPE_UML_SEQUENCE_DIAGRAM,
      19              :         DATA_DIAGRAM_TYPE_UML_COMMUNICATION_DIAGRAM,
      20              :         /* DATA_DIAGRAM_TYPE_DEPRECATED_INTERACTION_OVERVIEW_DIAGRAM, */
      21              :         DATA_DIAGRAM_TYPE_UML_TIMING_DIAGRAM,
      22              :         DATA_DIAGRAM_TYPE_INTERACTION_OVERVIEW_DIAGRAM,
      23              :         DATA_DIAGRAM_TYPE_UML_DEPLOYMENT_DIAGRAM,
      24              :         DATA_DIAGRAM_TYPE_UML_COMPONENT_DIAGRAM,
      25              :         DATA_DIAGRAM_TYPE_UML_COMPOSITE_STRUCTURE_DIAGRAM,
      26              :         DATA_DIAGRAM_TYPE_UML_PACKAGE_DIAGRAM,
      27              :         DATA_DIAGRAM_TYPE_UML_CLASS_DIAGRAM,
      28              :         DATA_DIAGRAM_TYPE_UML_PROFILE_DIAGRAM
      29              :     };
      30              : 
      31              : static const char *const DATA_DIAGRAM_TYPE_NAME_ARRAY [DATA_DIAGRAM_TYPE_HASH_MOD]
      32              :     = {
      33              :         [ DATA_DIAGRAM_TYPE_LIST ] = "List",
      34              :         [ DATA_DIAGRAM_TYPE_BOX_DIAGRAM ] = "Box Overview",
      35              :         [2] = "",
      36              :         [3] = "",
      37              :         [ DATA_DIAGRAM_TYPE_SYSML_BLOCK_DEFINITION_DIAGRAM ] = "Block Definition Diagram",
      38              :         [ DATA_DIAGRAM_TYPE_SYSML_INTERNAL_BLOCK_DIAGRAM ] = "Internal Block Diagram",
      39              :         [6] = "",
      40              :         [ DATA_DIAGRAM_TYPE_SYSML_PARAMETRIC_DIAGRAM ] = "Parametric Diagram",
      41              :         [8] = "",
      42              :         [ DATA_DIAGRAM_TYPE_SYSML_REQUIREMENTS_DIAGRAM ] = "Requirement Diagram",
      43              :         [ DATA_DIAGRAM_TYPE_UML_USE_CASE_DIAGRAM ] = "Use Case Diagram",
      44              :         [ DATA_DIAGRAM_TYPE_UML_ACTIVITY_DIAGRAM ] = "Activity Diagram",
      45              :         [ DATA_DIAGRAM_TYPE_UML_STATE_MACHINE_DIAGRAM ] = "State Diagram",
      46              :         [ DATA_DIAGRAM_TYPE_UML_SEQUENCE_DIAGRAM ] = "Sequence Diagram",
      47              :         [ DATA_DIAGRAM_TYPE_UML_COMMUNICATION_DIAGRAM ] = "Communication Diagram",
      48              :         [15] = "",
      49              :         [ DATA_DIAGRAM_TYPE_UML_TIMING_DIAGRAM ] = "Timing Diagram",
      50              :         [ DATA_DIAGRAM_TYPE_INTERACTION_OVERVIEW_DIAGRAM ] = "Interation Overview Diagram",
      51              :         [18] = "",
      52              :         [19] = "",
      53              :         [20] = "",
      54              :         [21] = "",
      55              :         [22] = "",
      56              :         [23] = "",
      57              :         [24] = "",
      58              :         [25] = "",
      59              :         [26] = "",
      60              :         [27] = "",
      61              :         [28] = "",
      62              :         [29] = "",
      63              :         [ DATA_DIAGRAM_TYPE_UML_DEPLOYMENT_DIAGRAM ] = "Deployment Diagram",
      64              :         [ DATA_DIAGRAM_TYPE_UML_COMPONENT_DIAGRAM ] = "Component Diagram",
      65              :         [ DATA_DIAGRAM_TYPE_UML_COMPOSITE_STRUCTURE_DIAGRAM ] = "Composite Structure Diagram",
      66              :         [ DATA_DIAGRAM_TYPE_UML_PACKAGE_DIAGRAM ] = "Package Diagram",
      67              :         [ DATA_DIAGRAM_TYPE_UML_CLASS_DIAGRAM ] = "Class Diagram",
      68              :         [35] = "",
      69              :         [36] = "",
      70              :         [37] = "",
      71              :         [38] = "",
      72              :         [ DATA_DIAGRAM_TYPE_UML_PROFILE_DIAGRAM ] = "Profile Diagram",
      73              :     };
      74              : 
      75          163 : const char * data_diagram_type_get_name( data_diagram_type_t this_ )
      76              : {
      77            0 :     const char * result
      78          163 :         = ( this_ == DATA_DIAGRAM_TYPE_VOID ) ? "" : DATA_DIAGRAM_TYPE_NAME_ARRAY[ this_ % DATA_DIAGRAM_TYPE_HASH_MOD ];
      79          163 :     assert( result != NULL );
      80          163 :     return ( result == NULL ) ? "" : result;
      81              : }
      82              : 
      83              : 
      84              : /*
      85              : Copyright 2021-2025 Andreas Warnke
      86              : 
      87              : Licensed under the Apache License, Version 2.0 (the "License");
      88              : you may not use this file except in compliance with the License.
      89              : You may obtain a copy of the License at
      90              : 
      91              :     http://www.apache.org/licenses/LICENSE-2.0
      92              : 
      93              : Unless required by applicable law or agreed to in writing, software
      94              : distributed under the License is distributed on an "AS IS" BASIS,
      95              : WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      96              : See the License for the specific language governing permissions and
      97              : limitations under the License.
      98              : */
        

Generated by: LCOV version 2.0-1