Sha256: d85d900a6536ce99f1093f41d9a96cd3fed55a35958fd4f96dccbd8e20f8622f
Contents?: true
Size: 1.2 KB
Versions: 1
Compression:
Stored size: 1.2 KB
Contents
# frozen_string_literal: true module RuboCop module Cop module Style # This cop checks for methods invoked via the :: operator instead # of the . operator (like FileUtils::rmdir instead of FileUtils.rmdir). # # @example # # bad # Timeout::timeout(500) { do_something } # FileUtils::rmdir(dir) # Marshal::dump(obj) # # # good # Timeout.timeout(500) { do_something } # FileUtils.rmdir(dir) # Marshal.dump(obj) # class ColonMethodCall < Cop MSG = 'Do not use `::` for method calls.' def_node_matcher :java_type_node?, <<~PATTERN (send (const nil? :Java) _) PATTERN def self.autocorrect_incompatible_with [RedundantSelf] end def on_send(node) return unless node.receiver && node.double_colon? return if node.camel_case_method? # ignore Java interop code like Java::int return if java_type_node?(node) add_offense(node, location: :dot) end def autocorrect(node) ->(corrector) { corrector.replace(node.loc.dot, '.') } end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rubocop-0.89.0 | lib/rubocop/cop/style/colon_method_call.rb |