msgpack 0.7.4 → 1.3.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +3 -1
- data/.rubocop.yml +3 -0
- data/.travis.yml +27 -14
- data/ChangeLog +89 -1
- data/Gemfile +6 -1
- data/README.rdoc +55 -1
- data/Rakefile +5 -1
- data/bench/pack_symbols.rb +28 -0
- data/bench/run_symbols.sh +26 -0
- data/doclib/msgpack.rb +2 -2
- data/doclib/msgpack/core_ext.rb +20 -20
- data/doclib/msgpack/factory.rb +33 -0
- data/doclib/msgpack/packer.rb +20 -0
- data/doclib/msgpack/time.rb +22 -0
- data/doclib/msgpack/timestamp.rb +44 -0
- data/ext/java/org/msgpack/jruby/Buffer.java +4 -0
- data/ext/java/org/msgpack/jruby/Encoder.java +48 -18
- data/ext/java/org/msgpack/jruby/ExtensionRegistry.java +67 -38
- data/ext/java/org/msgpack/jruby/Factory.java +20 -8
- data/ext/java/org/msgpack/jruby/MessagePackLibrary.java +0 -92
- data/ext/java/org/msgpack/jruby/Packer.java +114 -11
- data/ext/java/org/msgpack/jruby/Unpacker.java +15 -8
- data/ext/msgpack/buffer.h +14 -0
- data/ext/msgpack/buffer_class.c +1 -1
- data/ext/msgpack/compat.h +10 -0
- data/ext/msgpack/factory_class.c +24 -17
- data/ext/msgpack/factory_class.h +0 -2
- data/ext/msgpack/packer.c +5 -4
- data/ext/msgpack/packer.h +13 -1
- data/ext/msgpack/packer_class.c +130 -43
- data/ext/msgpack/packer_class.h +0 -2
- data/ext/msgpack/packer_ext_registry.c +2 -2
- data/ext/msgpack/packer_ext_registry.h +64 -25
- data/ext/msgpack/rbinit.c +0 -2
- data/ext/msgpack/unpacker.c +3 -3
- data/ext/msgpack/unpacker_class.c +25 -56
- data/ext/msgpack/unpacker_class.h +0 -2
- data/ext/msgpack/unpacker_ext_registry.c +2 -2
- data/ext/msgpack/unpacker_ext_registry.h +3 -3
- data/lib/msgpack.rb +36 -0
- data/lib/msgpack/core_ext.rb +139 -0
- data/lib/msgpack/factory.rb +21 -0
- data/lib/msgpack/symbol.rb +9 -0
- data/lib/msgpack/time.rb +29 -0
- data/lib/msgpack/timestamp.rb +76 -0
- data/lib/msgpack/version.rb +8 -1
- data/msgpack.gemspec +6 -7
- data/spec/cruby/buffer_spec.rb +6 -1
- data/spec/factory_spec.rb +134 -0
- data/spec/msgpack_spec.rb +52 -0
- data/spec/packer_spec.rb +200 -0
- data/spec/timestamp_spec.rb +121 -0
- data/spec/unpacker_spec.rb +29 -0
- metadata +29 -23
- data/ext/msgpack/core_ext.c +0 -144
- data/ext/msgpack/core_ext.h +0 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 40d206a80a2ab99957b78f2d054417dc273933da4accf5f39a25ff4b16ec30ce
|
4
|
+
data.tar.gz: e39c06187017d057a44e71d3690662455934c2c1acafc667d49e91aaf626fbd9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d20c8da71f90435f264c0e1c9c90e4a5c8c09c014d33076149e6e5faa3b849ac5192d2f086b917f09eb199bcfd8cc748093d6f59e3f5fcb7c228199f549c23c5
|
7
|
+
data.tar.gz: dd5c662d5abbf45901d59a7400f2b92a6c296b2298035fecc55a31f82b19b4e9206ca3b0a7cab090d9cc9768bea015b74ad9bf5a997a763eb6ba3387b6a7fc30
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
data/.travis.yml
CHANGED
@@ -1,17 +1,5 @@
|
|
1
1
|
language: ruby
|
2
2
|
|
3
|
-
rvm:
|
4
|
-
- 2.0.0
|
5
|
-
- 2.1.6
|
6
|
-
- 2.2.2
|
7
|
-
- ruby-head
|
8
|
-
- jruby-19mode
|
9
|
-
- jruby-head
|
10
|
-
|
11
|
-
os:
|
12
|
-
- linux
|
13
|
-
- osx
|
14
|
-
|
15
3
|
sudo: false
|
16
4
|
|
17
5
|
branches:
|
@@ -21,10 +9,35 @@ branches:
|
|
21
9
|
gemfile:
|
22
10
|
- Gemfile
|
23
11
|
|
12
|
+
before_install:
|
13
|
+
# This is only for Ruby 2.5.0, Bundler 1.16.1 and rubygems 2.7.3
|
14
|
+
# See https://github.com/travis-ci/travis-ci/issues/8969
|
15
|
+
- "[ \"x2.7.3\" = \"x\"$(gem --version) ] && gem update --system --no-document || echo \"no need to update rubygem\""
|
16
|
+
|
17
|
+
# http://rubies.travis-ci.org/
|
24
18
|
matrix:
|
25
|
-
|
19
|
+
include:
|
20
|
+
- rvm: 2.3.8
|
21
|
+
os: linux
|
22
|
+
- rvm: 2.4.5
|
23
|
+
os: linux
|
24
|
+
- rvm: 2.5.3
|
25
|
+
os: linux
|
26
|
+
- rvm: 2.6.1
|
27
|
+
os: linux
|
28
|
+
- rvm: 2.6.1
|
29
|
+
os: osx
|
26
30
|
- rvm: ruby-head
|
31
|
+
os: linux
|
32
|
+
- rvm: jruby-9.1.9.0
|
33
|
+
os: linux
|
27
34
|
- rvm: jruby-head
|
35
|
+
os: linux
|
28
36
|
- rvm: jruby-19mode
|
37
|
+
os: linux
|
38
|
+
allow_failures:
|
39
|
+
- rvm: 2.6.1
|
29
40
|
os: osx
|
30
|
-
- rvm:
|
41
|
+
- rvm: ruby-head
|
42
|
+
- rvm: jruby-head
|
43
|
+
- rvm: jruby-19mode
|
data/ChangeLog
CHANGED
@@ -1,3 +1,91 @@
|
|
1
|
+
2020-02-05 version 1.3.3:
|
2
|
+
|
3
|
+
* Hotfix release for Windows environments: 1.3.2 missed including binaries
|
4
|
+
|
5
|
+
2020-02-04 version 1.3.2:
|
6
|
+
|
7
|
+
* Add Ruby 2.7.0 binary in gem releases for Windows
|
8
|
+
|
9
|
+
2019-08-05 version 1.3.1:
|
10
|
+
|
11
|
+
* Fix timestamp ext type bug about timestamps with seconds larger than 32bit int (after 2106-02-07 06:28:16 UTC)
|
12
|
+
|
13
|
+
2019-06-20 verison 1.3.0:
|
14
|
+
|
15
|
+
* Add timestamp ext type (id:-1) support
|
16
|
+
|
17
|
+
2019-04-19 version 1.2.10:
|
18
|
+
|
19
|
+
* Optimze MessagePack.unpack not to copy source string
|
20
|
+
|
21
|
+
2019-03-13 version 1.2.9:
|
22
|
+
|
23
|
+
* Hotfix release only for JRuby: 1.2.8-java was built incorrectly
|
24
|
+
|
25
|
+
2019-03-11 version 1.2.8:
|
26
|
+
|
27
|
+
* Fix a regression that MessagePack#unpack raises error if IO is assigned as the (only) argument
|
28
|
+
* Improve compatibility that MessagePack#pack returns nil if IO is assigned as 2nd argument
|
29
|
+
|
30
|
+
2019-03-01 version 1.2.7:
|
31
|
+
|
32
|
+
* Add Packer#write_bin and Packer#write_bin_header methods
|
33
|
+
|
34
|
+
2019-01-08 verison 1.2.6:
|
35
|
+
|
36
|
+
* Update Ruby version 2.6 dependency (especially for Windows environment)
|
37
|
+
* (version 1.2.4 and 1.2.5 were also releases for updated Ruby versions)
|
38
|
+
|
39
|
+
2018-03-02 version 1.2.3:
|
40
|
+
|
41
|
+
* Add Ruby 2.5.0 binary in gem releases for Windows
|
42
|
+
|
43
|
+
2018-01-11 version 1.2.2:
|
44
|
+
|
45
|
+
* Fix bug to occur SEGV occasionally (depends on GC timing) when exttype is used
|
46
|
+
* Fix bug to encode an ext type with wrong type id if superclass is also registered as ext type
|
47
|
+
|
48
|
+
2017-12-08 version 1.2.1:
|
49
|
+
|
50
|
+
* Hotfix release only for JRuby: 1.2.0-java was built in incorrect way
|
51
|
+
|
52
|
+
2017-12-07 version 1.2.0:
|
53
|
+
|
54
|
+
* Add MessagePack::Factory#dump and MessagePack::Factory#load as convenient methods
|
55
|
+
like MessagePack.dump and MessagePack.load
|
56
|
+
* Fix bug to accept MessagePack::Factory#register_type after #freeze
|
57
|
+
|
58
|
+
2017-02-28 version 1.1.0:
|
59
|
+
|
60
|
+
* Fix the extension type handling to accept modules in addition to classes
|
61
|
+
|
62
|
+
2017-01-24 version 1.0.3:
|
63
|
+
|
64
|
+
* Support Ruby 2.4
|
65
|
+
|
66
|
+
2016-10-17 version 1.0.2:
|
67
|
+
|
68
|
+
* Bump version up to release newer version to fix broken gem release for JRuby
|
69
|
+
|
70
|
+
2016-10-17 version 1.0.1:
|
71
|
+
|
72
|
+
* Fix a bug to crash at packer when ext type is registered for superclass of packed object
|
73
|
+
* Fix JRuby implementation about inconsistent API of Unpacker constructor
|
74
|
+
|
75
|
+
2016-07-08 version 1.0.0:
|
76
|
+
|
77
|
+
* Fix to be able to pack Symbol with ext types
|
78
|
+
* Fix for MRI 2.4 (Integer unification)
|
79
|
+
|
80
|
+
2016-05-10 version 0.7.6:
|
81
|
+
|
82
|
+
* Fix bug to raise IndexOutOfBoundsException for Bignum value with small int in JRuby
|
83
|
+
|
84
|
+
2016-04-06 version 0.7.5:
|
85
|
+
|
86
|
+
* Improved support for i386/armel/armhf environments
|
87
|
+
* Fix bug for negative ext type id and some architectures (arm*)
|
88
|
+
|
1
89
|
2016-01-08 version 0.7.4:
|
2
90
|
|
3
91
|
* Improved compatibility of Packer between CRuby and JRuby about argument IO-ish object values.
|
@@ -17,7 +105,7 @@
|
|
17
105
|
|
18
106
|
2015-10-24 version 0.7.0:
|
19
107
|
|
20
|
-
* Add
|
108
|
+
* Add extension types support.
|
21
109
|
* Fix to share almost all test cases between CRuby and JRuby implementations.
|
22
110
|
* Fixed JRuby implementation to raise UnknownExtTypeError for unregistered ext type ids
|
23
111
|
instead to generate MessagePack::ExtensionValue instances.
|
data/Gemfile
CHANGED
data/README.rdoc
CHANGED
@@ -91,6 +91,52 @@ or event-driven style which works well with EventMachine:
|
|
91
91
|
|
92
92
|
See {API reference}[http://ruby.msgpack.org/MessagePack/Unpacker.html] for details.
|
93
93
|
|
94
|
+
= Serializing and deserializing symbols
|
95
|
+
|
96
|
+
By default, symbols are serialized as strings:
|
97
|
+
|
98
|
+
packed = :symbol.to_msgpack # => "\xA6symbol"
|
99
|
+
MessagePack.unpack(packed) # => "symbol"
|
100
|
+
|
101
|
+
This can be customized by registering an extension type for them:
|
102
|
+
|
103
|
+
MessagePack::DefaultFactory.register_type(0x00, Symbol)
|
104
|
+
|
105
|
+
# symbols now survive round trips
|
106
|
+
packed = :symbol.to_msgpack # => "\xc7\x06\x00symbol"
|
107
|
+
MessagePack.unpack(packed) # => :symbol
|
108
|
+
|
109
|
+
The extension type for symbols is configurable like any other extension type.
|
110
|
+
For example, to customize how symbols are packed you can just redefine
|
111
|
+
Symbol#to_msgpack_ext. Doing this gives you an option to prevent symbols from
|
112
|
+
being serialized altogether by throwing an exception:
|
113
|
+
|
114
|
+
class Symbol
|
115
|
+
def to_msgpack_ext
|
116
|
+
raise "Serialization of symbols prohibited"
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
MessagePack::DefaultFactory.register_type(0x00, Symbol)
|
121
|
+
|
122
|
+
[1, :symbol, 'string'].to_msgpack # => RuntimeError: Serialization of symbols prohibited
|
123
|
+
|
124
|
+
= Serializing and deserializing Time instances
|
125
|
+
|
126
|
+
There are the timestamp extension type in MessagePack,
|
127
|
+
but it is not registered by default.
|
128
|
+
|
129
|
+
To map Ruby's Time to MessagePack's timestamp for the default factory:
|
130
|
+
|
131
|
+
MessagePack::DefaultFactory.register_type(
|
132
|
+
MessagePack::Timestamp::TYPE, # or just -1
|
133
|
+
Time,
|
134
|
+
packer: MessagePack::Time::Packer,
|
135
|
+
unpacker: MessagePack::Time::Unpacker
|
136
|
+
)
|
137
|
+
|
138
|
+
See {API reference}[http://ruby.msgpack.org/] for details.
|
139
|
+
|
94
140
|
= Extension Types
|
95
141
|
|
96
142
|
Packer and Unpacker support {Extension types of MessagePack}[https://github.com/msgpack/msgpack/blob/master/spec.md#types-extension-type].
|
@@ -105,7 +151,7 @@ Packer and Unpacker support {Extension types of MessagePack}[https://github.com/
|
|
105
151
|
uk.register_type(0x01, MyClass1, :from_msgpack_ext)
|
106
152
|
uk.register_type(0x02){|data| MyClass2.create_from_serialized_data(data) }
|
107
153
|
|
108
|
-
MessagePack::Factory is to create packer and unpacker which have same
|
154
|
+
MessagePack::Factory is to create packer and unpacker which have same extension types.
|
109
155
|
|
110
156
|
factory = MessagePack::Factory.new
|
111
157
|
factory.register_type(0x01, MyClass1) # same with next line
|
@@ -146,6 +192,14 @@ Then, you can run the tasks as follows:
|
|
146
192
|
|
147
193
|
bundle exec rake doc
|
148
194
|
|
195
|
+
== How to build -java rubygems
|
196
|
+
|
197
|
+
To build -java gems for JRuby, run:
|
198
|
+
|
199
|
+
rake build:java
|
200
|
+
|
201
|
+
If this directory has Gemfile.lock (generated with MRI), remove it beforehand.
|
202
|
+
|
149
203
|
== How to build -mingw32 rubygems
|
150
204
|
|
151
205
|
MessagePack mingw32/64 rubygems build process uses {rake-compiler-dock}[https://github.com/rake-compiler/rake-compiler-dock]. Run:
|
data/Rakefile
CHANGED
@@ -62,10 +62,14 @@ RSpec::Core::RakeTask.new(:spec) do |t|
|
|
62
62
|
end
|
63
63
|
|
64
64
|
namespace :build do
|
65
|
+
desc 'Build gem for JRuby after cleaning'
|
66
|
+
task :java => [:clean, :spec, :build]
|
67
|
+
|
65
68
|
desc 'Build gems for Windows per rake-compiler-dock'
|
66
69
|
task :windows do
|
67
70
|
require 'rake_compiler_dock'
|
68
|
-
|
71
|
+
# See RUBY_CC_VERSION in https://github.com/rake-compiler/rake-compiler-dock/blob/master/Dockerfile
|
72
|
+
RakeCompilerDock.sh 'bundle && gem i json && rake cross native gem RUBY_CC_VERSION=2.2.2:2.3.0:2.4.0:2.5.0:2.6.0:2.7.0'
|
69
73
|
end
|
70
74
|
end
|
71
75
|
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'viiite'
|
2
|
+
require 'msgpack'
|
3
|
+
|
4
|
+
data = :symbol
|
5
|
+
|
6
|
+
Viiite.bench do |b|
|
7
|
+
b.variation_point :branch, `git rev-parse --abbrev-ref HEAD`
|
8
|
+
|
9
|
+
b.range_over([:symbol, :none], :reg_type) do |reg_type|
|
10
|
+
packer = MessagePack::Packer.new
|
11
|
+
packer.register_type(0x00, Symbol, :to_msgpack_ext) if reg_type == :symbol
|
12
|
+
|
13
|
+
b.range_over([100_000, 1_000_000, 10_000_000], :count) do |count|
|
14
|
+
packer.clear
|
15
|
+
b.report(:multi_run) do
|
16
|
+
count.times do
|
17
|
+
packer.pack(data)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
packer.clear
|
22
|
+
items_data = [].fill(data, 0, count)
|
23
|
+
b.report(:large_run) do
|
24
|
+
packer.pack(items_data)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
|
3
|
+
# so master and this branch have the benchmark file in any case
|
4
|
+
cp bench/pack_symbols.rb bench/pack_symbols_tmp.rb
|
5
|
+
|
6
|
+
benchmark=""
|
7
|
+
current_branch=`git rev-parse --abbrev-ref HEAD`
|
8
|
+
|
9
|
+
for branch in master $current_branch; do
|
10
|
+
echo "Testing branch $branch"
|
11
|
+
git checkout $branch
|
12
|
+
|
13
|
+
echo "Installing gem..."
|
14
|
+
rake install
|
15
|
+
|
16
|
+
echo "Running benchmark..."
|
17
|
+
if [ "$benchmark" ]; then
|
18
|
+
benchmark+=$'\n'
|
19
|
+
fi
|
20
|
+
benchmark+=$(viiite run bench/pack_symbols_tmp.rb)
|
21
|
+
echo
|
22
|
+
done
|
23
|
+
|
24
|
+
rm bench/pack_symbols_tmp.rb
|
25
|
+
|
26
|
+
echo "$benchmark" | viiite report --regroup bench,reg_type,count,branch
|
data/doclib/msgpack.rb
CHANGED
@@ -12,7 +12,7 @@ module MessagePack
|
|
12
12
|
# @param obj [Object] object to be serialized
|
13
13
|
# @param io [IO]
|
14
14
|
# @param options [Hash]
|
15
|
-
# @return [
|
15
|
+
# @return [nil]
|
16
16
|
#
|
17
17
|
# See Packer#initialize for supported options.
|
18
18
|
#
|
@@ -31,7 +31,7 @@ module MessagePack
|
|
31
31
|
# @param obj [Object] object to be serialized
|
32
32
|
# @param io [IO]
|
33
33
|
# @param options [Hash]
|
34
|
-
# @return [
|
34
|
+
# @return [nil]
|
35
35
|
#
|
36
36
|
# See Packer#initialize for supported options.
|
37
37
|
#
|
data/doclib/msgpack/core_ext.rb
CHANGED
@@ -1,101 +1,101 @@
|
|
1
1
|
|
2
2
|
class NilClass
|
3
3
|
#
|
4
|
-
# Same as MessagePack.to_msgpack(self[,
|
4
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
5
5
|
#
|
6
6
|
# @return [String] serialized data
|
7
7
|
#
|
8
|
-
def to_msgpack(
|
8
|
+
def to_msgpack(packer=nil)
|
9
9
|
end
|
10
10
|
end
|
11
11
|
|
12
12
|
class TrueClass
|
13
13
|
#
|
14
|
-
# Same as MessagePack.to_msgpack(self[,
|
14
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
15
15
|
#
|
16
16
|
# @return [String] serialized data
|
17
17
|
#
|
18
|
-
def to_msgpack(
|
18
|
+
def to_msgpack(packer=nil)
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
class FalseClass
|
23
23
|
#
|
24
|
-
# Same as MessagePack.to_msgpack(self[,
|
24
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
25
25
|
#
|
26
26
|
# @return [String] serialized data
|
27
27
|
#
|
28
|
-
def to_msgpack(
|
28
|
+
def to_msgpack(packer=nil)
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
32
|
class Fixnum < Integer
|
33
33
|
#
|
34
|
-
# Same as MessagePack.to_msgpack(self[,
|
34
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
35
35
|
#
|
36
36
|
# @return [String] serialized data
|
37
37
|
#
|
38
|
-
def to_msgpack(
|
38
|
+
def to_msgpack(packer=nil)
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
42
|
class Bignum < Integer
|
43
43
|
#
|
44
|
-
# Same as MessagePack.to_msgpack(self[,
|
44
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
45
45
|
#
|
46
46
|
# @return [String] serialized data
|
47
47
|
#
|
48
|
-
def to_msgpack(
|
48
|
+
def to_msgpack(packer=nil)
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
52
52
|
class Float < Numeric
|
53
53
|
#
|
54
|
-
# Same as MessagePack.to_msgpack(self[,
|
54
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
55
55
|
#
|
56
56
|
# @return [String] serialized data
|
57
57
|
#
|
58
|
-
def to_msgpack(
|
58
|
+
def to_msgpack(packer=nil)
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
62
62
|
class String
|
63
63
|
#
|
64
|
-
# Same as MessagePack.to_msgpack(self[,
|
64
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
65
65
|
#
|
66
66
|
# @return [String] serialized data
|
67
67
|
#
|
68
|
-
def to_msgpack(
|
68
|
+
def to_msgpack(packer=nil)
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
72
72
|
class Array
|
73
73
|
#
|
74
|
-
# Same as MessagePack.to_msgpack(self[,
|
74
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
75
75
|
#
|
76
76
|
# @return [String] serialized data
|
77
77
|
#
|
78
|
-
def to_msgpack(
|
78
|
+
def to_msgpack(packer=nil)
|
79
79
|
end
|
80
80
|
end
|
81
81
|
|
82
82
|
class Hash
|
83
83
|
#
|
84
|
-
# Same as MessagePack.to_msgpack(self[,
|
84
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
85
85
|
#
|
86
86
|
# @return [String] serialized data
|
87
87
|
#
|
88
|
-
def to_msgpack(
|
88
|
+
def to_msgpack(packer=nil)
|
89
89
|
end
|
90
90
|
end
|
91
91
|
|
92
92
|
class Symbol
|
93
93
|
#
|
94
|
-
# Same as MessagePack.to_msgpack(self[,
|
94
|
+
# Same as MessagePack.to_msgpack(self[, packer]).
|
95
95
|
#
|
96
96
|
# @return [String] serialized data
|
97
97
|
#
|
98
|
-
def to_msgpack(
|
98
|
+
def to_msgpack(packer=nil)
|
99
99
|
end
|
100
100
|
end
|
101
101
|
|