LCOV - code coverage report
Current view: top level - data/source/entity - data_relationship_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_relationship_type.c; Copyright and License: see below */
       2              : 
       3              : #include "entity/data_relationship_type.h"
       4              : #include <stddef.h>
       5              : #include <assert.h>
       6              : 
       7              : const data_relationship_type_t DATA_RELATIONSHIP_TYPE_ARRAY [DATA_RELATIONSHIP_TYPE_COUNT]
       8              :     = {
       9              :         DATA_RELATIONSHIP_TYPE_UML_DEPENDENCY,
      10              :         DATA_RELATIONSHIP_TYPE_UML_ASSOCIATION,
      11              :         DATA_RELATIONSHIP_TYPE_UML_AGGREGATION,
      12              :         DATA_RELATIONSHIP_TYPE_UML_COMPOSITION,
      13              :         DATA_RELATIONSHIP_TYPE_UML_GENERALIZATION,
      14              :         DATA_RELATIONSHIP_TYPE_UML_REALIZATION,
      15              :         DATA_RELATIONSHIP_TYPE_UML_ASYNC_CALL,
      16              :         DATA_RELATIONSHIP_TYPE_UML_SYNC_CALL,
      17              :         DATA_RELATIONSHIP_TYPE_UML_RETURN_CALL,
      18              :         DATA_RELATIONSHIP_TYPE_UML_COMMUNICATION_PATH,
      19              :         DATA_RELATIONSHIP_TYPE_UML_CONTROL_FLOW,
      20              :         DATA_RELATIONSHIP_TYPE_UML_OBJECT_FLOW,
      21              :         DATA_RELATIONSHIP_TYPE_UML_DEPLOY,
      22              :         DATA_RELATIONSHIP_TYPE_UML_MANIFEST,
      23              :         DATA_RELATIONSHIP_TYPE_UML_EXTEND,
      24              :         DATA_RELATIONSHIP_TYPE_UML_INCLUDE,
      25              :         DATA_RELATIONSHIP_TYPE_UML_CONTAINMENT,
      26              :         DATA_RELATIONSHIP_TYPE_UML_REFINE,
      27              :         DATA_RELATIONSHIP_TYPE_UML_TRACE
      28              :     };
      29              : 
      30              : static const char *const DATA_RELATIONSHIP_TYPE_NAME_ARRAY [DATA_RELATIONSHIP_TYPE_HASH_MOD]
      31              :     = {
      32              :         /* 0x0 is DATA_RELATIONSHIP_TYPE_UML_DEPENDENCY */
      33              :         [ DATA_RELATIONSHIP_TYPE_UML_DEPENDENCY % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Dependency",
      34              :         /* 0x1b .. 0x1f */
      35              :         [0x1b] = "",
      36              :         [ DATA_RELATIONSHIP_TYPE_UML_ASSOCIATION % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Association",
      37              :         [ DATA_RELATIONSHIP_TYPE_UML_AGGREGATION % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Aggregation",
      38              :         [ DATA_RELATIONSHIP_TYPE_UML_COMPOSITION % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Composition",
      39              :         [0x1f] = "",
      40              :         /* 0x26 .. 0x29 */
      41              :         [ DATA_RELATIONSHIP_TYPE_UML_GENERALIZATION % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Generalization",
      42              :         [ DATA_RELATIONSHIP_TYPE_UML_REALIZATION % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Realization",
      43              :         [0x28] = "",
      44              :         [0x29] = "",
      45              :         /* 0x04 .. 0x0c */
      46              :         [0x4] = "",
      47              :         [ DATA_RELATIONSHIP_TYPE_UML_ASYNC_CALL % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Asynchronous Call",
      48              :         [ DATA_RELATIONSHIP_TYPE_UML_SYNC_CALL % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Synchronous Call",
      49              :         [ DATA_RELATIONSHIP_TYPE_UML_RETURN_CALL % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Return",
      50              :         [0x8] = "",
      51              :         [0x9] = "",
      52              :         [0xa] = "",
      53              :         [0xb] = "",
      54              :         [0xc] = "",
      55              :         /* 0x18 .. 0x1a */
      56              :         [0x18] = "",
      57              :         [ DATA_RELATIONSHIP_TYPE_UML_CONTROL_FLOW % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Control Flow",
      58              :         [ DATA_RELATIONSHIP_TYPE_UML_OBJECT_FLOW % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Object Flow",
      59              :         /* 0x20 .. 0x25 */
      60              :         [0x20] = "",
      61              :         [0x21] = "",
      62              :         [0x22] = "",
      63              :         [ DATA_RELATIONSHIP_TYPE_UML_DEPLOY % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Deployment",
      64              :         [ DATA_RELATIONSHIP_TYPE_UML_MANIFEST % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Manifestation",
      65              :         [0x25] = "",
      66              :         /* 0x01 .. 0x03 */
      67              :         [0x1] = "",
      68              :         [ DATA_RELATIONSHIP_TYPE_UML_EXTEND % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Extension",
      69              :         [ DATA_RELATIONSHIP_TYPE_UML_INCLUDE % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Inclusion",
      70              :         /* 0x2a is DATA_RELATIONSHIP_TYPE_UML_CONTAINMENT */
      71              :         [ DATA_RELATIONSHIP_TYPE_UML_CONTAINMENT % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Containment",
      72              :         /* 0x0d .. 0x17 */
      73              :         [ DATA_RELATIONSHIP_TYPE_UML_REFINE % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Refinement",
      74              :         [ DATA_RELATIONSHIP_TYPE_UML_TRACE % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Trace",
      75              :         [ DATA_RELATIONSHIP_TYPE_UML_COMMUNICATION_PATH % DATA_RELATIONSHIP_TYPE_HASH_MOD ] = "Communication Path",
      76              :         [0x10] = "",
      77              :         [0x11] = "",
      78              :         [0x12] = "",
      79              :         [0x13] = "",
      80              :         [0x14] = "",
      81              :         [0x15] = "",
      82              :         [0x16] = "",
      83              :         [0x17] = "",
      84              :     };
      85              : 
      86          473 : const char * data_relationship_type_get_name( data_relationship_type_t this_ )
      87              : {
      88            0 :     const char * result
      89          473 :         = ( this_ == DATA_RELATIONSHIP_TYPE_VOID ) ? "" : DATA_RELATIONSHIP_TYPE_NAME_ARRAY[ this_ % DATA_RELATIONSHIP_TYPE_HASH_MOD ];
      90          473 :     assert( result != NULL );
      91          473 :     return ( result == NULL ) ? "" : result;
      92              : }
      93              : 
      94              : 
      95              : /*
      96              : Copyright 2021-2025 Andreas Warnke
      97              : 
      98              : Licensed under the Apache License, Version 2.0 (the "License");
      99              : you may not use this file except in compliance with the License.
     100              : You may obtain a copy of the License at
     101              : 
     102              :     http://www.apache.org/licenses/LICENSE-2.0
     103              : 
     104              : Unless required by applicable law or agreed to in writing, software
     105              : distributed under the License is distributed on an "AS IS" BASIS,
     106              : WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     107              : See the License for the specific language governing permissions and
     108              : limitations under the License.
     109              : */
        

Generated by: LCOV version 2.0-1