lib/railroad/options_struct.rb in railroad-0.3.4 vs lib/railroad/options_struct.rb in railroad-0.4.0
- old
+ new
@@ -12,19 +12,22 @@
require 'optparse'
def initialize
init_options = { :all => false,
:brief => false,
+ :exclude => [],
:inheritance => false,
:join => false,
:label => false,
:modules => false,
:hide_types => false,
:hide_public => false,
:hide_protected => false,
:hide_private => false,
+ :transitive => false,
:verbose => false,
+ # :xmi => false,
:command => '' }
super(init_options)
end # initialize
def parse(args)
@@ -34,10 +37,14 @@
opts.separator "Common options:"
opts.on("-b", "--brief", "Generate compact diagram",
" (no attributes nor methods)") do |b|
self.brief = b
end
+ opts.on("-e", "--exclude file1[,fileN]", Array, "Exclude files",
+ " (relative path to 'app/models/' or", " 'app/controllers/')") do |list|
+ self.exclude = list
+ end
opts.on("-i", "--inheritance", "Include inheritance relations") do |i|
self.inheritance = i
end
opts.on("-l", "--label", "Add a label with diagram information",
" (type, date, migration, version)") do |l|
@@ -48,10 +55,15 @@
end
opts.on("-v", "--verbose", "Enable verbose output",
" (produce messages to STDOUT)") do |v|
self.verbose = v
end
+ # TODO: Add XMI output.
+ # opts.on("-x", "--xmi", "Produce XMI instead of DOT",
+ # " (for UML tools)") do |x|
+ # self.xmi = x
+ # end
opts.separator ""
opts.separator "Models diagram options:"
opts.on("-a", "--all", "Include all models",
" (not only ActiveRecord::Base derived)") do |a|
self.all = a
@@ -63,10 +75,14 @@
self.join = j
end
opts.on("-m", "--modules", "Include modules") do |m|
self.modules = m
end
+ opts.on("-t", "--transitive", "Include transitive associations",
+ "(through inheritance)") do |t|
+ self.transitive = t
+ end
opts.separator ""
opts.separator "Controllers diagram options:"
opts.on("--hide-public", "Hide public methods") do |h|
self.hide_public = h
end
@@ -121,11 +137,9 @@
option_error "Invalid option"
rescue OptionParser::InvalidArgument
option_error "Invalid argument"
rescue OptionParser::MissingArgument
option_error "Missing argument"
- rescue
- option_error "Unknown error"
end
end # parse
private