Method: Code::Object::Dictionary#code_delete_unless
- Defined in:
- lib/code/object/dictionary.rb
#code_delete_unless(argument, **globals) ⇒ Object
271 272 273 274 275 276 277 278 279 280 281 282 283 284 |
# File 'lib/code/object/dictionary.rb', line 271 def code_delete_unless(argument, **globals) if argument.is_a?(Class) raw.delete_if { |_, value| !value.is_a?(argument.raw) } else raw.delete_if.with_index do |(key, value), index| argument.call( arguments: List.new([key, value, self, Integer.new(index)]), **globals ).falsy? end end self end |