Class: Croupier::CLI::Application
- Inherits:
-
Object
- Object
- Croupier::CLI::Application
- Defined in:
- lib/croupier/cli/application.rb
Overview
Croupier main command line interface application object.
When invoking croupier
from the command line, a Croupier::CLI::Application object is created and run.
Instance Attribute Summary collapse
-
#distribution_list ⇒ Object
Returns the value of attribute distribution_list.
-
#distributions_options ⇒ Object
Returns the value of attribute distributions_options.
Instance Method Summary collapse
-
#initialize ⇒ Application
constructor
Initialize a Croupier::CLI::Application object.
-
#run ⇒ Object
Run the Croupier application.
Constructor Details
#initialize ⇒ Application
Initialize a Croupier::CLI::Application object. It Checks and loads the available distributions.
14 15 16 17 18 19 20 |
# File 'lib/croupier/cli/application.rb', line 14 def initialize @distribution_list, @distributions_options = {}, {} ::Croupier::Distributions.all.each do |d| @distribution_list[d.cli_name] = d @distributions_options[d.cli_name] = d. end end |
Instance Attribute Details
#distribution_list ⇒ Object
Returns the value of attribute distribution_list.
10 11 12 |
# File 'lib/croupier/cli/application.rb', line 10 def distribution_list @distribution_list end |
#distributions_options ⇒ Object
Returns the value of attribute distributions_options.
10 11 12 |
# File 'lib/croupier/cli/application.rb', line 10 def @distributions_options end |
Instance Method Details
#run ⇒ Object
Run the Croupier application. The run method performs the following steps:
-
Parses the application options.
-
Identifies the probability distribution, sample size and options to use.
-
Asks the actual distribution to generate the numbers, and outputs them.
27 28 29 30 31 |
# File 'lib/croupier/cli/application.rb', line 27 def run Croupier.trap_interrupt distribution, sample_size, params = distribution.new(params).generate_sample(sample_size).each{|n| Croupier. n} end |