Module: Fewer::Serializer
- Defined in:
- lib/fewer/serializer.rb
Defined Under Namespace
Classes: BadString
Class Method Summary collapse
- .b64_decode(string) ⇒ Object
- .b64_encode(string) ⇒ Object
- .marshal_decode(string) ⇒ Object (also: decode)
- .marshal_encode(object) ⇒ Object (also: encode)
Class Method Details
.b64_decode(string) ⇒ Object
8 9 10 11 |
# File 'lib/fewer/serializer.rb', line 8 def b64_decode(string) padding_length = string.length % 4 Base64.decode64(string + '=' * padding_length) end |
.b64_encode(string) ⇒ Object
13 14 15 |
# File 'lib/fewer/serializer.rb', line 13 def b64_encode(string) Base64.encode64(string).tr("\n=",'') end |
.marshal_decode(string) ⇒ Object Also known as: decode
17 18 19 20 21 |
# File 'lib/fewer/serializer.rb', line 17 def marshal_decode(string) Marshal.load(b64_decode(string)) rescue TypeError, ArgumentError => e raise BadString, "couldn't decode #{string} - got #{e}" end |
.marshal_encode(object) ⇒ Object Also known as: encode
24 25 26 |
# File 'lib/fewer/serializer.rb', line 24 def marshal_encode(object) b64_encode(Marshal.dump(object)) end |