Method: Codec::Tagged#encode

Defined in:
lib/codec/prefix.rb

#encode(buffer, field) ⇒ Object



121
122
123
124
125
126
127
128
129
130
131
# File 'lib/codec/prefix.rb', line 121

def encode(buffer, field)
  head = Field.new("tag", field.get_id)
  out = ""
  @tag_codec.encode(out, head)
  if @subCodecs[field.get_id].nil?
    raise EncodingException.new "Unknown tag #{field.get_id} for #{@id} encoder"
  end
  @subCodecs[field.get_id].encode(out, field)
  buffer << out
  return out.length
end