diff options
| author | Jack Nagel | 2014-07-07 17:34:30 -0500 | 
|---|---|---|
| committer | Jack Nagel | 2014-07-07 17:36:20 -0500 | 
| commit | 879ec967437d76d9b32bbe90d70384874bafbd59 (patch) | |
| tree | 028cd9942a3eee2e074fe1377a8342460b967208 /Library/Homebrew | |
| parent | 9e7f5dc2619839a17dbceb01c6708bab7753e73f (diff) | |
| download | brew-879ec967437d76d9b32bbe90d70384874bafbd59.tar.bz2 | |
Only store one proc per BuildEnvironment instance
Diffstat (limited to 'Library/Homebrew')
| -rw-r--r-- | Library/Homebrew/build_environment.rb | 12 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_build_environment.rb | 6 | 
2 files changed, 8 insertions, 10 deletions
diff --git a/Library/Homebrew/build_environment.rb b/Library/Homebrew/build_environment.rb index d46e4bfb2..c7cb7bc0e 100644 --- a/Library/Homebrew/build_environment.rb +++ b/Library/Homebrew/build_environment.rb @@ -1,9 +1,10 @@  require 'set'  class BuildEnvironment +  attr_accessor :proc +    def initialize(*settings)      @settings = Set.new(settings) -    @procs = Set.new    end    def merge(*args) @@ -11,10 +12,7 @@ class BuildEnvironment    end    def <<(o) -    case o -    when Proc then @procs << o -    else @settings << o -    end +    @settings << o      self    end @@ -27,7 +25,7 @@ class BuildEnvironment    end    def modify_build_environment(receiver) -    @procs.each { |p| receiver.instance_eval(&p) } +    receiver.instance_eval(&proc)    end    def _dump(*) @@ -43,7 +41,7 @@ module BuildEnvironmentDSL    def env(*settings, &block)      @env ||= BuildEnvironment.new      if block_given? -      @env << block +      @env.proc = block      else        @env.merge(settings)      end diff --git a/Library/Homebrew/test/test_build_environment.rb b/Library/Homebrew/test/test_build_environment.rb index c2da6d215..9e148a7bc 100644 --- a/Library/Homebrew/test/test_build_environment.rb +++ b/Library/Homebrew/test/test_build_environment.rb @@ -21,7 +21,7 @@ class BuildEnvironmentTests < Homebrew::TestCase    end    def test_modify_build_environment -    @env << Proc.new { raise StandardError } +    @env.proc = Proc.new { raise StandardError }      assert_raises(StandardError) do        @env.modify_build_environment(self)      end @@ -36,14 +36,14 @@ class BuildEnvironmentTests < Homebrew::TestCase    def test_env_block      foo = mock("foo") -    @env << Proc.new { foo.some_message } +    @env.proc = Proc.new { foo.some_message }      foo.expects(:some_message)      @env.modify_build_environment(self)    end    def test_env_block_with_argument      foo = mock("foo") -    @env << Proc.new { |x| x.some_message } +    @env.proc = Proc.new { |x| x.some_message }      foo.expects(:some_message)      @env.modify_build_environment(foo)    end  | 
