Ana içeriğe geç
NM-RFC-0007

Tipli fonksiyon sonuçları ve program hataları

Tasarım belgesi · Türkçe okuma metni

RFC'ler tasarım ve değişiklik kayıtlarıdır. Bir önerinin burada bulunması, özelliğin kullanıma hazır olduğu anlamına gelmez. Güncel dil desteğini incele

Özgün belgedeki durum: Çalışma zamanı deneysel

Bağlı özgün kaynak · SHA-256
d549c3cc10b1b87728de722a5325a1313fa1e79ed579ee2d61090ae3765707da

Okuma metni inceleme tarihi: 2026-10-02

Amaç ve kapsam

Programın kendi sonucunu, motorun başarıyla çalışmasından ayırır. Kullanıcının bilinçli olarak döndürdüğü bir hata, ayrıştırıcı veya simülatör arızasıyla aynı şey değildir.

Tasarımın ana kuralları

  • Giriş fonksiyonu sınırlı Result<T, Error> sözleşmesiyle değer veya sembolik hata döndürebilir.
  • ok(...) yükünün tipi bildirilmiş dönüş tipiyle uyuşmalıdır.
  • Motor başarısı ile program sonucu ayrı alanlarda raporlanır; bir program hatası motor arızası diye etiketlenmez.

Özgün belgeden örnek

Bu örnek özgün kaynakta yer alan tasarımı gösterir. Tek başına çalıştırılabilirlik veya kararlı destek iddiası değildir; gereken seçenekleri ve güncel sürümü kontrol edin.

nm
module typed_result;

fn main() -> Result<Int, Error> {
  let q = qreg[1];
  let measured: Bit = measure(q[0]);
  let encoded: Int = bit_to_int(measured);
  return ok(encoded);
}

Sınırlar ve sonuçların yorumu

  • Keyfî istisna sistemi, genel hata nesneleri ve denetlenmeyen dönüş yükleri kapsam dışıdır.
  • Klasik yardımcı fonksiyonların Result kurtarma kapsamı bu tarihsel giriş fonksiyonu dilimini otomatik genişletmez.

Durum ve uygulama sınırı

Kaynak belge çalışma zamanı deneysel sonuç sözleşmesini anlatır. Sonraki yardımcı fonksiyon eklemelerinin kapsamını NM-RFC-0035 ve ilgili rehberlerden kontrol edin.

Tablo 1
İnceleme konusuKontrol edilecek bilgi
Kaynak sürümüOkuma metnine bağlı SHA-256 özeti
Kullanım desteğiGüncel yetenek kaydı ve araç seçenekleri
Kanıt sınırıYukarıdaki model, boyut ve yorumlama sınırları