From 0949d952dc1a0eda002108b35c7fda38df7448fc Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Wed, 9 Jan 2013 17:36:17 -0600 Subject: Define Symbol#to_proc for Ruby 1.8.6 Ruby 1.8.6 doesn't have Symbol#to_proc, which allows things like map(&:to_s) rather than map { |o| o.to_s }. 1.8.7 does, though, and since it is used in a bunch of the superenv code we should attempt to keep it compatible with 1.8.6. Closes Homebrew/homebrew#16046. --- Library/Homebrew/extend/symbol.rb | 5 +++++ Library/Homebrew/global.rb | 1 + 2 files changed, 6 insertions(+) create mode 100644 Library/Homebrew/extend/symbol.rb (limited to 'Library') diff --git a/Library/Homebrew/extend/symbol.rb b/Library/Homebrew/extend/symbol.rb new file mode 100644 index 000000000..75a17b5ad --- /dev/null +++ b/Library/Homebrew/extend/symbol.rb @@ -0,0 +1,5 @@ +class Symbol + def to_proc + proc { |obj, *args| obj.send(self, *args) } + end unless method_defined?(:to_proc) +end diff --git a/Library/Homebrew/global.rb b/Library/Homebrew/global.rb index 2bc26cf68..6440506f8 100644 --- a/Library/Homebrew/global.rb +++ b/Library/Homebrew/global.rb @@ -2,6 +2,7 @@ require 'extend/fileutils' require 'extend/pathname' require 'extend/ARGV' require 'extend/string' +require 'extend/symbol' require 'utils' require 'exceptions' require 'set' -- cgit v1.2.3