Class: Italian::Ruby::Traduttore::Linea

Inherits:
Object
  • Object
show all
Defined in:
lib/italian/ruby/traduttore/linea.rb

Instance Method Summary collapse

Constructor Details

#initialize(contenuto, indice, nome_archivio) ⇒ Linea

Returns a new instance of Linea.



26
27
28
29
30
31
32
33
34
# File 'lib/italian/ruby/traduttore/linea.rb', line 26

def initialize(contenuto, indice, nome_archivio)
  @contenuto      = contenuto
  @contenuto      = "#{contenuto}\n" if nome_archivio.nil?
  @indice         = indice
  @nome_archivio  = nome_archivio

  trova_posizione_primo_commento
  trova_posizioni_stringhe
end

Instance Method Details

#traduciObject

Traduce la linea in codice Ruby.



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/italian/ruby/traduttore/linea.rb', line 38

def traduci
  @pezzi_da_tradurre = []

  if @posizione_primo_commento != nil
    if @stringhe.none? or @posizione_primo_commento < @stringhe[0].posizione_iniziale
      dividi_usando_posizione_commento
    else
      dividi_usando_posizioni_stringhe
    end
  else
    if @stringhe.none?
      dividi_in_pezzo_unico
    else
      dividi_usando_posizioni_stringhe
    end
  end

  @pezzi_da_tradurre.map(&:traduci).join
end