Sha256: 62100a9a7bab38acf74a517f398769fd21f1b978effd9eb20b9c9606dff97158
Contents?: true
Size: 1.29 KB
Versions: 1
Compression:
Stored size: 1.29 KB
Contents
# frozen_string_literal: true # Index for searching value from config.yml module Fusuma class Config # index for config.yml class Index def initialize(keys) @keys = case keys when Array keys.map do |key| if key.is_a? Key key else Key.new(key) end end else [Key.new(keys)] end end attr_reader :keys def cache_key case @keys when Array @keys.map(&:symbol).join(',') when Key @keys.symbol else raise 'invalid keys' end end # Keys in Index class Key def initialize(symbol_word, skippable: false, fallback: nil) @symbol = begin symbol_word.to_sym rescue StandardError symbol_word end @skippable = skippable @fallback = begin fallback.to_sym rescue StandardError fallback end end attr_reader :symbol, :skippable, :fallback end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fusuma-2.0.0.pre | lib/fusuma/config/index.rb |