{"record":{"id":"3ffc69b6406822b5","repo":"juspay/hyperswitch","slug":"at-least-one-ident-must-be-specified","errorCode":null,"errorMessage":"At least one ident must be specified","messagePattern":"At least one ident must be specified","errorType":"validation","errorClass":"syn::Error","httpStatus":null,"severity":"error","filePath":"crates/router_derive/src/macros/to_encryptable.rs","lineNumber":78,"sourceCode":"/// In the case of `Encryptable<Secret<String>>> this returns String\nfn get_inner_most_type(ty: SynType) -> syn::Result<Ident> {\n    fn get_inner_type_recursive(path: syn::TypePath) -> syn::Result<syn::TypePath> {\n        match get_inner_type(&path) {\n            Ok(inner_path) => get_inner_type_recursive(inner_path),\n            Err(_) => Ok(path),\n        }\n    }\n\n    match ty {\n        SynType::Path(path) => {\n            let inner_path = get_inner_type_recursive(path)?;\n            inner_path\n                .path\n                .segments\n                .last()\n                .map(|last_segment| last_segment.ident.to_owned())\n                .ok_or_else(|| {\n                    syn::Error::new(\n                        proc_macro2::Span::call_site(),\n                        \"At least one ident must be specified\",\n                    )\n                })\n        }\n        _ => Err(syn::Error::new(\n            proc_macro2::Span::call_site(),\n            \"Only path fields are supported\",\n        )),\n    }\n}\n\n/// This returns the field which implement #[encrypt] attribute\nfn get_encryptable_fields(fields: Punctuated<Field, Comma>) -> Vec<Field> {\n    fields\n        .into_iter()\n        .filter(|field| {\n            field","sourceCodeStart":60,"sourceCodeEnd":96,"githubUrl":"https://github.com/juspay/hyperswitch/blob/705a3219504c3cf9034e71d956455f8834ea4e64/crates/router_derive/src/macros/to_encryptable.rs#L60-L96","documentation":"Error \"At least one ident must be specified\" thrown in juspay/hyperswitch.","triggerScenarios":"Thrown at crates/router_derive/src/macros/to_encryptable.rs:78 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide at least one identifier in the to_encryptable macro invocation"],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"705a3219504c3cf9034e71d956455f8834ea4e64","analyzedAt":"2026-08-19T10:36:43.745Z","contentChangedAt":"2026-08-19T10:36:43.745Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}