MCPcopy Create free account
hub / github.com/RedisGraph/RedisGraph / mexFunction

Function mexFunction

deps/GraphBLAS/Test/GB_mex_about7.c:20–289  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18#define FREE_DEEP_COPY ;
19
20void mexFunction
21(
22 int nargout,
23 mxArray *pargout [ ],
24 int nargin,
25 const mxArray *pargin [ ]
26)
27{
28
29 GrB_Info info ;
30 GrB_Matrix A = NULL, B = NULL, Y_mangled = NULL, Y = NULL, C1 = NULL,
31 C2 = NULL ;
32
33 //--------------------------------------------------------------------------
34 // startup GraphBLAS
35 //--------------------------------------------------------------------------
36
37 bool malloc_debug = GB_mx_get_global (true) ;
38 int expected = GrB_SUCCESS ;
39
40 //--------------------------------------------------------------------------
41 // matrix check
42 //--------------------------------------------------------------------------
43
44 OK (GrB_Matrix_new (&A, GrB_FP64, 100, 100)) ;
45 OK (GxB_Matrix_Option_set (A, GxB_SPARSITY_CONTROL, GxB_HYPERSPARSE)) ;
46 OK (GrB_Matrix_setElement_FP64 (A, (double) 1.2, 0, 0)) ;
47 OK (GrB_Matrix_wait (A, 1)) ;
48 OK (GxB_Matrix_fprint (A, "A valid", 3, NULL)) ;
49
50 printf ("\ninvalid A->p:\n") ;
51 size_t save = A->p_size ;
52 A->p_size = 3 ;
53 expected = GrB_INVALID_OBJECT ;
54 ERR (GxB_Matrix_fprint (A, "A with invalid A->p", 3, NULL)) ;
55 A->p_size = save ;
56
57 printf ("\ninvalid A->h:\n") ;
58 save = A->h_size ;
59 A->h_size = 3 ;
60 ERR (GxB_Matrix_fprint (A, "A with invalid A->h", 3, NULL)) ;
61 A->h_size = save ;
62
63 printf ("\ninvalid A->Y:\n") ;
64 CHECK (A->Y != NULL) ;
65 A->Y->magic = GB_MAGIC2 ;
66 ERR (GxB_Matrix_fprint (A, "A with invalid A->Y", 3, NULL)) ;
67 A->Y->magic = GB_MAGIC ;
68
69 OK (GrB_Matrix_new (&Y_mangled, GrB_FP64, 100, 100)) ;
70 OK (GrB_Matrix_free (&(A->Y))) ;
71 A->Y = Y_mangled ;
72 ERR (GxB_Matrix_fprint (A, "A with invalid A->Y (wrong type)", 3, NULL)) ;
73
74 OK (GrB_Matrix_free (&A)) ;
75
76 OK (GrB_Matrix_new (&A, GrB_FP64, 100, 100)) ;
77 OK (GxB_Matrix_Option_set (A, GxB_SPARSITY_CONTROL, GxB_SPARSE)) ;

Callers

nothing calls this directly

Calls 15

GB_mx_get_globalFunction · 0.85
GrB_Matrix_newFunction · 0.85
GxB_Matrix_Option_setFunction · 0.85
GrB_Matrix_waitFunction · 0.85
GxB_Matrix_fprintFunction · 0.85
GrB_Matrix_freeFunction · 0.85
GxB_pack_HyperHashFunction · 0.85
GB_aliasedFunction · 0.85
GrB_mxmFunction · 0.85
GB_mx_isequalFunction · 0.85

Tested by

no test coverage detected