Module: Actor::Destructure
- Defined in:
- lib/actor/destructure.rb
Constant Summary collapse
- Error =
Class.new StandardError
Class Method Summary collapse
Class Method Details
.call(primary_return_value, include = nil, **values) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/actor/destructure.rb', line 3 def self.call primary_return_value, include=nil, **values include = Array(include) if include.empty? primary_return_value else return_values = include.map do |return_value_name| begin values.fetch return_value_name rescue KeyError raise Error, "Invalid return value to include `#{return_value_name.inspect}'" end end return primary_return_value, *return_values end end |