diff options
| author | Jack Nagel | 2013-09-17 21:25:43 -0500 |
|---|---|---|
| committer | Jack Nagel | 2013-09-17 21:29:54 -0500 |
| commit | 50d2f632d9157c953dcbaeb33c5b79ef50fee38a (patch) | |
| tree | dabb9975e2def4f8f9c53154b5e71f4a5cfca1b1 /Library/Homebrew | |
| parent | 28cb9978ee6d9b4bcabb9b9b238c98da52411da0 (diff) | |
| download | brew-50d2f632d9157c953dcbaeb33c5b79ef50fee38a.tar.bz2 | |
Allow partial installation of resources
Diffstat (limited to 'Library/Homebrew')
| -rw-r--r-- | Library/Homebrew/extend/pathname.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/resource.rb | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb index d39b692ad..8ca86d39a 100644 --- a/Library/Homebrew/extend/pathname.rb +++ b/Library/Homebrew/extend/pathname.rb @@ -1,5 +1,6 @@ require 'pathname' require 'mach' +require 'resource' # we enhance pathname to make our code more readable class Pathname @@ -12,6 +13,8 @@ class Pathname case src when Resource src.stage(self) + when Resource::Partial + src.resource.stage { install(*src.files) } when Array if src.empty? opoo "tried to install empty array to #{self}" diff --git a/Library/Homebrew/resource.rb b/Library/Homebrew/resource.rb index 238d55ddf..5221f2769 100644 --- a/Library/Homebrew/resource.rb +++ b/Library/Homebrew/resource.rb @@ -62,6 +62,12 @@ class Resource end end + Partial = Struct.new(:resource, :files) + + def files(*files) + Partial.new(self, files) + end + # For brew-fetch and others. def fetch # Ensure the cache exists |
