blob: 5c3d6f663e58b99ae9cd1d2bf312b7a56245aa2c [file] [log] [blame]
################################################################################
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
################################################################################
# cython: language_level=3
from libc.stdint cimport int32_t, int64_t
from pyflink.fn_execution.stream_fast cimport LengthPrefixInputStream, LengthPrefixOutputStream, \
InputStream, OutputStream
cdef enum InternalRowKind:
INSERT = 0
UPDATE_BEFORE = 1
UPDATE_AFTER = 2
DELETE = 3
cdef class InternalRow:
cdef readonly list values
cdef readonly InternalRowKind row_kind
cdef list field_names
cpdef object to_row(self)
cdef bint is_retract_msg(self)
cdef bint is_accumulate_msg(self)
cdef class MaskUtils:
cdef bint*_mask
cdef unsigned char*_mask_byte_search_table
cdef unsigned char*_row_kind_byte_table
cdef size_t _field_count
cdef size_t _leading_complete_bytes_num
cdef size_t _remaining_bits_num
cdef void write_mask(self, list value, unsigned char row_kind_value, OutputStream output_stream)
cdef bint*read_mask(self, InputStream input_stream)
cdef class LengthPrefixBaseCoderImpl:
cdef FieldCoderImpl _field_coder
cdef OutputStream _data_out_stream
cpdef encode_to_stream(self, value, LengthPrefixOutputStream output_stream)
cpdef decode_from_stream(self, LengthPrefixInputStream input_stream)
cdef void _write_data_to_output_stream(self, LengthPrefixOutputStream output_stream)
cdef class FieldCoderImpl:
cpdef encode_to_stream(self, value, OutputStream out_stream)
cpdef decode_from_stream(self, InputStream in_stream, size_t size)
cpdef bytes encode(self, value)
cpdef decode(self, encoded)
cdef class InputStreamWrapper:
cdef ValueCoderImpl _value_coder
cdef LengthPrefixInputStream _input_stream
cpdef bint has_next(self)
cpdef next(self)
cdef class IterableCoderImpl(LengthPrefixBaseCoderImpl):
cdef char*_end_message
cdef bint _separated_with_end_message
cdef class ValueCoderImpl(LengthPrefixBaseCoderImpl):
pass
cdef unsigned char ROW_KIND_BIT_SIZE
cdef class FlattenRowCoderImpl(FieldCoderImpl):
cdef list _field_coders
cdef list _reuse_flatten_row
cdef size_t _field_count
cdef MaskUtils _mask_utils
cdef class RowCoderImpl(FieldCoderImpl):
cdef list _field_coders
cdef size_t _field_count
cdef list _field_names
cdef MaskUtils _mask_utils
cdef class ArrowCoderImpl(FieldCoderImpl):
cdef object _schema
cdef list _field_types
cdef object _timezone
cdef object _resettable_io
cdef object _batch_reader
cdef list decode_one_batch_from_stream(self, InputStream in_stream, size_t size)
cdef class OverWindowArrowCoderImpl(FieldCoderImpl):
cdef ArrowCoderImpl _arrow_coder
cdef IntCoderImpl _int_coder
cdef class TinyIntCoderImpl(FieldCoderImpl):
pass
cdef class SmallIntCoderImpl(FieldCoderImpl):
pass
cdef class IntCoderImpl(FieldCoderImpl):
pass
cdef class BigIntCoderImpl(FieldCoderImpl):
pass
cdef class BooleanCoderImpl(FieldCoderImpl):
pass
cdef class FloatCoderImpl(FieldCoderImpl):
pass
cdef class DoubleCoderImpl(FieldCoderImpl):
pass
cdef class BinaryCoderImpl(FieldCoderImpl):
pass
cdef class CharCoderImpl(FieldCoderImpl):
pass
cdef class BigDecimalCoderImpl(FieldCoderImpl):
cdef CharCoderImpl _value_coder
cdef class DecimalCoderImpl(FieldCoderImpl):
cdef object _context
cdef object _scale_format
cdef CharCoderImpl _value_coder
cdef class DateCoderImpl(FieldCoderImpl):
cdef int _EPOCH_ORDINAL
cdef class TimeCoderImpl(FieldCoderImpl):
pass
cdef class TimestampCoderImpl(FieldCoderImpl):
cdef bint _is_compact
cdef _decode_timestamp_data_from_stream(self, InputStream in_stream)
cdef class LocalZonedTimestampCoderImpl(TimestampCoderImpl):
cdef object _timezone
cdef class InstantCoderImpl(FieldCoderImpl):
cdef int64_t _null_seconds
cdef int32_t _null_nanos
cdef class CloudPickleCoderImpl(FieldCoderImpl):
pass
cdef class PickleCoderImpl(FieldCoderImpl):
pass
cdef class GenericArrayCoderImpl(FieldCoderImpl):
cdef FieldCoderImpl _elem_coder
cdef class PrimitiveArrayCoderImpl(FieldCoderImpl):
cdef FieldCoderImpl _elem_coder
cdef class MapCoderImpl(FieldCoderImpl):
cdef FieldCoderImpl _key_coder
cdef FieldCoderImpl _value_coder
cdef class TupleCoderImpl(FieldCoderImpl):
cdef list _field_coders
cdef size_t _field_count
cdef class TimeWindowCoderImpl(FieldCoderImpl):
pass
cdef class CountWindowCoderImpl(FieldCoderImpl):
pass
cdef class DataViewFilterCoderImpl(FieldCoderImpl):
cdef object _udf_data_view_specs
cdef PickleCoderImpl _pickle_coder