Class: GGem::Gem

Inherits:
Object
  • Object
show all
Defined in:
lib/ggem/gem.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path, name) ⇒ Gem

Returns a new instance of Gem.

Raises:

  • (NoNameError)


10
11
12
13
# File 'lib/ggem/gem.rb', line 10

def initialize(path, name)
  raise NoNameError if name.to_s.empty?
  @root_path, self.name = path, name
end

Instance Attribute Details

#nameObject

Returns the value of attribute name.



8
9
10
# File 'lib/ggem/gem.rb', line 8

def name
  @name
end

#root_pathObject (readonly)

Returns the value of attribute root_path.



8
9
10
# File 'lib/ggem/gem.rb', line 8

def root_path
  @root_path
end

Instance Method Details

#module_nameObject



23
24
25
26
27
28
29
# File 'lib/ggem/gem.rb', line 23

def module_name
  transforms = {
    '_' => '',
    '-' => ''
  }
  @module_name ||= transform_name(transforms){ |part| part.capitalize }
end

#pathObject



20
# File 'lib/ggem/gem.rb', line 20

def path; File.join(@root_path, @name); end

#ruby_nameObject



31
32
33
# File 'lib/ggem/gem.rb', line 31

def ruby_name
  @ruby_name ||= transform_name{ |part| part.downcase }
end

#save!Object



15
16
17
18
# File 'lib/ggem/gem.rb', line 15

def save!
  Template.new(self).save
  self
end