lib/youtube-dl/options.rb
def method_missing(method, *args, &_block)
      remove_banned
      if method.to_s.include? '='
        method = method.to_s.tr('=', '').to_sym
        return nil if banned? method
        @store[method] = args.first
      else
        return nil if banned? method
        @store[method]
      end
    end
def method_missing(method, *args, &_block)
      remove_banned
      if method.to_s.include? '='
        method = method.to_s.tr('=', '').to_sym
        return nil if banned? method
        @store[method] = args.first
      else
        return nil if banned? method
        @store[method]
      end
    end
Option getting and setting using ghost methods

 @param method [Symbol] method name
 @param args [Array] list of arguments passed
 @param block [Proc] implicit block given
 @return [Object] the value of method in the options store