Class: SaasPulse::ArgParser
- Inherits:
-
Object
- Object
- SaasPulse::ArgParser
- Defined in:
- lib/saas_pulse/arg_parser.rb
Class Attribute Summary collapse
-
.named_args ⇒ Object
readonly
Returns the value of attribute named_args.
Class Method Summary collapse
Instance Method Summary collapse
Class Attribute Details
.named_args ⇒ Object (readonly)
Returns the value of attribute named_args.
6 7 8 |
# File 'lib/saas_pulse/arg_parser.rb', line 6 def named_args @named_args end |
Class Method Details
.parse(args) ⇒ Object
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/saas_pulse/arg_parser.rb', line 8 def parse(args) new.tap do |parser| args.each do |arg, val| param = registered_args[arg] raise InvalidParamError, "'#{arg}' does not map to a valid param" unless param parser[param] = val end end end |
Instance Method Details
#[](arg) ⇒ Object
51 52 53 |
# File 'lib/saas_pulse/arg_parser.rb', line 51 def [](arg) instance_variable_get :"@#{arg}" end |
#[]=(arg, val) ⇒ Object
55 56 57 |
# File 'lib/saas_pulse/arg_parser.rb', line 55 def []=(arg, val) instance_variable_set :"@#{arg}", val end |
#to_params ⇒ Object
45 46 47 48 49 |
# File 'lib/saas_pulse/arg_parser.rb', line 45 def to_params ArgParser.named_args.map do |arg| [arg, CGI.escape(self[arg].to_s)].join("=") end.join("&") end |