class RSpec::Matchers::DSL::Matcher

def initialize(name, declarations, matcher_execution_context, *expected, &block_arg)

Other tags:
    Api: - private
def initialize(name, declarations, matcher_execution_context, *expected, &block_arg)
  @name     = name
  @actual   = nil
  @expected_as_array = expected
  @matcher_execution_context = matcher_execution_context
  @chained_method_clauses = []
  @block_arg = block_arg
  klass =
    class << self
      # See `Macros#define_user_override` above, for an explanation.
      include(@user_method_defs = Module.new)
      self
    end
  RSpec::Support::WithKeywordsWhenNeeded.class_exec(klass, *expected, &declarations)
end