Referință rapidă

Fișă de referință pentru funcționalitățile Ruby 2.1

Ghid istoric de referință pentru caracteristicile cheie din Ruby 2.1: argumente obligatorii cu cuvinte cheie, returnarea de simboluri de către def.

· Publicat

Ruby 2.1 a introdus îmbunătățiri sintactice majore în limbaj, inclusiv argumente de cuvinte cheie obligatorii și returnarea de simboluri de către def.

Argumente de cuvinte cheie obligatorii

Argumentele cu cuvinte cheie fără o valoare implicită devin strict obligatorii:

# length este obligatoriu; char are valoarea implicită '0'
def pad(number, length:, char: "0")
  number.to_s.rjust(length, char)
end

pad(42, length: 6) # => "000042"
pad(42)            # ArgumentError: missing keyword: :length

Definițiile de metode returnează simboluri

În Ruby 2.1+, def returnează numele metodei ca Symbol, permițând modificatori inline:

class User
  # Declarare private în linie
  private def secret_token
    "secret"
  end

  # Înlănțuire cu decoratori de module
  memoize def expensive_computation
    sleep 2
    42
  end
end

Îmbunătățiri numerice și literale

# Sufix pentru literali raționali 'r'
2/3r # => (2/3)

# Sufix pentru numere complexe 'i'
3 + 4i # => (3+4i)

# Optimizarea înghețării șirurilor: 'freeze'
"constant_string".freeze

Referințe

Subiecte conexe