¿Por qué se quejan acerca de Eclipse olor “Característica envidia” en mi código? [cerrado]

StackOverflow https://stackoverflow.com/questions/1178185

  •  19-09-2019
  •  | 
  •  

Pregunta

Eclipse (RedRails) se quejan de " envidia Característica "en el código siguiente:

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

Mi entendimiento es que seguro ignorar esta advertencia. Pero estoy vagando por qué se genera esta advertencia. No puedo entender cómo puedo extraer método para $1.size y $1.

¿Fue útil?

Solución

Hediondo le está diciendo que, debido a que está agregando dos propiedades de la misma clase, el cálculo en realidad debería pertenecer en String. Al añadir longitudes de cuerda esto no tiene sentido, por supuesto, pero en su caso el código puede simplificarse mediante el uso de $& (la cadena coincidente completa):

input_text[$&.size..-1]
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top