@@ -117,10 +117,15 @@ def __del__(self):
117117 if (self .arr .value != 0 ):
118118 clib .af_release_array (self .arr )
119119
120- def numdims (self ):
121- nd = c_uint (0 )
122- safe_call (clib .af_get_numdims (pointer (nd ), self .arr ))
123- return nd .value
120+ def elements (self ):
121+ num = c_ulonglong (0 )
122+ safe_call (clib .af_get_elements (pointer (num ), self .arr ))
123+ return num .value
124+
125+ def type (self ):
126+ dty = c_int (f32 .value )
127+ safe_call (clib .af_get_type (pointer (dty ), self .arr ))
128+ return dty .value
124129
125130 def dims (self ):
126131 d0 = c_longlong (0 )
@@ -131,10 +136,75 @@ def dims(self):
131136 dims = (d0 .value ,d1 .value ,d2 .value ,d3 .value )
132137 return dims [:self .numdims ()]
133138
134- def type (self ):
135- dty = c_int (f32 .value )
136- safe_call (clib .af_get_type (pointer (dty ), self .arr ))
137- return dty .value
139+ def numdims (self ):
140+ nd = c_uint (0 )
141+ safe_call (clib .af_get_numdims (pointer (nd ), self .arr ))
142+ return nd .value
143+
144+ def is_empty (self ):
145+ res = c_bool (False )
146+ safe_call (clib .af_is_empty (pointer (res ), self .arr ))
147+ return res .value
148+
149+ def is_scalar (self ):
150+ res = c_bool (False )
151+ safe_call (clib .af_is_scalar (pointer (res ), self .arr ))
152+ return res .value
153+
154+ def is_row (self ):
155+ res = c_bool (False )
156+ safe_call (clib .af_is_row (pointer (res ), self .arr ))
157+ return res .value
158+
159+ def is_column (self ):
160+ res = c_bool (False )
161+ safe_call (clib .af_is_column (pointer (res ), self .arr ))
162+ return res .value
163+
164+ def is_vector (self ):
165+ res = c_bool (False )
166+ safe_call (clib .af_is_vector (pointer (res ), self .arr ))
167+ return res .value
168+
169+ def is_complex (self ):
170+ res = c_bool (False )
171+ safe_call (clib .af_is_complex (pointer (res ), self .arr ))
172+ return res .value
173+
174+ def is_real (self ):
175+ res = c_bool (False )
176+ safe_call (clib .af_is_real (pointer (res ), self .arr ))
177+ return res .value
178+
179+ def is_double (self ):
180+ res = c_bool (False )
181+ safe_call (clib .af_is_double (pointer (res ), self .arr ))
182+ return res .value
183+
184+ def is_single (self ):
185+ res = c_bool (False )
186+ safe_call (clib .af_is_single (pointer (res ), self .arr ))
187+ return res .value
188+
189+ def is_real_floating (self ):
190+ res = c_bool (False )
191+ safe_call (clib .af_is_realfloating (pointer (res ), self .arr ))
192+ return res .value
193+
194+ def is_floating (self ):
195+ res = c_bool (False )
196+ safe_call (clib .af_is_floating (pointer (res ), self .arr ))
197+ return res .value
198+
199+ def is_integer (self ):
200+ res = c_bool (False )
201+ safe_call (clib .af_is_integer (pointer (res ), self .arr ))
202+ return res .value
203+
204+ def is_bool (self ):
205+ res = c_bool (False )
206+ safe_call (clib .af_is_bool (pointer (res ), self .arr ))
207+ return res .value
138208
139209 def __add__ (self , other ):
140210 return binary_func (self , other , clib .af_add )
0 commit comments