Module: Fraggel::Encoder
- Defined in:
- lib/fraggel/encoder.rb
Defined Under Namespace
Classes: UnknownType
Instance Method Summary collapse
Instance Method Details
#encode(value) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/fraggel/encoder.rb', line 7 def encode(value) case value when nil "$-1\r\n" when true encode(1) when false encode(0) when Integer ":%d\r\n" % [value] when String "$%d\r\n%s\r\n" % [value.length, value] when Array mapped = value.map {|x| encode(x) } "*%d\r\n%s" % [mapped.length, mapped] when StandardError, Exception "-ERR: %s\r\n" % [value.] when Symbol "+%s\r\n" % [value] else raise UnknownType, value end end |