fn try_from()

in src/settings/config.rs [220:258]


    fn try_from(value: &OwnedStruct) -> Result<Self, Self::Error> {
        let mut ledger = LedgerConfig::default();

        ledger.name = match value.get("name") {
            Some(elem) => elem
                .as_str()
                .ok_or(usage_error("`ledger.name` should be a string"))?
                .to_string(),
            None => Err(usage_error("`ledger.name` is a required field"))?,
        };

        if let Some(elem) = value.get("profile") {
            ledger.profile = Some(
                elem.as_str()
                    .ok_or(usage_error("`ledger.profile` should be a string"))?
                    .to_string(),
            );
        }

        if let Some(elem) = value.get("region") {
            ledger.region = Some(
                elem.as_str()
                    .ok_or(usage_error("`ledger.region` should be a string"))?
                    .to_string(),
            );
        }

        if let Some(elem) = value.get("qldb_session_endpoint") {
            ledger.qldb_session_endpoint = Some(
                elem.as_str()
                    .ok_or(usage_error(
                        "`ledger.qldb_session_endpoint` should be a string",
                    ))?
                    .to_string(),
            );
        }

        Ok(ledger)
    }