1 //------------------------------------------------------------------------------
2 // GB_mx_Type_to_string: return a MATLAB string for a GrB_Type
3 //------------------------------------------------------------------------------
4 
5 // SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved.
6 // SPDX-License-Identifier: Apache-2.0
7 
8 //------------------------------------------------------------------------------
9 
10 // Given a GrB_Type, constructs a MATLAB string with the type name
11 
12 #include "GB_mex.h"
13 
GB_mx_Type_to_mxstring(const GrB_Type type)14 mxArray *GB_mx_Type_to_mxstring        // returns a MATLAB string
15 (
16     const GrB_Type type
17 )
18 {
19 
20     switch (type->code)
21     {
22         case GB_BOOL_code    : return (mxCreateString ("logical")) ;
23         case GB_INT8_code    : return (mxCreateString ("int8")) ;
24         case GB_INT16_code   : return (mxCreateString ("int16")) ;
25         case GB_INT32_code   : return (mxCreateString ("int32")) ;
26         case GB_INT64_code   : return (mxCreateString ("int64")) ;
27         case GB_UINT8_code   : return (mxCreateString ("uint8")) ;
28         case GB_UINT16_code  : return (mxCreateString ("uint16")) ;
29         case GB_UINT32_code  : return (mxCreateString ("uint32")) ;
30         case GB_UINT64_code  : return (mxCreateString ("uint64")) ;
31         case GB_FP32_code    : return (mxCreateString ("single")) ;
32         case GB_FP64_code    : return (mxCreateString ("double")) ;
33         case GB_FC32_code    : return (mxCreateString ("single complex")) ;
34         case GB_FC64_code    : return (mxCreateString ("double complex")) ;
35         case GB_UDT_code     : return (mxCreateString ("double complex")) ;
36         default              : return (mxCreateString ("other")) ;
37     }
38 }
39 
40