La differenza è che:
Date.today + 1
è una somma di due valori numerici e
Date.today +1
è una chiamata al metodo today
con il parametro sg
(giorno di riforma del calendario) con il valore +1
Il modo migliore per esaminare questo è quello di eseguire il patch di scimmia sul metodo originale con l'output di debug in cluso. Vedere questo script come ad esempio:
require 'date'
class Date
def self.today(sg=ITALY)
puts "ITALY default("+sg.to_s+")" if sg==ITALY
puts sg unless sg==ITALY
jd = civil_to_jd(*(Time.now.to_a[3..5].reverse << sg))
new0(jd_to_ajd(jd, 0, 0), 0, sg)
end
end
puts "- Addition:"
Date.today + 1
puts "- Parameter:"
Date.today +1
Questo stamperà il seguente output della console:
- Addition:
ITALY default(2299161)
- Parameter:
1
Questo è interessante :-) –