module RSpec::Support::RubyFeatures

@api private

Provides query methods for ruby features that differ among implementations.

Public Instance Methods

caller_locations_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 63
def caller_locations_supported?
  respond_to?(:caller_locations, true)
end
foo() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 140
def foo; end
kw_args_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 99
def kw_args_supported?
  RUBY_VERSION >= '2.0.0'
end
module_prepends_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 157
def module_prepends_supported?
  Module.method_defined?(:prepend) || Module.private_method_defined?(:prepend)
end
module_refinement_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 153
def module_refinement_supported?
  Module.method_defined?(:refine) || Module.private_method_defined?(:refine)
end
optional_and_splat_args_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 59
def optional_and_splat_args_supported?
  Method.method_defined?(:parameters)
end
required_kw_args_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 103
def required_kw_args_supported?
  RUBY_VERSION >= '2.1.0'
end
ripper_supported?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 89
def ripper_supported?
  true
end
supports_exception_cause?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 68
def supports_exception_cause?
  true
end
supports_rebinding_module_methods?() click to toggle source
# File lib/rspec/support/ruby_features.rb, line 107
def supports_rebinding_module_methods?
  RUBY_VERSION.to_i >= 2
end