lib/claide/argv.rb
def delete_entry(requested_type, requested_key, default, delete_all = false)
      pred = proc do |type, (key, _value)|
        requested_key == key && requested_type == type
      end
      entry = entries.reverse_each.find(&pred)
      delete_all ? entries.delete_if(&pred) : entries.delete(entry)

      entry.nil? ? default : entry.last.last
    end
def delete_entry(requested_type, requested_key, default, delete_all = false)
      pred = proc do |type, (key, _value)|
        requested_key == key && requested_type == type
      end
      entry = entries.reverse_each.find(&pred)
      delete_all ? entries.delete_if(&pred) : entries.delete(entry)

      entry.nil? ? default : entry.last.last
    end
def delete_entry ( requested_type , requested_key , default , delete_all = false ) pred = proc do | type , ( key , _value ) | requested_key == key && requested_type == type end entry = entries . reverse_each . find ( pred ) delete_all ? entries . delete_if ( pred ) : entries . delete ( entry ) entry . nil? ? default : entry . last . last end
@return [Bool, String, Nil] Removes an entry from the entries list and
         returns its value or the default value if the entry was not
         present.

 @param  [Symbol] requested_type
         The type of the entry.

 @param  [String] requested_key
         The key of the entry.

 @param  [Bool, String, Nil] default
         The value which should be returned if the entry is not present.

 @param  [Bool] delete_all
         Whether all values matching `requested_type` and `requested_key`
         should be deleted.
@return [ Bool String Nil ] Removes an entry from the entries list and returns its value or the default value if the entry was not present .