Class: Kamaze::Project::Tools::Gemspec::Reader
- Inherits:
-
BaseTool
- Object
- Observable
- BaseTool
- Kamaze::Project::Tools::Gemspec::Reader
- Defined in:
- lib/kamaze/project/tools/gemspec/reader.rb,
lib/kamaze/project/tools/gemspec.rb,
lib/kamaze/project/tools/gemspec/reader/decorator.rb
Overview
Read gemspec
file
Retrieve Gem::Specification
through read
method.
Defined Under Namespace
Classes: Decorator
Instance Attribute Summary collapse
- #gem_name ⇒ String
- #observer_peers ⇒ Hash|nil included from Concern::Observable readonly protected
-
#project ⇒ Object|Kamaze::Project
Get project.
Instance Method Summary collapse
- #mutable_attributes ⇒ Object
- #pwd ⇒ Pathname
-
#read(type = nil) ⇒ Gem::Specification|Object
Read gemspec (as given
type
). - #setup ⇒ Object protected
-
#spec_file ⇒ Pathname
Get (gem)spec file path.
Constructor Details
This class inherits a constructor from Kamaze::Project::Tools::BaseTool
Instance Attribute Details
#gem_name ⇒ String
22 23 24 |
# File 'lib/kamaze/project/tools/gemspec/reader.rb', line 22 def gem_name @gem_name end |
#observer_peers ⇒ Hash|nil (readonly, protected) Originally defined in module Concern::Observable
#project ⇒ Object|Kamaze::Project
Get project
61 62 63 |
# File 'lib/kamaze/project/tools/gemspec/reader.rb', line 61 def project @project || Kamaze.project end |
Instance Method Details
#mutable_attributes ⇒ Object
26 27 28 |
# File 'lib/kamaze/project/tools/gemspec/reader.rb', line 26 def mutable_attributes [:project, :gem_name] end |
#pwd ⇒ Pathname
31 32 33 |
# File 'lib/kamaze/project/tools/gemspec/reader.rb', line 31 def pwd ::Pathname.new(Dir.pwd) end |
#read(type = nil) ⇒ Gem::Specification|Object
Read gemspec (as given type
)
Return Gem::Specification
or given type
42 43 44 45 46 47 48 |
# File 'lib/kamaze/project/tools/gemspec/reader.rb', line 42 def read(type = nil) Dir.chdir(pwd) do spec = Gem::Specification.load(self.spec_file.to_s) type ? Decorator.new(spec).to(type) : spec end end |