Beispiel #1
0
 def trans(cls, rows):
     rows = list(rows)
     if len(rows) == 1 and rows[0].n <= rows[0].unit:
         return rows[0].bit_decompose()
     n_columns = rows[0].n
     for row in rows:
         assert(row.n == n_columns)
     if n_columns == 1 and len(rows) <= cls.unit:
         return [cls.bit_compose(rows)]
     else:
         res = [cls.new(n=len(rows)) for i in range(n_columns)]
         inst.trans(len(res), *(res + rows))
         return res
Beispiel #2
0
 def trans(cls, rows):
     rows = list(rows)
     if len(rows) == 1:
         return rows[0].bit_decompose()
     n_columns = rows[0].n
     for row in rows:
         assert(row.n == n_columns)
     if n_columns == 1:
         return [cls.bit_compose(rows)]
     else:
         res = [cls.new(n=len(rows)) for i in range(n_columns)]
         inst.trans(len(res), *(res + rows))
         return res