We were inconsistent on this one. I consider it particularly useful when a method starts with a `return` statement. In other cases, we probably shouldn't have a guard rule in the middle of a method in any case, but that's a different refactoring.
9 lines
310 B
Ruby
9 lines
310 B
Ruby
module Age
|
|
def self.in_years(dob, now = Date.current)
|
|
return nil if dob.blank?
|
|
|
|
# reference: http://stackoverflow.com/questions/819263/get-persons-age-in-ruby#comment21200772_819263
|
|
now.year - dob.year - (now.month > dob.month || (now.month == dob.month && now.day >= dob.day) ? 0 : 1)
|
|
end
|
|
end
|