module Templater::Manifold
Public Instance Methods
Add a generator for internal use to this manifold.
Parameters¶ ↑
- name<Symbol>
-
The name given to this generator in the manifold
- generator<Templater::Generator>
-
The generator class
# File lib/templater/manifold.rb, line 47 def add_private(name, generator) private_generators[name.to_sym] = generator generator.manifold = self end
Add a generator to this manifold
Parameters¶ ↑
- name<Symbol>
-
The name given to this generator in the manifold
- generator<Templater::Generator>
-
The generator class
# File lib/templater/manifold.rb, line 35 def add_public(name, generator) public_generators[name.to_sym] = generator generator.manifold = self end
If the argument is omitted, simply returns the description for this manifold, otherwise sets the description to the passed string.
Parameters¶ ↑
- text<String>
-
A description
Returns¶ ↑
- String
-
The description for this manifold
# File lib/templater/manifold.rb, line 91 def desc(text = nil) @text = text if text return @text.realign_indentation end
Finds the class of a generator, given its name in the manifold.
Parameters¶ ↑
- name<Symbol>
-
The name of the generator to find
Returns¶ ↑
- Templater::Generator
-
The found generator class
# File lib/templater/manifold.rb, line 68 def generator(name) generators[name.to_sym] end
Lists all private generators, these are generators that are meant to be used only internally and should not be invoked directly (although the interface may choose to do so)
Returns¶ ↑
- Array
-
A list of generators
# File lib/templater/manifold.rb, line 26 def private_generators @private_generators ||= {} end
A Shortcut method for invoking the command line interface provided with Templater.
Parameters¶ ↑
- destination_root<String>
-
Where the generated files should be put, this would usually be Dir.pwd
- name<String>
-
The name of the executable running this generator (such as 'merb-gen')
- version<String>
-
The version number of the executable.
- args
> An array of arguments to pass into the generator. This would usually be ARGV
# File lib/templater/manifold.rb, line 79 def run_cli(destination_root, name, version, args) Templater::CLI::Manifold.run(destination_root, self, name, version, args) end