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