コード例 #1
0
 def getslice(self, start, stop, step, size):
     if step == 1:
         data = self.array._charbuf_start()
         try:
             return rffi.charpsize2str(rffi.ptradd(data, start), size)
         finally:
             self.array._charbuf_stop()
     return Buffer.getslice(self, start, stop, step, size)
コード例 #2
0
ファイル: bytearrayobject.py プロジェクト: abhinavthomas/pypy
 def getslice(self, start, stop, step, size):
     if size == 0:
         return ""
     if step == 1:
         assert 0 <= start <= stop
         if start == 0 and stop == len(self.data):
             return "".join(self.data)
         return "".join(self.data[start:stop])
     return Buffer.getslice(self, start, stop, step, size)
コード例 #3
0
ファイル: bytearrayobject.py プロジェクト: fhalde/pypy
 def getslice(self, start, stop, step, size):
     if size == 0:
         return ""
     if step == 1:
         assert 0 <= start <= stop
         if start == 0 and stop == len(self.data):
             return "".join(self.data)
         return "".join(self.data[start:stop])
     return Buffer.getslice(self, start, stop, step, size)
コード例 #4
0
ファイル: interp_array.py プロジェクト: sota/pypy-old
 def getslice(self, start, stop, step, size):
     if size == 0:
         return ''
     if step == 1:
         data = self.array._charbuf_start()
         try:
             return rffi.charpsize2str(rffi.ptradd(data, start), size)
         finally:
             self.array._charbuf_stop()
     return Buffer.getslice(self, start, stop, step, size)
コード例 #5
0
ファイル: interp_mmap.py プロジェクト: fhalde/pypy
 def getslice(self, start, stop, step, size):
     self.check_valid()
     if step == 1:
         return self.mmap.getslice(start, size)
     else:
         return Buffer.getslice(self, start, stop, step, size)
コード例 #6
0
ファイル: interp_mmap.py プロジェクト: bukzor/pypy
 def getslice(self, start, stop, step, size):
     self.check_valid()
     if step == 1:
         return self.mmap.getslice(start, size)
     else:
         return Buffer.getslice(self, start, stop, step, size)
コード例 #7
0
 def getslice(self, start, stop, step, size):
     if step == 1:
         return rffi.charpsize2str(rffi.ptradd(self.raw_cdata, start), size)
     return Buffer.getslice(self, start, stop, step, size)
コード例 #8
0
ファイル: cbuffer.py プロジェクト: mozillazg/pypy
 def getslice(self, start, stop, step, size):
     if step == 1:
         return rffi.charpsize2str(rffi.ptradd(self.raw_cdata, start), size)
     return Buffer.getslice(self, start, stop, step, size)