Class: ReverseParameters
- Inherits:
-
Object
- Object
- ReverseParameters
- Defined in:
- lib/reverse_parameters.rb,
lib/reverse_parameters/version.rb
Defined Under Namespace
Classes: Arguments, BaseCollection, Parameters
Constant Summary collapse
- VERSION =
"0.4.0"
Instance Method Summary collapse
-
#arguments ⇒ ReverseParameters::Arguments
Method arguments are the real values passed to (and received by) the function.
-
#initialize(input, blocks_as_values: false) ⇒ ReverseParameters
constructor
def my_method(&block) end.
-
#parameters ⇒ ReverseParameters::Parameters
Method parameters are the names listed in the function definition.
Constructor Details
#initialize(input, blocks_as_values: false) ⇒ ReverseParameters
def my_method(&block) end
ReverseParameters.new(method(:my_method), blocks_as_values: true).arguments.to_s
#=> "block"
# ReverseParameters.new(method(:my_method)).to_s
#=> "&block"
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/reverse_parameters.rb', line 16 def initialize(input, blocks_as_values: false) @blocks_as_values = blocks_as_values if input.respond_to?(:to_proc) @params = input.to_proc.parameters elsif input.respond_to?(:to_ary) @params = input.to_ary else raise ArgumentError.new("Input must be an Array of parameters or a Proc object.") end end |
Instance Method Details
#arguments ⇒ ReverseParameters::Arguments
Method arguments are the real values passed to (and received by) the function.
35 36 37 |
# File 'lib/reverse_parameters.rb', line 35 def arguments Arguments.new(params, blocks_as_values: blocks_as_values) end |
#parameters ⇒ ReverseParameters::Parameters
Method parameters are the names listed in the function definition.
29 30 31 |
# File 'lib/reverse_parameters.rb', line 29 def parameters Parameters.new(params) end |