1 //------------------------------------------------------------------------------
2 // GxB_SelectOp_xtype: return the type of x for z=f(x,thunk)
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 #include "GB.h"
11
GxB_SelectOp_xtype(GrB_Type * xtype,GxB_SelectOp selectop)12 GrB_Info GxB_SelectOp_xtype // return the type of x or NULL if generic
13 (
14 GrB_Type *xtype, // return type of input x
15 GxB_SelectOp selectop // select operator
16 )
17 {
18
19 //--------------------------------------------------------------------------
20 // check inputs
21 //--------------------------------------------------------------------------
22
23 GB_WHERE1 ("GxB_SelectOp_xtype (&xtype, selectop)") ;
24 GB_RETURN_IF_NULL (xtype) ;
25 GB_RETURN_IF_NULL_OR_FAULTY (selectop) ;
26 ASSERT_SELECTOP_OK (selectop, "selectop for xtype", GB0) ;
27
28 //--------------------------------------------------------------------------
29 // return the xtype
30 //--------------------------------------------------------------------------
31
32 (*xtype) = selectop->xtype ;
33 return (GrB_SUCCESS) ;
34 }
35
36