Module: RSpec::Support::RubyFeatures Private

Defined in:
lib/rspec/support/ruby_features.rb

Overview

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Provides query methods for ruby features that differ among implementations.

API:

  • private

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.caller_locations_supported?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

API:

  • private



52
53
54
# File 'lib/rspec/support/ruby_features.rb', line 52

def caller_locations_supported?
  respond_to?(:caller_locations, true)
end

.module_prepends_supported?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

API:

  • private



111
112
113
# File 'lib/rspec/support/ruby_features.rb', line 111

def module_prepends_supported?
  Module.method_defined?(:prepend) || Module.private_method_defined?(:prepend)
end

.optional_and_splat_args_supported?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

API:

  • private



48
49
50
# File 'lib/rspec/support/ruby_features.rb', line 48

def optional_and_splat_args_supported?
  Method.method_defined?(:parameters)
end

Instance Method Details

#kw_args_supported?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

API:

  • private



57
58
59
# File 'lib/rspec/support/ruby_features.rb', line 57

def kw_args_supported?
  RUBY_VERSION >= '2.0.0'
end

#required_kw_args_supported?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

API:

  • private



61
62
63
# File 'lib/rspec/support/ruby_features.rb', line 61

def required_kw_args_supported?
  RUBY_VERSION >= '2.1.0'
end

#supports_rebinding_module_methods?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

API:

  • private



65
66
67
# File 'lib/rspec/support/ruby_features.rb', line 65

def supports_rebinding_module_methods?
  RUBY_VERSION.to_i >= 2
end