Sha256: bf769f686161132b2389cfc8f17cb63a5ee6eabb3537580f12861146d62bf2f8
Contents?: true
Size: 1.02 KB
Versions: 4
Compression:
Stored size: 1.02 KB
Contents
require 'yaml' module Yoda module Store class Config # @param yaml_str [String] def self.from_yaml_data(yaml_str) new(YAML.load(yaml_str, symbolize_names: true) || {}) end # @param path [String] def self.at(path) new(YAML.load(File.read(path), symbolize_names: true) || {}) end # @param contents [Hash] def initialize(contents) @contents = contents Logger.trace("Config: #{contents}") end # @return [Array<String>] def ignored_gems @ignored_gems ||= (@contents[:gems] || []).select { |gem_data| gem_data[:ignore] }.map { |gem_data| gem_data[:name] } end # @return [Array<String>] def rbs_signature_paths @contents.dig(:rbs, :signature) || [] end # @return [Array<String>] def rbs_repository_paths @contents.dig(:rbs, :repository) || [] end # @return [Array<String>] def rbs_libraries @contents.dig(:rbs, :library) || [] end end end end
Version data entries
4 entries across 4 versions & 1 rubygems