Sha256: 4a10fdd929f42303b6db818a5357d9cc131ac02795c7c623ee4604f3c89d60f1
Contents?: true
Size: 873 Bytes
Versions: 9
Compression:
Stored size: 873 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) 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
9 entries across 9 versions & 1 rubygems