예제 #1
0
def _pad_array(array, boundary):
    """Adds padding to the array so the array size aligns to a next boundary."""
    size = array.buffer_info()[1]
    pad_bytes = boundary - (size % boundary)
    if pad_bytes == boundary:
        return
    for _ in xrange(pad_bytes):
        array.append(0)
예제 #2
0
def _pad_array(array, boundary):
  """Adds padding to the array so the array size aligns to a next boundary."""
  size = array.buffer_info()[1]
  pad_bytes = boundary - (size % boundary)
  if pad_bytes == boundary:
    return
  for _ in xrange(pad_bytes):
    array.append(0)
예제 #3
0
 def __init__(self, path):
     import array
     array = array.array('b')
     fd = os.open(path, os.O_RDONLY)
     sz = os.fstat(fd).st_size
     fp = os.fdopen(fd, 'rb')
     array.fromfile(fp, sz)
     os.close(fd)
     addr, count = array.buffer_info()
     self.lm = libngram.Ngram_init_from_bin(cast(addr, POINTER(c_byte)))
예제 #4
0
 def __init__(self, path):
     import array
     array = array.array('b')
     fd = os.open(path, os.O_RDONLY)
     sz = os.fstat(fd).st_size
     fp = os.fdopen(fd, 'rb')
     array.fromfile(fp, sz)
     os.close(fd)
     addr, count = array.buffer_info()
     self.lm = libngram.Ngram_init_from_bin(cast(addr, POINTER(c_byte)))