Sha256: e11b06bbf39a3b66a8870bd6e27db5f9135549d9ce1060954f59968dce96d07e
Contents?: true
Size: 889 Bytes
Versions: 4
Compression:
Stored size: 889 Bytes
Contents
# encoding: utf-8 module RuboCop module Cop module Style # This cop looks for uses of Perl-style regexp match # backreferences like $1, $2, etc. class PerlBackrefs < Cop MSG = 'Avoid the use of Perl-style backrefs.' def on_nth_ref(node) add_offense(node, :expression) end def autocorrect(node) @corrections << lambda do |corrector| backref, = *node parent_type = node.parent ? node.parent.type : nil if [:dstr, :xstr, :regexp].include?(parent_type) corrector.replace(node.loc.expression, "{Regexp.last_match(#{backref})}") else corrector.replace(node.loc.expression, "Regexp.last_match(#{backref})") end end end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems