なぜEclipseは私のコードでは、「機能の羨望」匂いに文句を言うのでしょうか? [閉まっている]
-
19-09-2019 - |
質問
のEclipse(RedRails)機能の羨望」文句を言うする 「次のコードでます:
if input_text =~ /^(---\s*\n.*?\n?)(---.*?)/m
content_text = input_text[($1.size + $2.size)..-1] # warning in $1
header = YAML.load($1)
@content = content_text.strip()
@title = header["title"]
end
私の理解では、私は安全にこの警告を無視するということです。この警告が生成された理由しかし、私は放浪しています。私は$1.size
と$1
する方法を抽出することができます方法を理解することはできません。
解決
臭いはあなたが同じクラスの2つのプロパティを追加しているので、計算は実際にString
に所属する、ことを語っています。文字列の長さを追加する場合、これは当然のナンセンスですが、あなたの場合、コードには、はの$&
(完全マッチした文字列)を使用することによって簡略化することができます:
input_text[$&.size..-1]
所属していません StackOverflow