Skip to content

Commit 46f01e3

Browse files
author
counterclocker
committed
Add printing to LLSparseMatrixView
1 parent cbe3b50 commit 46f01e3

37 files changed

Lines changed: 9961 additions & 9083 deletions

cysparse/sparse/ll_mat_views/ll_mat_view.cpx

Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -238,51 +238,28 @@ cdef class LLSparseMatrixView_@index@_@type@:
238238
"""
239239

240240
"""
241-
s = "of dim %d by %d" % (self.nrow, self.ncol)
242-
return s
241+
return self.A.attributes_short_string()
243242

244243
def attributes_long_string(self):
245-
246-
symmetric_string = None
247-
if self.__is_symmetric:
248-
symmetric_string = 'symmetric'
249-
else:
250-
symmetric_string = 'general'
251-
252-
store_zeros_string = None
253-
if self.__store_zeros:
254-
store_zeros_string = "store_zeros"
255-
else:
256-
store_zeros_string = "no_zeros"
257-
258-
s = "%s [%s, %s]" % (self.attributes_short_string(), symmetric_string, store_zeros_string)
259-
260-
return s
244+
return self.A.attributes_long_string()
261245

262246
def attributes_condensed(self):
263-
symmetric_string = None
264-
if self.__is_symmetric:
265-
symmetric_string = 'S'
266-
else:
267-
symmetric_string = 'G'
268-
269-
store_zeros_string = None
270-
if self.__store_zeros:
271-
store_zeros_string = "SZ"
272-
else:
273-
store_zeros_string = "NZ"
274-
275-
s= "(%s, %s, [%d, %d])" % (symmetric_string, store_zeros_string, self.nrow, self.ncol)
276-
277-
return s
247+
return self.A.attributes_condensed()
278248

279249
def _matrix_description_before_printing(self):
280-
s = "%s %s" % (self.__type_name, self.attributes_condensed())
281-
return s
250+
return self._matrix_description_before_printing()
282251

283252
def __repr__(self):
284-
s = "%s %s" % (self.__type_name, self.attributes_long_string())
285-
return s
253+
return 'View to ' + self.A.__repr__()
254+
255+
def __str__(self):
256+
"""
257+
Return a string representing the view of the matrix.
258+
259+
Warning:
260+
This method is costly! Use with care.
261+
"""
262+
return 'View to ' + str(self.matrix_copy())
286263

287264
########################################################################################################################
288265
# Factory methods

cysparse/sparse/ll_mat_views/ll_mat_view_INT32_t_COMPLEX128_t.c

Lines changed: 324 additions & 522 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cysparse/sparse/ll_mat_views/ll_mat_view_INT32_t_COMPLEX128_t.pyx

Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -235,51 +235,28 @@ cdef class LLSparseMatrixView_INT32_t_COMPLEX128_t:
235235
"""
236236
237237
"""
238-
s = "of dim %d by %d" % (self.nrow, self.ncol)
239-
return s
238+
return self.A.attributes_short_string()
240239

241240
def attributes_long_string(self):
242-
243-
symmetric_string = None
244-
if self.__is_symmetric:
245-
symmetric_string = 'symmetric'
246-
else:
247-
symmetric_string = 'general'
248-
249-
store_zeros_string = None
250-
if self.__store_zeros:
251-
store_zeros_string = "store_zeros"
252-
else:
253-
store_zeros_string = "no_zeros"
254-
255-
s = "%s [%s, %s]" % (self.attributes_short_string(), symmetric_string, store_zeros_string)
256-
257-
return s
241+
return self.A.attributes_long_string()
258242

259243
def attributes_condensed(self):
260-
symmetric_string = None
261-
if self.__is_symmetric:
262-
symmetric_string = 'S'
263-
else:
264-
symmetric_string = 'G'
265-
266-
store_zeros_string = None
267-
if self.__store_zeros:
268-
store_zeros_string = "SZ"
269-
else:
270-
store_zeros_string = "NZ"
271-
272-
s= "(%s, %s, [%d, %d])" % (symmetric_string, store_zeros_string, self.nrow, self.ncol)
273-
274-
return s
244+
return self.A.attributes_condensed()
275245

276246
def _matrix_description_before_printing(self):
277-
s = "%s %s" % (self.__type_name, self.attributes_condensed())
278-
return s
247+
return self._matrix_description_before_printing()
279248

280249
def __repr__(self):
281-
s = "%s %s" % (self.__type_name, self.attributes_long_string())
282-
return s
250+
return 'View to ' + self.A.__repr__()
251+
252+
def __str__(self):
253+
"""
254+
Return a string representing the view of the matrix.
255+
256+
Warning:
257+
This method is costly! Use with care.
258+
"""
259+
return 'View to ' + str(self.matrix_copy())
283260

284261
########################################################################################################################
285262
# Factory methods

0 commit comments

Comments
 (0)