Sha256: 8884494b9d34620b61b7125285690f5e9aca4ad2ff7f431fb2e34ff8056da0ce
Contents?: true
Size: 1.52 KB
Versions: 13
Compression:
Stored size: 1.52 KB
Contents
# frozen_string_literal: true module Script module Layers module Domain class ExtensionPoint attr_reader :type, :beta, :deprecated, :libraries, :domain def initialize(type, config) @type = type @beta = config["beta"] || false @deprecated = config["deprecated"] || false @domain = config["domain"] || nil @libraries = ExtensionPointLibraries.new(config["libraries"]) end def beta? @beta end def deprecated? @deprecated end def dasherize_type @type.gsub("_", "-") end class ExtensionPointLibraries def initialize(config) @config = config end def all @all ||= @config.map do |language, libray_config| ExtensionPointLibrary.new(language, libray_config) end end def for(language) all.find { |ep| ep.language == language } end end class ExtensionPointLibrary attr_reader :language, :version, :beta, :package, :repo def initialize(language, config) @language = language @beta = config["beta"] || false @package = config["package"] @version = config["package-version"] @repo = config["repo"] end def beta? @beta end def versioned? @version end end end end end end
Version data entries
13 entries across 13 versions & 1 rubygems