Class: Mkerl
- Inherits:
-
Object
- Object
- Mkerl
- Defined in:
- lib/mkerl.rb
Instance Attribute Summary collapse
-
#created_at ⇒ Object
readonly
Returns the value of attribute created_at.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#root_dir ⇒ Object
readonly
Returns the value of attribute root_dir.
-
#version ⇒ Object
readonly
Returns the value of attribute version.
Instance Method Summary collapse
- #add_appfile ⇒ Object
- #add_basic_files ⇒ Object
- #add_emakefile ⇒ Object
- #add_gitignore ⇒ Object
- #add_makefile ⇒ Object
-
#initialize(name, dir = Dir.pwd, version = 0.1) ⇒ Mkerl
constructor
Generate a perfectly clean erlang structure.
- #make_dirs ⇒ Object
- #run ⇒ Object
Constructor Details
#initialize(name, dir = Dir.pwd, version = 0.1) ⇒ Mkerl
Generate a perfectly clean erlang structure
6 7 8 9 10 11 |
# File 'lib/mkerl.rb', line 6 def initialize(name, dir=Dir.pwd, version=0.1) @name = name @root_dir = dir @version = version @created_at = Time.now end |
Instance Attribute Details
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
4 5 6 |
# File 'lib/mkerl.rb', line 4 def created_at @created_at end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
4 5 6 |
# File 'lib/mkerl.rb', line 4 def name @name end |
#root_dir ⇒ Object (readonly)
Returns the value of attribute root_dir.
4 5 6 |
# File 'lib/mkerl.rb', line 4 def root_dir @root_dir end |
#version ⇒ Object (readonly)
Returns the value of attribute version.
4 5 6 |
# File 'lib/mkerl.rb', line 4 def version @version end |
Instance Method Details
#add_appfile ⇒ Object
45 46 47 |
# File 'lib/mkerl.rb', line 45 def add_appfile write_template_to("app", File.join("ebin", "#{name}.app")) end |
#add_basic_files ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/mkerl.rb', line 53 def add_basic_files write_template_to("basic_file.erl", File.join("src", "#{name}.erl")) write_template_to("start.sh", "start.sh", :chmod => 0755) write_template_to("README.markdown") write_template_to("make_boot.erl", File.join("src", "make_boot.erl")) write_template_to("reloader.erl", File.join("src", "reloader.erl")) write_template_to("supervisor.erl", File.join("src", "#{name}_sup.erl")) write_template_to("the_app.erl", File.join("src", "#{name}_app.erl")) write_template_to("test_suite.erl", File.join("test", "src", "test_suite.erl")) write_template_to("basic_test.erl", File.join("test", "src", "#{name}_test.erl")) end |
#add_emakefile ⇒ Object
37 38 39 |
# File 'lib/mkerl.rb', line 37 def add_emakefile write_template_to("Emakefile") end |
#add_gitignore ⇒ Object
49 50 51 |
# File 'lib/mkerl.rb', line 49 def add_gitignore write_template_to("gitignore", ".gitignore") end |
#add_makefile ⇒ Object
41 42 43 |
# File 'lib/mkerl.rb', line 41 def add_makefile write_template_to("Makefile") end |
#make_dirs ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/mkerl.rb', line 22 def make_dirs FileUtils.mkdir_p(root_dir) %w(src test include).each do |dir| FileUtils.mkdir_p(File.join(root_dir, dir), :mode => 0755) end # Test dirs %w(src).each do |dir| FileUtils.mkdir_p(File.join(root_dir, "test", dir), :mode => 0755) end %w(ebin deps test/ebin test/fixtures).each do |dir| FileUtils.mkdir_p(File.join(root_dir, dir), :mode => 0755) FileUtils.touch(File.join(root_dir, dir, "empty")) end end |
#run ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/mkerl.rb', line 13 def run make_dirs add_emakefile add_makefile add_appfile add_gitignore add_basic_files end |