Class: String

Inherits:
Object show all
Defined in:
lib/bencode.rb

Instance Method Summary collapse

Instance Method Details

#bdecodeObject

Bdecodes the String object and returns the data serialized through bencoding.

"li1ei2ei3ee".bdecode   #=> [1, 2, 3]


70
71
72
# File 'lib/bencode.rb', line 70

def bdecode
  Bencode.load(self)
end

#bencodeObject

Bencodes the String object. Bencoded strings are represented as x:y, where y is the string and x is the length of the string.

"foo".bencode   #=> "3:foo"
"".bencode      #=> "0:"


61
62
63
# File 'lib/bencode.rb', line 61

def bencode
  "#{length}:#{self}"
end

#bencoded?Boolean

Tests whether the String object is a valid bencoded string.

Returns:

  • (Boolean)


75
76
77
78
79
80
81
# File 'lib/bencode.rb', line 75

def bencoded?
  bdecode
rescue BdecodeError
  false
else
  true
end