[{"data":1,"prerenderedAt":1136},["ShallowReactive",2],{"navigation":3,"\u002Fstructs\u002Flenient":335,"\u002Fstructs\u002Flenient-surround":1131},[4,27,73,95,121,135,305,331],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":26},"Getting started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,14,18,22],{"title":11,"path":12,"stem":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":15,"path":16,"stem":17},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation",{"title":19,"path":20,"stem":21},"Quick start","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F3.quick-start",{"title":23,"path":24,"stem":25},"MSRV","\u002Fgetting-started\u002Fmsrv","1.getting-started\u002F9.msrv",false,{"title":28,"icon":29,"path":30,"stem":31,"children":32,"page":26},"Schemas","i-lucide-shapes","\u002Fschemas","2.schemas",[33,37,41,45,49,53,57,61,65,69],{"title":34,"path":35,"stem":36},"Strings","\u002Fschemas\u002Fstrings","2.schemas\u002F1.strings",{"title":38,"path":39,"stem":40},"Custom rules","\u002Fschemas\u002Frules","2.schemas\u002F10.rules",{"title":42,"path":43,"stem":44},"Numbers","\u002Fschemas\u002Fnumbers","2.schemas\u002F2.numbers",{"title":46,"path":47,"stem":48},"Booleans, literals and enums","\u002Fschemas\u002Fprimitives","2.schemas\u002F3.primitives",{"title":50,"path":51,"stem":52},"Dates and times","\u002Fschemas\u002Fdates","2.schemas\u002F4.dates",{"title":54,"path":55,"stem":56},"Collections","\u002Fschemas\u002Fcollections","2.schemas\u002F5.collections",{"title":58,"path":59,"stem":60},"Dynamic objects","\u002Fschemas\u002Fobjects","2.schemas\u002F6.objects",{"title":62,"path":63,"stem":64},"Modifiers","\u002Fschemas\u002Fmodifiers","2.schemas\u002F7.modifiers",{"title":66,"path":67,"stem":68},"Combinators","\u002Fschemas\u002Fcombinators","2.schemas\u002F8.combinators",{"title":70,"path":71,"stem":72},"Other types","\u002Fschemas\u002Fspecial-types","2.schemas\u002F9.special-types",{"title":74,"icon":75,"path":76,"stem":77,"children":78,"page":26},"Structs","i-lucide-braces","\u002Fstructs","3.structs",[79,83,87,91],{"title":80,"path":81,"stem":82},"schema! macro","\u002Fstructs\u002Fschema-macro","3.structs\u002F1.schema-macro",{"title":84,"path":85,"stem":86},"#[derive(Validate)]","\u002Fstructs\u002Fderive","3.structs\u002F2.derive",{"title":88,"path":89,"stem":90},"Parse vs validate","\u002Fstructs\u002Fparse-vs-validate","3.structs\u002F3.parse-vs-validate",{"title":92,"path":93,"stem":94},"Lenient parsing","\u002Fstructs\u002Flenient","3.structs\u002F4.lenient",{"title":96,"icon":97,"path":98,"stem":99,"children":100,"page":26},"Errors","i-lucide-triangle-alert","\u002Ferrors","4.errors",[101,105,109,113,117],{"title":102,"path":103,"stem":104},"Error model","\u002Ferrors\u002Foverview","4.errors\u002F1.overview",{"title":106,"path":107,"stem":108},"Issue codes","\u002Ferrors\u002Fissue-codes","4.errors\u002F2.issue-codes",{"title":110,"path":111,"stem":112},"Formatting","\u002Ferrors\u002Fformatting","4.errors\u002F3.formatting",{"title":114,"path":115,"stem":116},"Custom messages","\u002Ferrors\u002Fcustom-messages","4.errors\u002F4.custom-messages",{"title":118,"path":119,"stem":120},"Translations","\u002Ferrors\u002Fi18n","4.errors\u002F5.i18n",{"title":122,"icon":123,"path":124,"stem":125,"children":126,"page":26},"OpenAPI","i-lucide-file-json","\u002Fopenapi","5.openapi",[127,131],{"title":128,"path":129,"stem":130},"JSON Schema and OpenAPI","\u002Fopenapi\u002Fjson-schema","5.openapi\u002F1.json-schema",{"title":132,"path":133,"stem":134},"Schema diff","\u002Fopenapi\u002Fdiff","5.openapi\u002F2.diff",{"title":136,"icon":137,"path":138,"stem":139,"children":140,"page":26},"Integrations","i-lucide-plug","\u002Fintegrations","6.integrations",[141,191,209,223,245,259,273,291],{"title":142,"icon":143,"path":144,"stem":145,"children":146,"page":26},"Web frameworks","i-lucide-globe","\u002Fintegrations\u002Fweb","6.integrations\u002F1.web",[147,151,155,159,163,167,171,175,179,183,187],{"title":148,"path":149,"stem":150},"Web adapters overview","\u002Fintegrations\u002Fweb\u002Foverview","6.integrations\u002F1.web\u002F01.overview",{"title":152,"path":153,"stem":154},"vld-axum","\u002Fintegrations\u002Fweb\u002Faxum","6.integrations\u002F1.web\u002F02.axum",{"title":156,"path":157,"stem":158},"vld-actix","\u002Fintegrations\u002Fweb\u002Factix","6.integrations\u002F1.web\u002F03.actix",{"title":160,"path":161,"stem":162},"vld-ntex","\u002Fintegrations\u002Fweb\u002Fntex","6.integrations\u002F1.web\u002F04.ntex",{"title":164,"path":165,"stem":166},"vld-poem","\u002Fintegrations\u002Fweb\u002Fpoem","6.integrations\u002F1.web\u002F05.poem",{"title":168,"path":169,"stem":170},"vld-rama","\u002Fintegrations\u002Fweb\u002Frama","6.integrations\u002F1.web\u002F06.rama",{"title":172,"path":173,"stem":174},"vld-rocket","\u002Fintegrations\u002Fweb\u002Frocket","6.integrations\u002F1.web\u002F07.rocket",{"title":176,"path":177,"stem":178},"vld-salvo","\u002Fintegrations\u002Fweb\u002Fsalvo","6.integrations\u002F1.web\u002F08.salvo",{"title":180,"path":181,"stem":182},"vld-tower","\u002Fintegrations\u002Fweb\u002Ftower","6.integrations\u002F1.web\u002F09.tower",{"title":184,"path":185,"stem":186},"vld-warp","\u002Fintegrations\u002Fweb\u002Fwarp","6.integrations\u002F1.web\u002F10.warp",{"title":188,"path":189,"stem":190},"vld-tonic","\u002Fintegrations\u002Fweb\u002Ftonic","6.integrations\u002F1.web\u002F11.tonic",{"title":192,"icon":193,"path":194,"stem":195,"children":196,"page":26},"OpenAPI and JSON Schema","i-lucide-file-code","\u002Fintegrations\u002Fopenapi","6.integrations\u002F2.openapi",[197,201,205],{"title":198,"path":199,"stem":200},"vld-utoipa","\u002Fintegrations\u002Fopenapi\u002Futoipa","6.integrations\u002F2.openapi\u002F1.utoipa",{"title":202,"path":203,"stem":204},"vld-schemars","\u002Fintegrations\u002Fopenapi\u002Fschemars","6.integrations\u002F2.openapi\u002F2.schemars",{"title":206,"path":207,"stem":208},"vld-aide","\u002Fintegrations\u002Fopenapi\u002Faide","6.integrations\u002F2.openapi\u002F3.aide",{"title":210,"icon":211,"path":212,"stem":213,"children":214,"page":26},"Codegen and test data","i-lucide-wand","\u002Fintegrations\u002Fcodegen","6.integrations\u002F3.codegen",[215,219],{"title":216,"path":217,"stem":218},"vld-ts","\u002Fintegrations\u002Fcodegen\u002Fts","6.integrations\u002F3.codegen\u002F1.ts",{"title":220,"path":221,"stem":222},"vld-fake","\u002Fintegrations\u002Fcodegen\u002Ffake","6.integrations\u002F3.codegen\u002F2.fake",{"title":224,"icon":225,"path":226,"stem":227,"children":228,"page":26},"Databases","i-lucide-database","\u002Fintegrations\u002Fdatabase","6.integrations\u002F4.database",[229,233,237,241],{"title":230,"path":231,"stem":232},"vld-sqlx","\u002Fintegrations\u002Fdatabase\u002Fsqlx","6.integrations\u002F4.database\u002F1.sqlx",{"title":234,"path":235,"stem":236},"vld-diesel","\u002Fintegrations\u002Fdatabase\u002Fdiesel","6.integrations\u002F4.database\u002F2.diesel",{"title":238,"path":239,"stem":240},"vld-sea","\u002Fintegrations\u002Fdatabase\u002Fsea-orm","6.integrations\u002F4.database\u002F3.sea-orm",{"title":242,"path":243,"stem":244},"vld-surrealdb","\u002Fintegrations\u002Fdatabase\u002Fsurrealdb","6.integrations\u002F4.database\u002F4.surrealdb",{"title":246,"icon":247,"path":248,"stem":249,"children":250,"page":26},"Messaging","i-lucide-mail","\u002Fintegrations\u002Fmessaging","6.integrations\u002F5.messaging",[251,255],{"title":252,"path":253,"stem":254},"vld-redis","\u002Fintegrations\u002Fmessaging\u002Fredis","6.integrations\u002F5.messaging\u002F1.redis",{"title":256,"path":257,"stem":258},"vld-lapin","\u002Fintegrations\u002Fmessaging\u002Flapin","6.integrations\u002F5.messaging\u002F2.lapin",{"title":260,"icon":261,"path":262,"stem":263,"children":264,"page":26},"Config and CLI","i-lucide-terminal","\u002Fintegrations\u002Fconfig-cli","6.integrations\u002F6.config-cli",[265,269],{"title":266,"path":267,"stem":268},"vld-config","\u002Fintegrations\u002Fconfig-cli\u002Fconfig","6.integrations\u002F6.config-cli\u002F1.config",{"title":270,"path":271,"stem":272},"vld-clap","\u002Fintegrations\u002Fconfig-cli\u002Fclap","6.integrations\u002F6.config-cli\u002F2.clap",{"title":274,"icon":275,"path":276,"stem":277,"children":278,"page":26},"UI frameworks","i-lucide-monitor","\u002Fintegrations\u002Fui","6.integrations\u002F7.ui",[279,283,287],{"title":280,"path":281,"stem":282},"vld-dioxus","\u002Fintegrations\u002Fui\u002Fdioxus","6.integrations\u002F7.ui\u002F1.dioxus",{"title":284,"path":285,"stem":286},"vld-leptos","\u002Fintegrations\u002Fui\u002Fleptos","6.integrations\u002F7.ui\u002F2.leptos",{"title":288,"path":289,"stem":290},"vld-tauri","\u002Fintegrations\u002Fui\u002Ftauri","6.integrations\u002F7.ui\u002F3.tauri",{"title":292,"icon":293,"path":294,"stem":295,"children":296,"page":26},"Shared crates","i-lucide-package","\u002Fintegrations\u002Fshared","6.integrations\u002F8.shared",[297,301],{"title":298,"path":299,"stem":300},"vld-http-common","\u002Fintegrations\u002Fshared\u002Fhttp-common","6.integrations\u002F8.shared\u002F1.http-common",{"title":302,"path":303,"stem":304},"vld-integration-common","\u002Fintegrations\u002Fshared\u002Fintegration-common","6.integrations\u002F8.shared\u002F2.integration-common",{"title":306,"icon":307,"path":308,"stem":309,"children":310,"page":26},"Guides","i-lucide-book-open","\u002Fguides","7.guides",[311,315,319,323,327],{"title":312,"path":313,"stem":314},"Migration","\u002Fguides\u002Fmigration","7.guides\u002F1.migration",{"title":316,"path":317,"stem":318},"Security notes","\u002Fguides\u002Fsecurity","7.guides\u002F2.security",{"title":320,"path":321,"stem":322},"Performance","\u002Fguides\u002Fperformance","7.guides\u002F3.performance",{"title":324,"path":325,"stem":326},"Contributing","\u002Fguides\u002Fcontributing","7.guides\u002F4.contributing",{"title":328,"path":329,"stem":330},"FAQ","\u002Fguides\u002Ffaq","7.guides\u002F5.faq",{"title":332,"path":333,"stem":334},"Changelog","\u002Fchangelog","9.changelog",{"id":336,"title":92,"body":337,"description":1125,"extension":1126,"links":1127,"meta":1128,"navigation":441,"path":93,"seo":1129,"stem":94,"__hash__":1130},"docs\u002F3.structs\u002F4.lenient.md",{"type":338,"value":339,"toc":1121},"minimark",[340,348,351,380,390,394,404,781,806,809,822,1002,1106,1117],[341,342,343,347],"p",{},[344,345,346],"code",{},"parse()"," fails as a whole. Sometimes you want the opposite: keep the fields that are valid, use defaults for the rest and show what went wrong, for example when loading a user-edited settings file.",[341,349,350],{},"Lenient parsing is available on:",[352,353,354,361,371],"ul",{},[355,356,357,360],"li",{},[344,358,359],{},"schema_validated!"," structs,",[355,362,363,366,367,370],{},[344,364,365],{},"schema!"," structs plus ",[344,368,369],{},"impl_validate_fields!",",",[355,372,373,375,376,379],{},[344,374,84],{}," structs with ",[344,377,378],{},"#[vld(lenient)]",".",[341,381,382,383,386,387,379],{},"Every field type must implement ",[344,384,385],{},"Default"," and ",[344,388,389],{},"serde::Serialize",[391,392,393],"h2",{"id":393},"validate_fields",[341,395,396,399,400,403],{},[344,397,398],{},"validate_fields(input)"," checks each field on its own and returns ",[344,401,402],{},"Vec\u003CFieldResult>",":",[405,406,411],"pre",{"className":407,"code":408,"language":409,"meta":410,"style":410},"language-rust shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","use vld::prelude::*;\n\nvld::schema_validated! {\n    #[derive(Debug, Default, serde::Serialize)]\n    pub struct Settings {\n        pub name: String => vld::string().min(2),\n        pub port: i64 => vld::number().int().min(1).max(65535),\n        pub theme: String => vld::enumeration(&[\"light\", \"dark\"]).with_default(\"light\".into()),\n    }\n}\n\nlet fields = Settings::validate_fields(r#\"{\"name\": \"X\", \"port\": 8080}\"#).unwrap();\nfor f in &fields {\n    println!(\"{f}\");\n}\n\u002F\u002F ✖ name: String must be at least 2 characters (received: \"X\")\n\u002F\u002F ✔ port: 8080\n\u002F\u002F ✔ theme: \"light\"\n","rust","",[344,412,413,436,443,457,491,506,544,593,658,664,670,675,715,737,757,762,769,775],{"__ignoreMap":410},[414,415,418,422,426,430,433],"span",{"class":416,"line":417},"line",1,[414,419,421],{"class":420},"sbssI","use",[414,423,425],{"class":424},"sBMFI"," vld",[414,427,429],{"class":428},"sMK4o","::",[414,431,432],{"class":424},"prelude",[414,434,435],{"class":428},"::*;\n",[414,437,439],{"class":416,"line":438},2,[414,440,442],{"emptyLinePlaceholder":441},true,"\n",[414,444,446,449,451,454],{"class":416,"line":445},3,[414,447,448],{"class":424},"vld",[414,450,429],{"class":428},[414,452,359],{"class":453},"s2Zo4",[414,455,456],{"class":428}," {\n",[414,458,460,463,467,470,473,475,478,480,483,485,488],{"class":416,"line":459},4,[414,461,462],{"class":428},"    #[",[414,464,466],{"class":465},"sTEyZ","derive",[414,468,469],{"class":428},"(",[414,471,472],{"class":424},"Debug",[414,474,370],{"class":428},[414,476,477],{"class":424}," Default",[414,479,370],{"class":428},[414,481,482],{"class":465}," serde",[414,484,429],{"class":428},[414,486,487],{"class":424},"Serialize",[414,489,490],{"class":428},")]\n",[414,492,494,498,501,504],{"class":416,"line":493},5,[414,495,497],{"class":496},"spNyl","    pub",[414,499,500],{"class":496}," struct",[414,502,503],{"class":424}," Settings",[414,505,456],{"class":428},[414,507,509,512,515,517,520,523,525,527,530,533,536,538,541],{"class":416,"line":508},6,[414,510,511],{"class":496},"        pub",[414,513,514],{"class":465}," name",[414,516,403],{"class":428},[414,518,519],{"class":424}," String",[414,521,522],{"class":428}," =>",[414,524,425],{"class":424},[414,526,429],{"class":428},[414,528,529],{"class":453},"string",[414,531,532],{"class":428},"().",[414,534,535],{"class":453},"min",[414,537,469],{"class":428},[414,539,540],{"class":420},"2",[414,542,543],{"class":428},"),\n",[414,545,547,549,552,554,557,559,561,563,566,568,571,573,575,577,580,583,586,588,591],{"class":416,"line":546},7,[414,548,511],{"class":496},[414,550,551],{"class":465}," port",[414,553,403],{"class":428},[414,555,556],{"class":424}," i64",[414,558,522],{"class":428},[414,560,425],{"class":424},[414,562,429],{"class":428},[414,564,565],{"class":453},"number",[414,567,532],{"class":428},[414,569,570],{"class":453},"int",[414,572,532],{"class":428},[414,574,535],{"class":453},[414,576,469],{"class":428},[414,578,579],{"class":420},"1",[414,581,582],{"class":428},").",[414,584,585],{"class":453},"max",[414,587,469],{"class":428},[414,589,590],{"class":420},"65535",[414,592,543],{"class":428},[414,594,596,598,601,603,605,607,609,611,614,617,620,624,626,628,631,634,636,639,642,644,646,648,650,652,655],{"class":416,"line":595},8,[414,597,511],{"class":496},[414,599,600],{"class":465}," theme",[414,602,403],{"class":428},[414,604,519],{"class":424},[414,606,522],{"class":428},[414,608,425],{"class":424},[414,610,429],{"class":428},[414,612,613],{"class":453},"enumeration",[414,615,616],{"class":428},"(&[",[414,618,619],{"class":428},"\"",[414,621,623],{"class":622},"sfazB","light",[414,625,619],{"class":428},[414,627,370],{"class":428},[414,629,630],{"class":428}," \"",[414,632,633],{"class":622},"dark",[414,635,619],{"class":428},[414,637,638],{"class":428},"]).",[414,640,641],{"class":453},"with_default",[414,643,469],{"class":428},[414,645,619],{"class":428},[414,647,623],{"class":622},[414,649,619],{"class":428},[414,651,379],{"class":428},[414,653,654],{"class":453},"into",[414,656,657],{"class":428},"()),\n",[414,659,661],{"class":416,"line":660},9,[414,662,663],{"class":428},"    }\n",[414,665,667],{"class":416,"line":666},10,[414,668,669],{"class":428},"}\n",[414,671,673],{"class":416,"line":672},11,[414,674,442],{"emptyLinePlaceholder":441},[414,676,678,681,684,687,689,691,693,695,698,701,704,707,709,712],{"class":416,"line":677},12,[414,679,680],{"class":496},"let",[414,682,683],{"class":465}," fields ",[414,685,686],{"class":428},"=",[414,688,503],{"class":424},[414,690,429],{"class":428},[414,692,393],{"class":453},[414,694,469],{"class":428},[414,696,697],{"class":622},"r",[414,699,700],{"class":428},"#\"",[414,702,703],{"class":622},"{\"name\": \"X\", \"port\": 8080}",[414,705,706],{"class":428},"\"#",[414,708,582],{"class":428},[414,710,711],{"class":453},"unwrap",[414,713,714],{"class":428},"();\n",[414,716,718,722,725,728,731,734],{"class":416,"line":717},13,[414,719,721],{"class":720},"s7zQu","for",[414,723,724],{"class":465}," f ",[414,726,727],{"class":420},"in",[414,729,730],{"class":428}," &",[414,732,733],{"class":465},"fields ",[414,735,736],{"class":428},"{\n",[414,738,740,743,745,748,751,754],{"class":416,"line":739},14,[414,741,742],{"class":453},"    println!",[414,744,469],{"class":428},[414,746,747],{"class":428},"\"{",[414,749,750],{"class":622},"f",[414,752,753],{"class":428},"}\"",[414,755,756],{"class":428},");\n",[414,758,760],{"class":416,"line":759},15,[414,761,669],{"class":428},[414,763,765],{"class":416,"line":764},16,[414,766,768],{"class":767},"sHwdD","\u002F\u002F ✖ name: String must be at least 2 characters (received: \"X\")\n",[414,770,772],{"class":416,"line":771},17,[414,773,774],{"class":767},"\u002F\u002F ✔ port: 8080\n",[414,776,778],{"class":416,"line":777},18,[414,779,780],{"class":767},"\u002F\u002F ✔ theme: \"light\"\n",[341,782,783,786,787,790,791,794,795,798,799,802,803,379],{},[344,784,785],{},"FieldResult"," has ",[344,788,789],{},"name",", ",[344,792,793],{},"input"," (the raw value) and ",[344,796,797],{},"result: Result\u003CValue, VldError>",", plus ",[344,800,801],{},"is_ok()"," \u002F ",[344,804,805],{},"is_err()",[391,807,808],{"id":808},"parse_lenient",[341,810,811,814,815,818,819,403],{},[344,812,813],{},"parse_lenient(input)"," always builds the struct: valid fields get their parsed value, invalid ones ",[344,816,817],{},"Default::default()",". It returns ",[344,820,821],{},"ParseResult\u003CT>",[405,823,825],{"className":407,"code":824,"language":409,"meta":410,"style":410},"let r = Settings::parse_lenient(r#\"{\"name\": \"X\", \"port\": 0}\"#).unwrap();\nassert_eq!(r.error_count(), 2);\nassert_eq!(r.value.port, 0);           \u002F\u002F Default\nassert_eq!(r.value.theme, \"light\");     \u002F\u002F schema default\n\nfor f in r.error_fields() {\n    eprintln!(\"{f}\");\n}\nlet settings = r.into_value();\n",[344,826,827,859,881,910,940,944,965,980,984],{"__ignoreMap":410},[414,828,829,831,834,836,838,840,842,844,846,848,851,853,855,857],{"class":416,"line":417},[414,830,680],{"class":496},[414,832,833],{"class":465}," r ",[414,835,686],{"class":428},[414,837,503],{"class":424},[414,839,429],{"class":428},[414,841,808],{"class":453},[414,843,469],{"class":428},[414,845,697],{"class":622},[414,847,700],{"class":428},[414,849,850],{"class":622},"{\"name\": \"X\", \"port\": 0}",[414,852,706],{"class":428},[414,854,582],{"class":428},[414,856,711],{"class":453},[414,858,714],{"class":428},[414,860,861,864,866,868,870,873,876,879],{"class":416,"line":438},[414,862,863],{"class":453},"assert_eq!",[414,865,469],{"class":428},[414,867,697],{"class":465},[414,869,379],{"class":428},[414,871,872],{"class":453},"error_count",[414,874,875],{"class":428},"(),",[414,877,878],{"class":420}," 2",[414,880,756],{"class":428},[414,882,883,885,887,889,891,894,896,899,901,904,907],{"class":416,"line":445},[414,884,863],{"class":453},[414,886,469],{"class":428},[414,888,697],{"class":465},[414,890,379],{"class":428},[414,892,893],{"class":465},"value",[414,895,379],{"class":428},[414,897,898],{"class":465},"port",[414,900,370],{"class":428},[414,902,903],{"class":420}," 0",[414,905,906],{"class":428},");",[414,908,909],{"class":767},"           \u002F\u002F Default\n",[414,911,912,914,916,918,920,922,924,927,929,931,933,935,937],{"class":416,"line":459},[414,913,863],{"class":453},[414,915,469],{"class":428},[414,917,697],{"class":465},[414,919,379],{"class":428},[414,921,893],{"class":465},[414,923,379],{"class":428},[414,925,926],{"class":465},"theme",[414,928,370],{"class":428},[414,930,630],{"class":428},[414,932,623],{"class":622},[414,934,619],{"class":428},[414,936,906],{"class":428},[414,938,939],{"class":767},"     \u002F\u002F schema default\n",[414,941,942],{"class":416,"line":493},[414,943,442],{"emptyLinePlaceholder":441},[414,945,946,948,950,952,955,957,960,963],{"class":416,"line":508},[414,947,721],{"class":720},[414,949,724],{"class":465},[414,951,727],{"class":420},[414,953,954],{"class":465}," r",[414,956,379],{"class":428},[414,958,959],{"class":453},"error_fields",[414,961,962],{"class":428},"()",[414,964,456],{"class":428},[414,966,967,970,972,974,976,978],{"class":416,"line":546},[414,968,969],{"class":453},"    eprintln!",[414,971,469],{"class":428},[414,973,747],{"class":428},[414,975,750],{"class":622},[414,977,753],{"class":428},[414,979,756],{"class":428},[414,981,982],{"class":416,"line":595},[414,983,669],{"class":428},[414,985,986,988,991,993,995,997,1000],{"class":416,"line":660},[414,987,680],{"class":496},[414,989,990],{"class":465}," settings ",[414,992,686],{"class":428},[414,994,954],{"class":465},[414,996,379],{"class":428},[414,998,999],{"class":453},"into_value",[414,1001,714],{"class":428},[1003,1004,1005,1021],"table",{},[1006,1007,1008],"thead",{},[1009,1010,1011,1018],"tr",{},[1012,1013,1014,1017],"th",{},[344,1015,1016],{},"ParseResult"," method",[1012,1019,1020],{},"Returns",[1022,1023,1024,1041,1054,1067,1086],"tbody",{},[1009,1025,1026,1038],{},[1027,1028,1029,1031,1032,802,1035],"td",{},[344,1030,893],{}," (field) \u002F ",[344,1033,1034],{},"into_value()",[344,1036,1037],{},"into_parts()",[1027,1039,1040],{},"the struct, or the struct and the field results",[1009,1042,1043,1051],{},[1027,1044,1045,802,1048],{},[344,1046,1047],{},"fields()",[344,1049,1050],{},"field(name)",[1027,1052,1053],{},"all field results \u002F one by name",[1009,1055,1056,1064],{},[1027,1057,1058,802,1061],{},[344,1059,1060],{},"valid_fields()",[344,1062,1063],{},"error_fields()",[1027,1065,1066],{},"filtered field results",[1009,1068,1069,1083],{},[1027,1070,1071,802,1074,802,1077,802,1080],{},[344,1072,1073],{},"is_valid()",[344,1075,1076],{},"has_errors()",[344,1078,1079],{},"valid_count()",[344,1081,1082],{},"error_count()",[1027,1084,1085],{},"summary",[1009,1087,1088,1099],{},[1027,1089,1090,802,1093,802,1096],{},[344,1091,1092],{},"to_json_value()",[344,1094,1095],{},"to_json_string()",[344,1097,1098],{},"save_to_file(path)",[1027,1100,1101,1102,1105],{},"serialize the struct (needs ",[344,1103,1104],{},"T: Serialize",")",[341,1107,1108,1109,1112,1113,1116],{},"Both functions still return ",[344,1110,1111],{},"Err"," when the input is not an object at all. A ",[344,1114,1115],{},".catch(..)"," field never counts as an error: the fallback is a valid value.",[1118,1119,1120],"style",{},"html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":410,"searchDepth":438,"depth":445,"links":1122},[1123,1124],{"id":393,"depth":438,"text":393},{"id":808,"depth":438,"text":808},"Validate each field separately, build the struct anyway and inspect per-field results.","md",null,{},{"title":92,"description":1125},"lT2dkb61Kn4Xrwq-7nn0_GLXFgsDUd1Tqvz9WpyyQ-A",[1132,1134],{"title":88,"path":89,"stem":90,"description":1133,"children":-1},"When to parse input into a struct and when to validate an existing value, and which field names each one uses.",{"title":102,"path":103,"stem":104,"description":1135,"children":-1},"VldError, ValidationIssue, IssueCode and PathSegment.",1794036359720]