Module: ImageFilterDsl::Serializers::Json
- Extended by:
- Json
- Includes:
- Common
- Included in:
- Json
- Defined in:
- lib/image_filter_dsl/serializers/json.rb
Overview
Provides serialization/deserialization to/from JSON using intermediate serializer
Instance Method Summary collapse
-
#deserialize(data) ⇒ Hash
Deserialize JSON kernel to intermediate format.
-
#serialize(kernel) ⇒ String
Serialize kernel to JSON string.
Methods included from Common
Instance Method Details
#deserialize(data) ⇒ Hash
Deserialize JSON kernel to intermediate format
30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/image_filter_dsl/serializers/json.rb', line 30 def deserialize(data) data = JSON.load(data) data = fix_hash(data,[:inputs,:outputs,:instructions]) data[:instructions] = data[:instructions].map {|i| fix_hash(i,[:op,:in,:out])} { inputs: data[:inputs], outputs: data[:outputs], instructions: data[:instructions] } end |
#serialize(kernel) ⇒ String
Serialize kernel to JSON string
18 19 20 21 22 23 24 25 |
# File 'lib/image_filter_dsl/serializers/json.rb', line 18 def serialize(kernel) { header: ImageFilterDsl::Binary::Struct::HEADER_VALUES, inputs: kernel[:inputs], outputs: kernel[:outputs], instructions: kernel[:instructions] }.to_json end |