Module: RLP::Encode
- Included in:
- RLP::Extensions::Fixnum, String
- Defined in:
- lib/encode.rb
Instance Method Summary collapse
Instance Method Details
#to_rlp(is_array = false) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/encode.rb', line 3 def to_rlp(is_array = false) return [0x80] if self == "" length = self.bytes.to_a.length offset = [0x80, 0xb7] offset = [0xc0, 0xf7] if is_array if length == 1 && !is_array && self.bytes.first <= 0x7f return [self.bytes.first] elsif length <= 55 return [(offset[0]+length), *self.bytes] elsif length > 55 return [(offset[1]+length.bytesize),*length.bytes, *self.bytes] end end |