예제 #1
0
파일: offset.py 프로젝트: asiasun/kdi
 def __getitem__(self, idx):
     if not -self.length <= idx < self.length:
         raise IndexError('ArrayOffset index out of range: %r' % idx)
     if idx < 0:
         idx += self.length
     off = self._base + self.offset + sizeof(ttype, tver) * idx
     return ttype(self._buf, off, tver)
예제 #2
0
파일: offset.py 프로젝트: crnt/kdi
 def __getitem__(self, idx):
     if not -self.length <= idx < self.length:
         raise IndexError('ArrayOffset index out of range: %r' % idx)
     if idx < 0:
         idx += self.length
     off = self._base + self.offset + sizeof(ttype, tver) * idx
     return ttype(self._buf, off, tver)
예제 #3
0
파일: offset.py 프로젝트: asiasun/kdi
 def _iteritems(self):
     off = self._base + self.offset
     sz = sizeof(ttype, tver)
     for i in xrange(self.length):
         yield ttype(self._buf, off, tver)
         off += sz
예제 #4
0
파일: offset.py 프로젝트: crnt/kdi
 def _iteritems(self):
     off = self._base + self.offset
     sz = sizeof(ttype, tver)
     for i in xrange(self.length):
         yield ttype(self._buf, off, tver)
         off += sz