Class: Protobuf::Field::MessageField
Instance Attribute Summary
Attributes inherited from BaseField
#default, #default_value, #extension, #message_class, #name, #rule, #tag, #type
Instance Method Summary
collapse
Methods inherited from BaseField
default, descriptor, #descriptor, #initialize, #initialized?, #max, #merge, #min, #optional?, #packed?, #ready?, #repeated?, #required?, #to_s
Instance Method Details
#acceptable?(val) ⇒ Boolean
584
585
586
587
|
# File 'lib/protobuf/message/field.rb', line 584
def acceptable?(val)
raise TypeError unless val.is_a?(type) || val.is_a?(Hash)
true
end
|
#decode(bytes) ⇒ Object
589
590
591
592
593
|
# File 'lib/protobuf/message/field.rb', line 589
def decode(bytes)
message = type.new
message.parse_from_string(bytes)
message
end
|
#encode(value) ⇒ Object
595
596
597
598
599
|
# File 'lib/protobuf/message/field.rb', line 595
def encode(value)
bytes = value.serialize_to_string
result = VarintField.encode(bytes.size)
result << bytes
end
|