class Protobuf::Field::BaseFieldObjectDefinitions::BytesEncodeToStream

Public Class Methods

new(selph) click to toggle source
# File lib/protobuf/field/base_field_object_definitions.rb, line 62
def initialize(selph)
  @selph = selph
  @tag_encoded = selph.tag_encoded
end

Public Instance Methods

call(value, stream) click to toggle source
# File lib/protobuf/field/base_field_object_definitions.rb, line 67
def call(value, stream)
  value = value.encode if value.is_a?(::Protobuf::Message)
  byte_size = ::Protobuf::Field::VarintField.encode(value.bytesize)

  stream << @tag_encoded << byte_size << value
end