Class: Italian::Ruby::Traduttore::Stringa

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(contenuto, posizione_iniziale) ⇒ Stringa

Returns a new instance of Stringa.



18
19
20
21
22
23
# File 'lib/italian/ruby/traduttore/stringa.rb', line 18

def initialize(contenuto, posizione_iniziale)
  @contenuto          = contenuto
  @posizione_iniziale = posizione_iniziale

  determina_tipo
end

Instance Attribute Details

#posizione_finaleObject

Returns the value of attribute posizione_finale.



16
17
18
# File 'lib/italian/ruby/traduttore/stringa.rb', line 16

def posizione_finale
  @posizione_finale
end

#posizione_inizialeObject

Returns the value of attribute posizione_iniziale.



15
16
17
# File 'lib/italian/ruby/traduttore/stringa.rb', line 15

def posizione_iniziale
  @posizione_iniziale
end

Instance Method Details

#ricerca_chiusuraObject

Ricerca la posizione del carattere di chiusura della stringa.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/italian/ruby/traduttore/stringa.rb', line 27

def ricerca_chiusura
  case @tipo
  when :doppio_apice
    @posizione_finale = @contenuto.index /"/,   @posizione_iniziale + 1
  when :singolo_apice
    @posizione_finale = @contenuto.index /'/,   @posizione_iniziale + 1
  when :percentuale_graffa
    @posizione_finale = @contenuto.index /\}/,  posizione_ultima_interpolazione
  end

  raise Italian::Ruby::Errori::StringaNonTerminata,
    "la stringa iniziata alla posizione #{@posizione_iniziale} non รจ terminata" if
    @posizione_finale.nil?
end