E0308E0308 — Tipe Tidak Cocok
Tipe yang diharapkan tidak cocok dengan tipe aktual yang diberikan.
Jelajahi semua 80 kode error Error Kompiler Rust dengan penyebab, perbaikan, dan contoh.
E0308Tipe yang diharapkan tidak cocok dengan tipe aktual yang diberikan.
E0382Sebuah nilai digunakan setelah dipindahkan ke variabel atau fungsi lain.
E0502Sebuah nilai tidak dapat dipinjam secara mutable selama peminjaman immutable masih aktif.
E0597Sebuah referensi berumur lebih panjang dari data yang ditunjuknya.
E0277Sebuah tipe tidak mengimplementasikan trait yang diperlukan.
E0599Metode tersebut tidak ada pada tipe yang diberikan, atau trait yang diperlukan tidak ada dalam cakupan.
E0425Sebuah identifier digunakan tetapi tidak didefinisikan dalam cakupan saat ini.
E0433Jalur modul yang digunakan dalam pernyataan use atau jalur tipe tidak dapat di-resolve.
E0106Sebuah referensi dalam tanda tangan fungsi atau struct tidak memiliki parameter lifetime.
E0015Sebuah fungsi non-const dipanggil dalam konteks ekspresi konstanta.
E0658Sebuah fitur yang belum distabilkan di Rust digunakan tanpa feature gate.
E0609Struct atau union tidak memiliki field dengan nama yang diberikan.
E0614Operator dereference (*) digunakan pada tipe yang tidak mengimplementasikan Deref.
E0499Sebuah nilai dipinjam secara mutable lebih dari sekali pada waktu yang bersamaan.
E0503Sebuah nilai tidak dapat digunakan selama dipinjam secara mutable oleh variabel lain.
E0505Sebuah nilai dipindahkan sementara masih dipinjam oleh referensi.
E0507Anda mencoba memindahkan nilai keluar dari referensi, yang akan membuat referensi tersebut menjadi dangling.
E0515Sebuah fungsi mencoba mengembalikan referensi ke nilai yang dibuat di dalam fungsi tersebut.
E0432Modul atau item yang direferensikan dalam pernyataan use tidak dapat ditemukan.
E0412Nama tipe digunakan tetapi tidak didefinisikan atau diimpor dalam cakupan saat ini.
E0423Nama tipe digunakan di tempat yang membutuhkan nilai.
E0424Kata kunci self digunakan di luar konteks metode atau fungsi terkait.
E0369Operator biner digunakan dengan tipe yang tidak mendukungnya.
E0384Sebuah variabel sedang di-reassign tetapi tidak dideklarasikan sebagai mutable.
E0061Sebuah fungsi dipanggil dengan jumlah argumen yang salah.
E0063Sebuah struct sedang dikonstruksi tanpa semua field yang diperlukan.
E0107Tipe generik atau fungsi digunakan dengan jumlah parameter tipe yang salah.
E0117Anda mengimplementasikan trait asing untuk tipe asing, melanggar aturan orphan.
E0119Dua atau lebih implementasi trait yang sama ada untuk tipe yang sama.
E0133Fungsi atau operasi unsafe digunakan di luar blok unsafe.
E0152Item bahasa (#[lang = ...]) didefinisikan lebih dari satu kali.
E0200Trait unsafe harus diimplementasikan dengan blok unsafe impl.
E0252Dua impor membawa nama yang sama ke dalam cakupan.
E0255Definisi lokal konflik dengan nama yang diimpor.
E0271Tipe terkait dalam implementasi trait tidak cocok dengan tipe yang diharapkan.
E0282Rust tidak dapat menyimpulkan tipe sebuah nilai dan memerlukan anotasi eksplisit.
E0283Beberapa implementasi trait dapat diterapkan, dan Rust tidak dapat menentukan mana yang digunakan.
E0310Parameter tipe generik tidak memenuhi bound lifetime yang diperlukan.
E0317Ekspresi if yang digunakan sebagai nilai tidak memiliki cabang else.
E0373Sebuah closure menangkap referensi ke variabel yang mungkin tidak berumur cukup panjang.
E0392Parameter tipe generik atau lifetime dideklarasikan tetapi tidak digunakan dalam struct atau enum.
E0404Sebuah tipe digunakan di mana sebuah trait yang diharapkan.
E0405Nama trait digunakan tetapi tidak didefinisikan atau diimpor dalam scope saat ini.
E0428Sebuah item dengan nama yang sama didefinisikan lebih dari sekali dalam scope yang sama.
E0463Crate yang ditentukan tidak dapat ditemukan oleh kompiler.
E0520Spesialisasi implementasi trait memerlukan fitur kompiler nightly.
E0596Anda mencoba meminjam nilai secara mutable yang tidak dideklarasikan sebagai mutable.
E0600Operator unary diterapkan ke tipe yang tidak mendukungnya.
E0601Binary crate tidak memiliki titik masuk fungsi main.
E0603Anda mencoba mengakses item private dari luar modulnya.
E0621Parameter fungsi memerlukan anotasi lifetime eksplisit untuk memenuhi borrow checker.
E0308Arm match yang berbeda mengembalikan tipe yang tidak kompatibel.
E0716Referensi dipegang ke nilai sementara yang langsung dijatuhkan.
E0728Kata kunci .await digunakan dalam fungsi yang tidak dideklarasikan sebagai async.
panic-unwrapProgram panik karena unwrap() dipanggil pada nilai None atau Err.
panic-index-out-of-boundsProgram panik karena indeks berada di luar rentang yang valid untuk sebuah koleksi.
panic-integer-overflowProgram panik karena operasi aritmatika menyebabkan integer overflow dalam mode debug.
panic-stack-overflowProgram panik akibat penggunaan stack yang berlebihan, biasanya dari rekursi yang dalam.
clippy::needless_returnKata kunci return digunakan secara tidak perlu di akhir fungsi.
clippy::let_and_returnSebuah variabel dideklarasikan dan langsung dikembalikan pada baris berikutnya.
clippy::unused_importsItem yang diimpor tidak digunakan di mana pun dalam file.
clippy::clone_on_copyMetode clone() dipanggil pada tipe yang mengimplementasikan Copy.
clippy::unwrap_usedMetode unwrap() digunakan, yang dapat menyebabkan panic saat runtime.
dead_codeSebuah fungsi, struct, varian enum, atau konstanta didefinisikan tetapi tidak pernah digunakan.
unused_variablesSebuah variabel dideklarasikan tetapi tidak pernah digunakan dalam kode.
unused_mutSebuah variabel dideklarasikan sebagai mutable tetapi tidak pernah benar-benar dimutasi.
E0046Tidak semua method yang diwajibkan oleh suatu trait diimplementasikan.
E0053Tanda tangan method dalam blok impl tidak cocok dengan tanda tangan method pada trait.
E0277Tipe yang tidak mengimplementasikan Send digunakan dalam konteks yang memerlukan keamanan thread.
E0277Tipe dengan ukuran dinamis (DST) digunakan di mana tipe Sized diperlukan.
E0277Suatu tipe digunakan dalam loop for atau konteks iterator tetapi tidak mengimplementasikan Iterator.
E0308Closure mengembalikan tipe yang berbeda dari yang diharapkan oleh konteksnya.
E0562Sintaks impl Trait digunakan di posisi yang tidak diizinkan.
E0308Fungsi mengembalikan Result dengan tipe Ok atau Err yang salah.
E0277Suatu tipe digunakan sebagai callable tetapi tidak mengimplementasikan Fn, FnMut, atau FnOnce.
panic-divide-by-zeroProgram panik karena pembagian bilangan bulat dengan nol.
panic-slice-index-out-of-rangeProgram panik karena rentang slice berada di luar batas.
clippy::map_unwrap_orPenggunaan .map().unwrap_or() dapat diganti dengan .map_or().
clippy::single_matchEkspresi match dengan hanya satu arm bermakna dapat disederhanakan menjadi if let.
clippy::redundant_closureClosure yang hanya memanggil sebuah fungsi dapat diganti langsung dengan fungsi tersebut.