diff options
| author | Markus Reiter | 2017-11-06 21:13:39 +0100 |
|---|---|---|
| committer | Markus Reiter | 2017-11-06 21:13:39 +0100 |
| commit | bd0b76329228986d1d461312989ec76c839d055b (patch) | |
| tree | e763291dc8207e3ef997e3c26204215883dbb8ab /Library | |
| parent | e300713f253029ef91a86bc4006d316582fc6d13 (diff) | |
| download | brew-bd0b76329228986d1d461312989ec76c839d055b.tar.bz2 | |
Refactor `DependsOn` with `DelegateClass`.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cask/lib/hbc/dsl/depends_on.rb | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/dsl/depends_on.rb b/Library/Homebrew/cask/lib/hbc/dsl/depends_on.rb index bdef4239a..5faac299f 100644 --- a/Library/Homebrew/cask/lib/hbc/dsl/depends_on.rb +++ b/Library/Homebrew/cask/lib/hbc/dsl/depends_on.rb @@ -2,7 +2,7 @@ require "rubygems" module Hbc class DSL - class DependsOn + class DependsOn < DelegateClass(Hash) VALID_KEYS = Set.new [ :formula, :cask, @@ -19,19 +19,18 @@ module Hbc }.freeze attr_accessor :java - attr_accessor :pairs attr_reader :arch, :cask, :formula, :macos, :x11 def initialize - @pairs ||= {} + super({}) @cask ||= [] @formula ||= [] end - def load(pairs = {}) + def load(**pairs) pairs.each do |key, value| raise "invalid depends_on key: '#{key.inspect}'" unless VALID_KEYS.include?(key) - @pairs[key] = send(:"#{key}=", *value) + self[key] = send(:"#{key}=", *value) end end @@ -90,14 +89,6 @@ module Hbc raise "invalid 'depends_on x11' value: #{arg.inspect}" unless [true, false].include?(arg) @x11 = arg end - - def to_yaml - @pairs.to_yaml - end - - def to_s - @pairs.inspect - end end end end |
