# File lib/puppet/application.rb, line 130 130: def option(*options, &block) 131: long = options.find { |opt| opt =~ /^--/ }.gsub(/^--(?:\[no-\])?([^ =]+).*$/, '\1' ).gsub('-','_') 132: fname = "handle_#{long}" 133: if (block_given?) 134: meta_def(symbolize(fname), &block) 135: else 136: meta_def(symbolize(fname)) do |value| 137: self.options["#{long}".to_sym] = value 138: end 139: end 140: @opt_parser.on(*options) do |value| 141: self.send(symbolize(fname), value) 142: end 143: end