SORU
15 EYLÜL 2013, Pazar


Do anahtar Ruby başarısız nedir?

Ruby öğrenme ve fail anahtar kelime ile karşılaştı duyuyorum. Bu ne anlama geliyor?

if password.length < 8
   fail "Password too short"
end
unless  username
   fail "No user name set"
end

CEVAP
15 EYLÜL 2013, Pazar


Yakut, fail raise ile eş anlamlıdır. fail anahtar kelime sınıf Object ile birlikte Kernel modülün bir yöntemdir. fail yöntemi raise anahtar kelime gibi bir çalıştırma hatası yükseltir.

fail üçüncü yöntem aşırı vardır:

  • fail: RuntimeError bir hata iletisi olmadan yükseltir.

  • fail(string): hata iletisi olarak bağımsız değişken: dizesiyle RuntimeError bir yükseltir

    fail "Failed to open file"
  • fail(exception [, string [, array]]): hata mesajı (ikinci argüman) ve geri arama bilgileri (üçüncü argüman) isteğe bağlı ile sınıf bir istisna exception (ilk argüman) yükseltir.

    Örnek: eğer kötü bir argüman verilirse başarısız olan bir fonksiyon tanımlamak Varsayalım. Daha iyi ArgumentError RuntimeError: bir yükseltmektir

    fail ArgumentError, "Illegal String"

    Başka bir Örnek: rescue blok içindeki trace erişebilirsiniz: fail yöntemi backtrace bütün iletebilirsiniz

    fail ArgumentError, "Illegal String", caller

    caller form file:line: in 'method' dizeleri bir dizi olarak geri iz veren Çekirdek bir yöntemdir.

Hiçbir bağımsız değişken özel durum yükseltir $! ya tutarsa bir RuntimeError eğer $! olur nil. Tek bir Dize argümanı ile, bir RuntimeError yükseltir bir ileti dize ile. Aksi takdirde, ilk parametre olmalıdır Özel bir sınıf (ya da bir İstisna döndüren bir nesnenin adı özel durum iletisi) gönderilen nesne. İsteğe bağlı ikinci parametre ileti dışında, üçüncü ile ilgili ayarlar parametre callback bilgi dizisidir. Özel durum yakalandı kurtarma fıkra başlayın...blok sonunda.

Kaynak: Ruby Documentation on the Kernel Module.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • fireflame65

    fireflame65

    27 Mart 2007
  • funbro1

    funbro1

    11 Aralık 2007
  • TheFlightsuit

    TheFlightsui

    22 HAZİRAN 2009