module Scale::Types::Option::ClassMethods
Public Instance Methods
decode(scale_bytes)
click to toggle source
# File lib/scale/base.rb, line 56 def decode(scale_bytes) puts "BEGIN " + self::TYPE_NAME + ": #{scale_bytes}" if Scale::Types.debug == true byte = scale_bytes.get_next_bytes(1) if byte == [0] puts " END " + self::TYPE_NAME + ": #{scale_bytes}" if Scale::Types.debug == true new(nil) elsif byte == [1] # big process type = if self::INNER_TYPE.class == ::String Scale::Types.get(self::INNER_TYPE) else self::INNER_TYPE end value = type.decode(scale_bytes) puts " END " + self::TYPE_NAME + ": #{scale_bytes}" if Scale::Types.debug == true new(value) else raise BadDataError.new("Bad scale data for #{self::TYPE_NAME}") end end
inner_type(type)
click to toggle source
# File lib/scale/base.rb, line 78 def inner_type(type) const_set(:INNER_TYPE, type) end