Method: Codec::BaseComposed#encode
- Defined in:
- lib/codec/composed.rb
#encode(field) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/codec/composed.rb', line 12 def encode(field) return "" if field.empty? subfields = field.get_value composed_encoder = subfields.zip(@subCodecs).collect {|sf,sc| if sf.get_id != sc.first raise EncodingException, "subfield #{sf.first} not correspond to subcodec #{sc.first}" end [sc.last,sf] } out = "" composed_encoder.each do |subcodec,subfield| out += subcodec.encode(subfield) end return out end |