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.
Class Method Summary collapse
- .caller_locations_supported? ⇒ Boolean private
- .module_prepends_supported? ⇒ Boolean private
- .module_refinement_supported? ⇒ Boolean private
- .optional_and_splat_args_supported? ⇒ Boolean private
Instance Method Summary collapse
- #kw_args_supported? ⇒ Boolean private
- #required_kw_args_supported? ⇒ Boolean private
- #ripper_supported? ⇒ Boolean private
- #supports_exception_cause? ⇒ Boolean private
- #supports_rebinding_module_methods? ⇒ Boolean private
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.
63 64 65 |
# File 'lib/rspec/support/ruby_features.rb', line 63 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.
157 158 159 |
# 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? ⇒ 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.
153 154 155 |
# 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? ⇒ 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.
59 60 61 |
# File 'lib/rspec/support/ruby_features.rb', line 59 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.
99 100 101 |
# File 'lib/rspec/support/ruby_features.rb', line 99 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.
103 104 105 |
# File 'lib/rspec/support/ruby_features.rb', line 103 def required_kw_args_supported? RUBY_VERSION >= '2.1.0' end |
#ripper_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.
89 90 91 |
# File 'lib/rspec/support/ruby_features.rb', line 89 def ripper_supported? true end |
#supports_exception_cause? ⇒ 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.
68 69 70 |
# File 'lib/rspec/support/ruby_features.rb', line 68 def supports_exception_cause? true 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.
107 108 109 |
# File 'lib/rspec/support/ruby_features.rb', line 107 def supports_rebinding_module_methods? RUBY_VERSION.to_i >= 2 end |