Added v 0.1.1 snapshot.
[twitter4r-core.git] / lib / twitter / meta.rb
blob88448c3b2de3e84adfab1e4dc595ed86cf507c4a
1 require('rubygems')
2 require('erb')
4 class Twitter::Meta #:nodoc:
5   attr_accessor :root_dir
6   attr_reader :gem_spec, :project_files, :spec_files
8   def initialize(root_dir)
9     @root_dir = root_dir
10   end
12   def pkg_info
13     yaml_file = File.join(@root_dir, 'pkg-info.yml')
14     ryaml = ERB.new(File.read(yaml_file), 0)
15     s = ryaml.result(binding)
16     YAML.load(s)
17   end
18   
19   def spec_info
20     self.pkg_info['spec'] if self.pkg_info
21   end
22   
23   def project_files
24     @project_files ||= Dir.glob(File.join(@root_dir, 'lib/**/*.rb'))
25     @project_files
26   end
27   
28   def spec_files
29     @spec_files ||= Dir.glob(File.join(@root_dir, 'spec/**/*.rb'))
30     @spec_files
31   end
32   
33   def gem_spec
34     @gem_spec ||= Gem::Specification.new do |spec|
35       self.spec_info.each do |key, val|
36         spec.send("#{key}=", val)
37       end
38     end
39     @gem_spec
40   end
41 end