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
.
해결책
Reek은 동일한 클래스의 두 가지 속성을 추가하기 때문에 계산은 실제로 String
. 문자열 길이를 추가 할 때 이것은 물론 말도 안되지만, 당신의 경우 코드는 ~할 수 있다 사용하여 단순화하십시오 $&
(완전한 일치하는 문자열) :
input_text[$&.size..-1]
제휴하지 않습니다 StackOverflow