in src/protos/tensor.rs [627:737]
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if self.dtype != super::types::DataType::DT_INVALID {
os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.dtype))?;
}
if let Some(ref v) = self.tensor_shape.as_ref() {
os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if self.version_number != 0 {
os.write_int32(3, self.version_number)?;
}
if !self.tensor_content.is_empty() {
os.write_bytes(4, &self.tensor_content)?;
}
if !self.half_val.is_empty() {
os.write_tag(13, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.half_val))?;
for v in &self.half_val {
os.write_int32_no_tag(*v)?;
};
}
if !self.float_val.is_empty() {
os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32((self.float_val.len() * 4) as u32)?;
for v in &self.float_val {
os.write_float_no_tag(*v)?;
};
}
if !self.double_val.is_empty() {
os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32((self.double_val.len() * 8) as u32)?;
for v in &self.double_val {
os.write_double_no_tag(*v)?;
};
}
if !self.int_val.is_empty() {
os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.int_val))?;
for v in &self.int_val {
os.write_int32_no_tag(*v)?;
};
}
for v in &self.string_val {
os.write_bytes(8, &v)?;
};
if !self.scomplex_val.is_empty() {
os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32((self.scomplex_val.len() * 4) as u32)?;
for v in &self.scomplex_val {
os.write_float_no_tag(*v)?;
};
}
if !self.int64_val.is_empty() {
os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.int64_val))?;
for v in &self.int64_val {
os.write_int64_no_tag(*v)?;
};
}
if !self.bool_val.is_empty() {
os.write_tag(11, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32((self.bool_val.len() * 1) as u32)?;
for v in &self.bool_val {
os.write_bool_no_tag(*v)?;
};
}
if !self.dcomplex_val.is_empty() {
os.write_tag(12, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32((self.dcomplex_val.len() * 8) as u32)?;
for v in &self.dcomplex_val {
os.write_double_no_tag(*v)?;
};
}
for v in &self.resource_handle_val {
os.write_tag(14, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
};
for v in &self.variant_val {
os.write_tag(15, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
};
if !self.uint32_val.is_empty() {
os.write_tag(16, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.uint32_val))?;
for v in &self.uint32_val {
os.write_uint32_no_tag(*v)?;
};
}
if !self.uint64_val.is_empty() {
os.write_tag(17, ::protobuf::wire_format::WireTypeLengthDelimited)?;
// TODO: Data size is computed again, it should be cached
os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.uint64_val))?;
for v in &self.uint64_val {
os.write_uint64_no_tag(*v)?;
};
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}