Class: Avm::EacRubyBase1::Rubygems::Gemspec

Inherits:
Object
  • Object
show all
Defined in:
lib/avm/eac_ruby_base1/rubygems/gemspec.rb,
lib/avm/eac_ruby_base1/rubygems/gemspec/dependency.rb,
lib/avm/eac_ruby_base1/rubygems/gemspec/add_or_replace_gem_line.rb

Defined Under Namespace

Classes: AddOrReplaceGemLine, Dependency

Constant Summary collapse

DEPENDENCY_LINE_PARSER =
/s\.add([a-zA-Z0-9_]*)_dependency\s*'(\S+)'/
.to_parser { |m| [m[2], m[1]] }

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.from_file(path) ⇒ Object



16
17
18
# File 'lib/avm/eac_ruby_base1/rubygems/gemspec.rb', line 16

def from_file(path)
  new(path.read.each_line.map(&:rstrip))
end

Instance Method Details

#dependenciesArray<Avm::EacRubyBase1::Bundler::Gemfile::Dependency>



30
31
32
# File 'lib/avm/eac_ruby_base1/rubygems/gemspec.rb', line 30

def dependencies
  dependencies_hash.values
end

#dependency(gem_name) ⇒ Avm::EacRubyBase1::Bundler::Gemfile::Dependency

Parameters:

  • gem_name (String)

Returns:



25
26
27
# File 'lib/avm/eac_ruby_base1/rubygems/gemspec.rb', line 25

def dependency(gem_name)
  dependencies_hash.fetch(gem_name)
end

#to_textObject



38
39
40
# File 'lib/avm/eac_ruby_base1/rubygems/gemspec.rb', line 38

def to_text
  lines.map { |line| "#{line}\n" }.join
end

#write(path) ⇒ Object



34
35
36
# File 'lib/avm/eac_ruby_base1/rubygems/gemspec.rb', line 34

def write(path)
  path.to_pathname.write(to_text)
end