class Coupdoeil::Hovercard::OptionsSet
def custom_animation? = options[:animation].to_s == "custom"
def custom_animation? = options[:animation].to_s == "custom"
def dup = OptionsSet.new(options.deep_dup)
def dup = OptionsSet.new(options.deep_dup)
def initialize(options = {})
def initialize(options = {}) @options = options end
def merge(options_set)
def merge(options_set) OptionsSet.new(@options.merge(options_set.options)) end
def preload? = options[:loading].to_s == "preload"
def preload? = options[:loading].to_s == "preload"
def to_base36
def to_base36 @to_base36 ||= begin shift = 0 ORDERED_OPTIONS.reverse.sum do |option| bits = option.into_bits(@options[option.key]) result = bits << shift shift += option.bit_size result end.to_s(36).freeze end end
def to_h = options
def to_h = options
def validate!
def validate! ORDERED_OPTIONS.map do |option| next unless @options.key?(option.key) value = @options[option.key] option.new(value).validate! end @options.assert_valid_keys(ORDERED_OPTIONS.map(&:key)) end