class RuboCop::Cop::Style::EnvHome
Checks for consistent usage of ‘ENV`. If `nil` is used as the second argument of `ENV.fetch`, it is treated as a bad case like `ENV[]`.
@safety
The cop is unsafe because the result when `nil` is assigned to `ENV['HOME']` changes: [source,ruby] ---- ENV['HOME'] = nil ENV['HOME'] # => nil Dir.home # => '/home/foo' ----
@example
# bad ENV['HOME'] ENV.fetch('HOME', nil) # good Dir.home # good ENV.fetch('HOME', default)
Constants
- MSG
- RESTRICT_ON_SEND
Public Instance Methods
on_send(node)
click to toggle source
# File lib/rubocop/cop/style/env_home.rb, line 45 def on_send(node) return unless env_home?(node) return if node.arguments.count == 2 && !node.arguments[1].nil_type? add_offense(node) do |corrector| corrector.replace(node, 'Dir.home') end end