Example #1
0
 def encode(self, posns_chars):
     # posns_chars = [(pos, startchar, endchar), ...]
     codes = []
     posbase = 0
     charbase = 0
     for pos, startchar, endchar in posns_chars:
         codes.append(varint(pos - posbase))
         posbase = pos
         codes.extend((varint(startchar - charbase),
                       varint(endchar - startchar)))
         charbase = endchar
     return pack("!I", len(posns_chars)) + "".join(codes)
Example #2
0
 def encode(self, posns_chars):
     # posns_chars = [(pos, startchar, endchar), ...]
     codes = []
     posbase = 0
     charbase = 0
     for pos, startchar, endchar in posns_chars:
         codes.append(varint(pos - posbase))
         posbase = pos
         codes.extend(
             (varint(startchar - charbase), varint(endchar - startchar)))
         charbase = endchar
     return pack("!I", len(posns_chars)) + "".join(codes)
Example #3
0
    def encode(self, posns_chars_boosts):
        # posns_chars_boosts = [(pos, startchar, endchar, boost), ...]
        codes = []

        posbase = 0
        charbase = 0
        summedboost = 0
        for pos, startchar, endchar, boost in posns_chars_boosts:
            summedboost += boost
            codes.append(varint(pos - posbase))
            posbase = pos
            codes.extend((varint(startchar - charbase),
                          varint(endchar - startchar), float_to_byte(boost)))
            charbase = endchar

        b = pack("!If", len(posns_chars_boosts), summedboost)
        return b + "".join(codes)
Example #4
0
 def encode(self, positions):
     # positions = [pos1, pos2, ...]
     codes = []
     base = 0
     for pos in positions:
         codes.append(varint(pos - base))
         base = pos
     return pack("!I", len(positions)) + "".join(codes)
Example #5
0
 def encode(self, positions):
     # positions = [pos1, pos2, ...]
     codes = []
     base = 0
     for pos in positions:
         codes.append(varint(pos - base))
         base = pos
     return pack("!I", len(positions)) + "".join(codes)
Example #6
0
 def encode(self, posns_chars_boosts):
     # posns_chars_boosts = [(pos, startchar, endchar, boost), ...]
     codes = []
     
     posbase = 0
     charbase = 0
     summedboost = 0
     for pos, startchar, endchar, boost in posns_chars_boosts:
         summedboost += boost
         codes.append(varint(pos - posbase))
         posbase = pos
         codes.extend((varint(startchar - charbase),
                       varint(endchar - startchar),
                       float_to_byte(boost)))
         charbase = endchar
     
     b = pack("!If", len(posns_chars_boosts), summedboost)
     return b + "".join(codes)
Example #7
0
    def encode(self, posns_boosts):
        # posns_boosts = [(pos, boost), ...]
        codes = []
        base = 0
        summedboost = 0
        for pos, boost in posns_boosts:
            summedboost += boost
            codes.extend((varint(pos - base), float_to_byte(boost)))
            base = pos

        return pack("!If", len(posns_boosts), summedboost) + "".join(codes)
Example #8
0
 def encode(self, posns_boosts):
     # posns_boosts = [(pos, boost), ...]
     codes = []
     base = 0
     summedboost = 0
     for pos, boost in posns_boosts:
         summedboost += boost
         codes.extend((varint(pos - base), float_to_byte(boost)))
         base = pos
     
     return pack("!If", len(posns_boosts), summedboost) + "".join(codes)
Example #9
0
 def write_varint(self, i):
     """Writes a variable-length integer to the wrapped file.
     """
     self.file.write(varint(i))
Example #10
0
 def write_varint(self, i):
     """Writes a variable-length integer to the wrapped file.
     """
     self.file.write(varint(i))