{"id":59449,"library":"downcast","title":"Downcast","description":"Trait for downcasting trait objects back to their original types, enabling runtime type checking.","status":"active","version":"0.11.0","language":"rust","source_language":null,"source_url":"https://github.com/fkoep/downcast-rs","tags":["downcast","trait","type-erasure","runtime"],"install":[{"cmd":"# Cargo.toml\n[dependencies]\ndowncast = \"0.11.0\"","lang":"toml","label":"Cargo.toml"},{"cmd":"cargo add downcast","lang":"bash","label":"cargo add"}],"dependencies":[],"imports":[{"symbol":"Downcast","correct":"use downcast::Downcast;"}],"quickstart":{"code":"use downcast::Downcast;\n\ntrait MyTrait: Downcast {}\nimpl_downcast!(MyTrait);\n\nstruct MyStruct;\nimpl MyTrait for MyStruct {}\n\nfn main() {\n    let obj: Box<dyn MyTrait> = Box::new(MyStruct);\n    if let Some(concrete) = obj.downcast_ref::<MyStruct>() {\n        println!(\"Downcast succeeded\");\n    }\n}","lang":"rust","description":"Downcasts a trait object to a concrete type."},"warnings":[],"env_vars":null,"search_vec":"'back':7 'check':15 'downcast':1,4,16 'enabl':12 'erasur':20 'object':6 'origin':10 'runtim':13,21 'trait':2,5,17 'type':11,14,19 'type-erasur':18","created_at":"2026-06-16T17:03:52.477857+00:00","updated_at":"2026-06-16T17:03:52.477857+00:00","problems":[],"ecosystem":"crates","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/fkoep/downcast-rs","github":"https://github.com/fkoep/downcast-rs","docs":"https://docs.rs/downcast/","changelog":null,"pypi":null,"npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["utility"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-16","next_check":"2026-12-13","install_tag":null}}