This commit is contained in:
Matt Burke 2017-04-21 09:45:05 -04:00
Родитель b710534fa3
Коммит c5268506d2
1 изменённых файлов: 12 добавлений и 0 удалений

Просмотреть файл

@ -12,6 +12,8 @@ module BERT
io.set_encoding('binary') if io.respond_to?(:set_encoding) io.set_encoding('binary') if io.respond_to?(:set_encoding)
header = io.getbyte header = io.getbyte
case header case header
when VERSION_3
V3.new(io).read_any
when MAGIC, VERSION_2 when MAGIC, VERSION_2
new(io).read_any new(io).read_any
else else
@ -19,6 +21,16 @@ module BERT
end end
end end
class V3
def initialize(ins)
@unpacker = MessagePack::Unpacker.new(ins)
end
def read_any
@unpacker.read
end
end
def initialize(ins) def initialize(ins)
@in = ins @in = ins
@peeked = "" @peeked = ""