firm 1.1.3 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/firm/serializer/json.rb +6 -4
- data/lib/firm/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 469e6b9c969363f1a02dec82461e0d7f176c6dcb179c69e5d3e49028850ede2f
|
|
4
|
+
data.tar.gz: c289d16555c8e499ee83045042095b89f038122a9033aa0f74d82d42ccaeefdb
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d949b1da43a928fc2e36ea058cde3b040e3b8e10e8a0ed8d9d3ad2de3053535e5b8616f0e1792c8a7e6d6285573298d2f352b4fc90126b4f2fc85d80258f9fce
|
|
7
|
+
data.tar.gz: ecb380c724b12eb9dc93a6abb368ad41aeaf6f554a46472f026aa39226dd2d2c8527b351ae628721763a09898ea0ffc38a37853fab45b8efeae1ac6dc341b964
|
data/lib/firm/serializer/json.rb
CHANGED
|
@@ -32,9 +32,10 @@ module FIRM
|
|
|
32
32
|
|
|
33
33
|
CREATE_ID = 'rbklass'.freeze
|
|
34
34
|
|
|
35
|
-
#
|
|
35
|
+
# Hash class mixin to use for deserialized JSON object data which
|
|
36
36
|
# supports using Symbol keys.
|
|
37
|
-
|
|
37
|
+
module ObjectHashPatch
|
|
38
|
+
|
|
38
39
|
# Returns the object associated with given key.
|
|
39
40
|
# @param [String,Symbol] key key value
|
|
40
41
|
# @return [Object] associated object
|
|
@@ -52,6 +53,7 @@ module FIRM
|
|
|
52
53
|
alias member? include?
|
|
53
54
|
alias has_key? include?
|
|
54
55
|
alias key? include?
|
|
56
|
+
|
|
55
57
|
end
|
|
56
58
|
|
|
57
59
|
module ContainerPatch
|
|
@@ -195,8 +197,7 @@ module FIRM
|
|
|
195
197
|
# set custom (more compact) create_id
|
|
196
198
|
::JSON.create_id = Serializable::JSON::CREATE_ID
|
|
197
199
|
::JSON.parse!(source,
|
|
198
|
-
create_additions: true
|
|
199
|
-
object_class: Serializable::JSON::ObjectHash)
|
|
200
|
+
create_additions: true)
|
|
200
201
|
ensure
|
|
201
202
|
# reset safe deserializing
|
|
202
203
|
self.end_safe_deserialize
|
|
@@ -211,6 +212,7 @@ module FIRM
|
|
|
211
212
|
|
|
212
213
|
def json_create(object)
|
|
213
214
|
data = object['data']
|
|
215
|
+
data.extend(Serializable::JSON::ObjectHashPatch)
|
|
214
216
|
# deserializing (anchor) object or alias
|
|
215
217
|
if object.has_key?('*id')
|
|
216
218
|
if Serializable::Aliasing.restored?(self, object['*id'])
|
data/lib/firm/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: firm
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Martin Corino
|
|
8
8
|
bindir: bin
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
11
|
dependencies: []
|
|
12
12
|
description: FIRM is a pure Ruby library providing format independent object marshalling
|
|
13
13
|
email: mcorino@m2c-software.nl
|
|
@@ -55,7 +55,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
55
55
|
- !ruby/object:Gem::Version
|
|
56
56
|
version: '0'
|
|
57
57
|
requirements: []
|
|
58
|
-
rubygems_version:
|
|
58
|
+
rubygems_version: 4.0.3
|
|
59
59
|
specification_version: 4
|
|
60
60
|
summary: Format independent Ruby object marshalling
|
|
61
61
|
test_files: []
|