Method: Codec::Headerlength#decode
- Defined in:
- lib/codec/prefix.rb
#decode(buffer) ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/codec/prefix.rb', line 70 def decode(buffer) f = Field.new f.set_id(@id) head, buf = @length_codec.decode(buffer) head.set_id(@length_codec.id) f.add_sub_field(head) len = get_length(head) if len == 0 return f,buf else len -= (buffer.length - buf.length) if @header_length_include val,remain = @value_codec.decode_with_length(buf,len) val.set_id(@value_codec.id) f.add_sub_field(val) return f,remain end end |