示例#1
0
 def _decode_from_stream(in_stream: InputStream):
     year = in_stream.read_int32()
     if year == 0xFFFFFFFF:
         in_stream.read(2)
         return None
     month = in_stream.read_int8()
     day = in_stream.read_int8()
     return datetime.date(year, month, day)
示例#2
0
 def _decode_from_stream(in_stream: InputStream):
     hour = in_stream.read_int8()
     if hour == 0xFF:
         in_stream.read(6)
         return None
     minute = in_stream.read_int8()
     second = in_stream.read_int8()
     nano = in_stream.read_int32()
     return datetime.time(hour, minute, second, nano // 1000)
示例#3
0
 def decode_one_batch_from_stream(self, in_stream: InputStream,
                                  size: int) -> List:
     self._resettable_io.set_input_bytes(in_stream.read(size))
     # there is only one arrow batch in the underlying input stream
     return arrow_to_pandas(self._timezone, self._field_types,
                            [next(self._batch_reader)])