Skip to content

Commit fc313ae

Browse files
committed
BinaryMatrix shift fix
1 parent 2f32bae commit fc313ae

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

pyrix/binarymatrix/binarymatrix.py

+8-9
Original file line numberDiff line numberDiff line change
@@ -103,15 +103,13 @@ def __sub__(self, BinaryMat2):
103103

104104
def __lshift__(self, bits):
105105
if(self.matrix.bitwidth==1):
106-
return BinaryMatrix(nrow=self.matrix.nrow,ncol=self.matrix.ncol,
107-
data=self.logicalShift(direction="left", bits=bits))
106+
return self.logicalShift(direction="left", bits=bits)
108107

109108
# *------- Right Shift BinaryMatrix ---------------------------------------*
110109

111110
def __rshift__(self, bits):
112111
if(self.matrix.bitwidth==1):
113-
return BinaryMatrix(nrow=self.matrix.nrow,ncol=self.matrix.ncol,
114-
data=self.logicalShift(direction="Right", bits=bits))
112+
return self.logicalShift(direction="Right", bits=bits)
115113

116114
# *------- pyrix.binarymatrix.BinaryMatrix.isBinaryMatrix() ---------------*
117115

@@ -396,7 +394,8 @@ def logicalShift(self, direction, bits):
396394
for _i in range(bits):
397395
dataArray.insert(-1, 0)
398396
dataArray.pop(0)
399-
return dataArray
397+
return BinaryMatrix(nrow=self.nrow,
398+
ncol=self.ncol, data=dataArray)
400399

401400
# *------- pyrix.binarymatrix.BinaryMatrix.circularShift() ----------------*
402401

@@ -417,8 +416,8 @@ def circularShift(self, direction, bits):
417416
firstelement = dataArray[0]
418417
dataArray.insert(-1, firstelement)
419418
dataArray.pop(0)
420-
setattr(self.matrix, name='data', value=dataArray)
421-
return self
419+
return BinaryMatrix(nrow=self.nrow,
420+
ncol=self.ncol,data=dataArray)
422421

423422
# *------- pyrix.binarymatrix.BinaryMatrix.arithmeticShift() --------------*
424423

@@ -439,8 +438,8 @@ def arithmeticShift(self, direction, bits):
439438
LSBvalue = 0
440439
dataArray.insert(-1, LSBvalue)
441440
dataArray.pop(0)
442-
setattr(self.matrix, name='data', value=dataArray)
443-
return self
441+
return BinaryMatrix(nrow=self.nrow,
442+
ncol=self.ncol, data=dataArray)
444443

445444
# *------- pyrix.binarymatrix.BinaryMatrix.popcount() ---------------------*
446445

0 commit comments

Comments
 (0)