diff --git a/rust/arrow/regen.sh b/rust/arrow/regen.sh index e96f11e3800..9d384b6b63b 100755 --- a/rust/arrow/regen.sh +++ b/rust/arrow/regen.sh @@ -21,13 +21,11 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" # Change to the toplevel Rust directory pushd $DIR/../../ -# As of 2020-12-06, the snapshot flatc version is not changed since "1.12.0", -# so let's build flatc from source. - echo "Build flatc from source ..." FB_URL="https://github.com/google/flatbuffers" -FB_COMMIT="05192553f434d10c5f585aeb6a07a55a6ac702a5" +# https://github.com/google/flatbuffers/pull/6393 +FB_COMMIT="408cf5802415e1dea65fef7489a6c2f3740fb381" FB_DIR="rust/arrow/.flatbuffers" FLATC="$FB_DIR/bazel-bin/flatc" diff --git a/rust/arrow/src/ipc/gen/File.rs b/rust/arrow/src/ipc/gen/File.rs index 3f8e2787bdd..04cbc644137 100644 --- a/rust/arrow/src/ipc/gen/File.rs +++ b/rust/arrow/src/ipc/gen/File.rs @@ -24,14 +24,9 @@ use std::{cmp::Ordering, mem}; // automatically generated by the FlatBuffers compiler, do not modify // struct Block, aligned to 8 -#[repr(C, align(8))] +#[repr(transparent)] #[derive(Clone, Copy, PartialEq)] -pub struct Block { - offset_: i64, - metaDataLength_: i32, - padding0__: u32, - bodyLength_: i64, -} // pub struct Block +pub struct Block(pub [u8; 24]); impl std::fmt::Debug for Block { fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { f.debug_struct("Block") @@ -82,8 +77,8 @@ impl<'b> flatbuffers::Push for &'b Block { impl<'a> flatbuffers::Verifiable for Block { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -91,27 +86,89 @@ impl<'a> flatbuffers::Verifiable for Block { } } impl Block { - pub fn new(_offset: i64, _metaDataLength: i32, _bodyLength: i64) -> Self { - Block { - offset_: _offset.to_little_endian(), - metaDataLength_: _metaDataLength.to_little_endian(), - bodyLength_: _bodyLength.to_little_endian(), - - padding0__: 0, - } + #[allow(clippy::too_many_arguments)] + pub fn new(offset: i64, metaDataLength: i32, bodyLength: i64) -> Self { + let mut s = Self([0; 24]); + s.set_offset(offset); + s.set_metaDataLength(metaDataLength); + s.set_bodyLength(bodyLength); + s } + /// Index to the start of the RecordBlock (note this is past the Message header) pub fn offset(&self) -> i64 { - self.offset_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[0..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() + } + + pub fn set_offset(&mut self, x: i64) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i64 as *const u8, + self.0[0..].as_mut_ptr(), + core::mem::size_of::(), + ); + } } + /// Length of the metadata pub fn metaDataLength(&self) -> i32 { - self.metaDataLength_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[8..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() } + + pub fn set_metaDataLength(&mut self, x: i32) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i32 as *const u8, + self.0[8..].as_mut_ptr(), + core::mem::size_of::(), + ); + } + } + /// Length of the data (this is aligned so there can be a gap between this and /// the metadata). pub fn bodyLength(&self) -> i64 { - self.bodyLength_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[16..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() + } + + pub fn set_bodyLength(&mut self, x: i64) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i64 as *const u8, + self.0[16..].as_mut_ptr(), + core::mem::size_of::(), + ); + } } } @@ -210,8 +267,8 @@ impl<'a> Footer<'a> { impl flatbuffers::Verifiable for Footer<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -344,13 +401,13 @@ impl std::fmt::Debug for Footer<'_> { } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_root_as_footer<'a>(buf: &'a [u8]) -> Footer<'a> { unsafe { flatbuffers::root_unchecked::>(buf) } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_size_prefixed_root_as_footer<'a>(buf: &'a [u8]) -> Footer<'a> { unsafe { flatbuffers::size_prefixed_root_unchecked::>(buf) } } diff --git a/rust/arrow/src/ipc/gen/Message.rs b/rust/arrow/src/ipc/gen/Message.rs index 79a9df307af..7903844a1fe 100644 --- a/rust/arrow/src/ipc/gen/Message.rs +++ b/rust/arrow/src/ipc/gen/Message.rs @@ -26,17 +26,17 @@ use std::{cmp::Ordering, mem}; // automatically generated by the FlatBuffers compiler, do not modify #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_COMPRESSION_TYPE: i8 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_COMPRESSION_TYPE: i8 = 1; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -104,8 +104,8 @@ impl flatbuffers::EndianScalar for CompressionType { impl<'a> flatbuffers::Verifiable for CompressionType { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -115,17 +115,17 @@ impl<'a> flatbuffers::Verifiable for CompressionType { impl flatbuffers::SimpleToVerifyInSlice for CompressionType {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_BODY_COMPRESSION_METHOD: i8 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_BODY_COMPRESSION_METHOD: i8 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -201,8 +201,8 @@ impl flatbuffers::EndianScalar for BodyCompressionMethod { impl<'a> flatbuffers::Verifiable for BodyCompressionMethod { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -212,17 +212,17 @@ impl<'a> flatbuffers::Verifiable for BodyCompressionMethod { impl flatbuffers::SimpleToVerifyInSlice for BodyCompressionMethod {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_MESSAGE_HEADER: u8 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_MESSAGE_HEADER: u8 = 5; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -320,8 +320,8 @@ impl flatbuffers::EndianScalar for MessageHeader { impl<'a> flatbuffers::Verifiable for MessageHeader { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -340,12 +340,9 @@ impl flatbuffers::SimpleToVerifyInSlice for MessageHeader {} /// would have {length: 5, null_count: 2} for its List node, and {length: 6, /// null_count: 0} for its Int16 node, as separate FieldNode structs // struct FieldNode, aligned to 8 -#[repr(C, align(8))] +#[repr(transparent)] #[derive(Clone, Copy, PartialEq)] -pub struct FieldNode { - length_: i64, - null_count_: i64, -} // pub struct FieldNode +pub struct FieldNode(pub [u8; 16]); impl std::fmt::Debug for FieldNode { fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { f.debug_struct("FieldNode") @@ -401,8 +398,8 @@ impl<'b> flatbuffers::Push for &'b FieldNode { impl<'a> flatbuffers::Verifiable for FieldNode { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -410,22 +407,65 @@ impl<'a> flatbuffers::Verifiable for FieldNode { } } impl FieldNode { - pub fn new(_length: i64, _null_count: i64) -> Self { - FieldNode { - length_: _length.to_little_endian(), - null_count_: _null_count.to_little_endian(), - } + #[allow(clippy::too_many_arguments)] + pub fn new(length: i64, null_count: i64) -> Self { + let mut s = Self([0; 16]); + s.set_length(length); + s.set_null_count(null_count); + s } + /// The number of value slots in the Arrow array at this level of a nested /// tree pub fn length(&self) -> i64 { - self.length_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[0..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() + } + + pub fn set_length(&mut self, x: i64) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i64 as *const u8, + self.0[0..].as_mut_ptr(), + core::mem::size_of::(), + ); + } } + /// The number of observed nulls. Fields with null_count == 0 may choose not /// to write their physical validity bitmap out as a materialized buffer, /// instead setting the length of the bitmap buffer to 0. pub fn null_count(&self) -> i64 { - self.null_count_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[8..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() + } + + pub fn set_null_count(&mut self, x: i64) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i64 as *const u8, + self.0[8..].as_mut_ptr(), + core::mem::size_of::(), + ); + } } } @@ -492,8 +532,8 @@ impl<'a> BodyCompression<'a> { impl flatbuffers::Verifiable for BodyCompression<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -658,8 +698,8 @@ impl<'a> RecordBatch<'a> { impl flatbuffers::Verifiable for RecordBatch<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -827,8 +867,8 @@ impl<'a> DictionaryBatch<'a> { impl flatbuffers::Verifiable for DictionaryBatch<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1040,8 +1080,8 @@ impl<'a> Message<'a> { impl flatbuffers::Verifiable for Message<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1216,13 +1256,13 @@ impl std::fmt::Debug for Message<'_> { } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_root_as_message<'a>(buf: &'a [u8]) -> Message<'a> { unsafe { flatbuffers::root_unchecked::>(buf) } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_size_prefixed_root_as_message<'a>(buf: &'a [u8]) -> Message<'a> { unsafe { flatbuffers::size_prefixed_root_unchecked::>(buf) } } diff --git a/rust/arrow/src/ipc/gen/Schema.rs b/rust/arrow/src/ipc/gen/Schema.rs index 61a9574221c..f37f9206cb7 100644 --- a/rust/arrow/src/ipc/gen/Schema.rs +++ b/rust/arrow/src/ipc/gen/Schema.rs @@ -23,17 +23,17 @@ use std::{cmp::Ordering, mem}; // automatically generated by the FlatBuffers compiler, do not modify #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_METADATA_VERSION: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_METADATA_VERSION: i16 = 4; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -124,8 +124,8 @@ impl flatbuffers::EndianScalar for MetadataVersion { impl<'a> flatbuffers::Verifiable for MetadataVersion { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -135,17 +135,17 @@ impl<'a> flatbuffers::Verifiable for MetadataVersion { impl flatbuffers::SimpleToVerifyInSlice for MetadataVersion {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_FEATURE: i64 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_FEATURE: i64 = 2; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -245,8 +245,8 @@ impl flatbuffers::EndianScalar for Feature { impl<'a> flatbuffers::Verifiable for Feature { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -256,17 +256,17 @@ impl<'a> flatbuffers::Verifiable for Feature { impl flatbuffers::SimpleToVerifyInSlice for Feature {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_UNION_MODE: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_UNION_MODE: i16 = 1; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -333,8 +333,8 @@ impl flatbuffers::EndianScalar for UnionMode { impl<'a> flatbuffers::Verifiable for UnionMode { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -344,17 +344,17 @@ impl<'a> flatbuffers::Verifiable for UnionMode { impl flatbuffers::SimpleToVerifyInSlice for UnionMode {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_PRECISION: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_PRECISION: i16 = 2; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -424,8 +424,8 @@ impl flatbuffers::EndianScalar for Precision { impl<'a> flatbuffers::Verifiable for Precision { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -435,17 +435,17 @@ impl<'a> flatbuffers::Verifiable for Precision { impl flatbuffers::SimpleToVerifyInSlice for Precision {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_DATE_UNIT: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_DATE_UNIT: i16 = 1; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -512,8 +512,8 @@ impl flatbuffers::EndianScalar for DateUnit { impl<'a> flatbuffers::Verifiable for DateUnit { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -523,17 +523,17 @@ impl<'a> flatbuffers::Verifiable for DateUnit { impl flatbuffers::SimpleToVerifyInSlice for DateUnit {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_TIME_UNIT: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_TIME_UNIT: i16 = 3; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -614,8 +614,8 @@ impl flatbuffers::EndianScalar for TimeUnit { impl<'a> flatbuffers::Verifiable for TimeUnit { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -625,17 +625,17 @@ impl<'a> flatbuffers::Verifiable for TimeUnit { impl flatbuffers::SimpleToVerifyInSlice for TimeUnit {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_INTERVAL_UNIT: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_INTERVAL_UNIT: i16 = 1; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -703,8 +703,8 @@ impl flatbuffers::EndianScalar for IntervalUnit { impl<'a> flatbuffers::Verifiable for IntervalUnit { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -714,17 +714,17 @@ impl<'a> flatbuffers::Verifiable for IntervalUnit { impl flatbuffers::SimpleToVerifyInSlice for IntervalUnit {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_TYPE: u8 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_TYPE: u8 = 21; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -881,8 +881,8 @@ impl flatbuffers::EndianScalar for Type { impl<'a> flatbuffers::Verifiable for Type { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -892,17 +892,17 @@ impl<'a> flatbuffers::Verifiable for Type { impl flatbuffers::SimpleToVerifyInSlice for Type {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_DICTIONARY_KIND: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_DICTIONARY_KIND: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -972,8 +972,8 @@ impl flatbuffers::EndianScalar for DictionaryKind { impl<'a> flatbuffers::Verifiable for DictionaryKind { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -983,17 +983,17 @@ impl<'a> flatbuffers::Verifiable for DictionaryKind { impl flatbuffers::SimpleToVerifyInSlice for DictionaryKind {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_ENDIANNESS: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_ENDIANNESS: i16 = 1; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -1062,8 +1062,8 @@ impl flatbuffers::EndianScalar for Endianness { impl<'a> flatbuffers::Verifiable for Endianness { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1075,12 +1075,9 @@ impl flatbuffers::SimpleToVerifyInSlice for Endianness {} /// ---------------------------------------------------------------------- /// A Buffer represents a single contiguous memory segment // struct Buffer, aligned to 8 -#[repr(C, align(8))] +#[repr(transparent)] #[derive(Clone, Copy, PartialEq)] -pub struct Buffer { - offset_: i64, - length_: i64, -} // pub struct Buffer +pub struct Buffer(pub [u8; 16]); impl std::fmt::Debug for Buffer { fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { f.debug_struct("Buffer") @@ -1133,8 +1130,8 @@ impl<'b> flatbuffers::Push for &'b Buffer { impl<'a> flatbuffers::Verifiable for Buffer { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1142,24 +1139,67 @@ impl<'a> flatbuffers::Verifiable for Buffer { } } impl Buffer { - pub fn new(_offset: i64, _length: i64) -> Self { - Buffer { - offset_: _offset.to_little_endian(), - length_: _length.to_little_endian(), - } + #[allow(clippy::too_many_arguments)] + pub fn new(offset: i64, length: i64) -> Self { + let mut s = Self([0; 16]); + s.set_offset(offset); + s.set_length(length); + s } + /// The relative offset into the shared memory page where the bytes for this /// buffer starts pub fn offset(&self) -> i64 { - self.offset_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[0..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() + } + + pub fn set_offset(&mut self, x: i64) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i64 as *const u8, + self.0[0..].as_mut_ptr(), + core::mem::size_of::(), + ); + } } + /// The absolute length (in bytes) of the memory buffer. The memory is found /// from offset (inclusive) to offset + length (non-inclusive). When building /// messages using the encapsulated IPC message, padding bytes may be written /// after a buffer, but such padding bytes do not need to be accounted for in /// the size here. pub fn length(&self) -> i64 { - self.length_.from_little_endian() + let mut mem = core::mem::MaybeUninit::::uninit(); + unsafe { + core::ptr::copy_nonoverlapping( + self.0[8..].as_ptr(), + mem.as_mut_ptr() as *mut u8, + core::mem::size_of::(), + ); + mem.assume_init() + } + .from_little_endian() + } + + pub fn set_length(&mut self, x: i64) { + let x_le = x.to_little_endian(); + unsafe { + core::ptr::copy_nonoverlapping( + &x_le as *const i64 as *const u8, + self.0[8..].as_mut_ptr(), + core::mem::size_of::(), + ); + } } } @@ -1198,8 +1238,8 @@ impl<'a> Null<'a> { impl flatbuffers::Verifiable for Null<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1277,8 +1317,8 @@ impl<'a> Struct_<'a> { impl flatbuffers::Verifiable for Struct_<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1355,8 +1395,8 @@ impl<'a> List<'a> { impl flatbuffers::Verifiable for List<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1433,8 +1473,8 @@ impl<'a> LargeList<'a> { impl flatbuffers::Verifiable for LargeList<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1522,8 +1562,8 @@ impl<'a> FixedSizeList<'a> { impl flatbuffers::Verifiable for FixedSizeList<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1646,8 +1686,8 @@ impl<'a> Map<'a> { impl flatbuffers::Verifiable for Map<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1758,8 +1798,8 @@ impl<'a> Union<'a> { impl flatbuffers::Verifiable for Union<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1878,8 +1918,8 @@ impl<'a> Int<'a> { impl flatbuffers::Verifiable for Int<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1984,8 +2024,8 @@ impl<'a> FloatingPoint<'a> { impl flatbuffers::Verifiable for FloatingPoint<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2078,8 +2118,8 @@ impl<'a> Utf8<'a> { impl flatbuffers::Verifiable for Utf8<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2155,8 +2195,8 @@ impl<'a> Binary<'a> { impl flatbuffers::Verifiable for Binary<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2235,8 +2275,8 @@ impl<'a> LargeUtf8<'a> { impl flatbuffers::Verifiable for LargeUtf8<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2315,8 +2355,8 @@ impl<'a> LargeBinary<'a> { impl flatbuffers::Verifiable for LargeBinary<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2404,8 +2444,8 @@ impl<'a> FixedSizeBinary<'a> { impl flatbuffers::Verifiable for FixedSizeBinary<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2492,8 +2532,8 @@ impl<'a> Bool<'a> { impl flatbuffers::Verifiable for Bool<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2600,8 +2640,8 @@ impl<'a> Decimal<'a> { impl flatbuffers::Verifiable for Decimal<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2723,8 +2763,8 @@ impl<'a> Date<'a> { impl flatbuffers::Verifiable for Date<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2830,8 +2870,8 @@ impl<'a> Time<'a> { impl flatbuffers::Verifiable for Time<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -2971,8 +3011,8 @@ impl<'a> Timestamp<'a> { impl flatbuffers::Verifiable for Timestamp<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -3086,8 +3126,8 @@ impl<'a> Interval<'a> { impl flatbuffers::Verifiable for Interval<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -3189,8 +3229,8 @@ impl<'a> Duration<'a> { impl flatbuffers::Verifiable for Duration<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -3302,8 +3342,8 @@ impl<'a> KeyValue<'a> { impl flatbuffers::Verifiable for KeyValue<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -3461,8 +3501,8 @@ impl<'a> DictionaryEncoding<'a> { impl flatbuffers::Verifiable for DictionaryEncoding<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -3884,8 +3924,8 @@ impl<'a> Field<'a> { impl flatbuffers::Verifiable for Field<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -4346,8 +4386,8 @@ impl<'a> Schema<'a> { impl flatbuffers::Verifiable for Schema<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -4456,13 +4496,13 @@ impl std::fmt::Debug for Schema<'_> { } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_root_as_schema<'a>(buf: &'a [u8]) -> Schema<'a> { unsafe { flatbuffers::root_unchecked::>(buf) } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_size_prefixed_root_as_schema<'a>(buf: &'a [u8]) -> Schema<'a> { unsafe { flatbuffers::size_prefixed_root_unchecked::>(buf) } } diff --git a/rust/arrow/src/ipc/gen/SparseTensor.rs b/rust/arrow/src/ipc/gen/SparseTensor.rs index 04a23398bef..5d12d4e3627 100644 --- a/rust/arrow/src/ipc/gen/SparseTensor.rs +++ b/rust/arrow/src/ipc/gen/SparseTensor.rs @@ -25,17 +25,17 @@ use std::{cmp::Ordering, mem}; // automatically generated by the FlatBuffers compiler, do not modify #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_SPARSE_MATRIX_COMPRESSED_AXIS: i16 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_SPARSE_MATRIX_COMPRESSED_AXIS: i16 = 1; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -105,8 +105,8 @@ impl flatbuffers::EndianScalar for SparseMatrixCompressedAxis { impl<'a> flatbuffers::Verifiable for SparseMatrixCompressedAxis { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -116,17 +116,17 @@ impl<'a> flatbuffers::Verifiable for SparseMatrixCompressedAxis { impl flatbuffers::SimpleToVerifyInSlice for SparseMatrixCompressedAxis {} #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MIN_SPARSE_TENSOR_INDEX: u8 = 0; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] pub const ENUM_MAX_SPARSE_TENSOR_INDEX: u8 = 3; #[deprecated( - since = "1.13", + since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021." )] #[allow(non_camel_case_types)] @@ -208,8 +208,8 @@ impl flatbuffers::EndianScalar for SparseTensorIndex { impl<'a> flatbuffers::Verifiable for SparseTensorIndex { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -338,8 +338,8 @@ impl<'a> SparseTensorIndexCOO<'a> { impl flatbuffers::Verifiable for SparseTensorIndexCOO<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -574,8 +574,8 @@ impl<'a> SparseMatrixIndexCSX<'a> { impl flatbuffers::Verifiable for SparseMatrixIndexCSX<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -864,8 +864,8 @@ impl<'a> SparseTensorIndexCSF<'a> { impl flatbuffers::Verifiable for SparseTensorIndexCSF<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1394,8 +1394,8 @@ impl<'a> SparseTensor<'a> { impl flatbuffers::Verifiable for SparseTensor<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -1810,13 +1810,13 @@ impl std::fmt::Debug for SparseTensor<'_> { } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_root_as_sparse_tensor<'a>(buf: &'a [u8]) -> SparseTensor<'a> { unsafe { flatbuffers::root_unchecked::>(buf) } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_size_prefixed_root_as_sparse_tensor<'a>(buf: &'a [u8]) -> SparseTensor<'a> { unsafe { flatbuffers::size_prefixed_root_unchecked::>(buf) } } diff --git a/rust/arrow/src/ipc/gen/Tensor.rs b/rust/arrow/src/ipc/gen/Tensor.rs index 6ae99fd0779..120636eaf1f 100644 --- a/rust/arrow/src/ipc/gen/Tensor.rs +++ b/rust/arrow/src/ipc/gen/Tensor.rs @@ -79,8 +79,8 @@ impl<'a> TensorDim<'a> { impl flatbuffers::Verifiable for TensorDim<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -474,8 +474,8 @@ impl<'a> Tensor<'a> { impl flatbuffers::Verifiable for Tensor<'_> { #[inline] - fn run_verifier<'o, 'b>( - v: &mut flatbuffers::Verifier<'o, 'b>, + fn run_verifier( + v: &mut flatbuffers::Verifier, pos: usize, ) -> Result<(), flatbuffers::InvalidFlatbuffer> { use flatbuffers::Verifiable; @@ -823,13 +823,13 @@ impl std::fmt::Debug for Tensor<'_> { } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_root_as_tensor<'a>(buf: &'a [u8]) -> Tensor<'a> { unsafe { flatbuffers::root_unchecked::>(buf) } } #[inline] -#[deprecated(since = "1.13", note = "Deprecated in favor of `root_as...` methods.")] +#[deprecated(since = "2.0.0", note = "Deprecated in favor of `root_as...` methods.")] pub fn get_size_prefixed_root_as_tensor<'a>(buf: &'a [u8]) -> Tensor<'a> { unsafe { flatbuffers::size_prefixed_root_unchecked::>(buf) } }