class Scale::Types::MetadataV1Module
Public Class Methods
decode(scale_bytes)
click to toggle source
# File lib/metadata/metadata_v1.rb, line 53 def self.decode(scale_bytes) name = String.decode(scale_bytes).value prefix = String.decode(scale_bytes).value result = { name: name, prefix: prefix } has_storage = Bool.decode(scale_bytes).value if has_storage storages = Scale::Types.get("Vec<MetadataV1ModuleStorage>").decode(scale_bytes).value result[:storage] = storages.map(&:value) end has_calls = Bool.decode(scale_bytes).value if has_calls calls = Scale::Types.get("Vec<MetadataModuleCall>").decode(scale_bytes).value result[:calls] = calls.map(&:value) end has_events = Bool.decode(scale_bytes).value if has_events events = Scale::Types.get("Vec<MetadataModuleEvent>").decode(scale_bytes).value result[:events] = events.map(&:value) end MetadataModule.new(result) end