MCPcopy Create free account
hub / github.com/awslabs/llrt / from_js

Method from_js

modules/llrt_http/src/agent.rs:56–83  ·  view source on GitHub ↗
(ctx: &Ctx<'js>, value: Value<'js>)

Source from the content-addressed store, hash-verified

54
55impl<'js> FromJs<'js> for AgentOptions {
56 fn from_js(ctx: &Ctx<'js>, value: Value<'js>) -> Result<Self> {
57 let ty_name = value.type_name();
58 let obj = value
59 .as_object()
60 .ok_or(Error::new_from_js(ty_name, "Object"))?;
61
62 let reject_unauthorized = obj.get_optional::<_, bool>("rejectUnauthorized")?;
63 let ca = obj
64 .get_optional::<_, AnyOf4<String, Vec<String>, ObjectBytes, Vec<ObjectBytes>>>("ca")?
65 .map(|ca| {
66 let ca = match ca {
67 AnyOf4::A(ca) => vec![ca.into_bytes()],
68 AnyOf4::B(ca) => ca.into_iter().map(|ca| ca.into_bytes()).collect(),
69 AnyOf4::C(ca) => vec![ca.into_bytes(ctx)?],
70 AnyOf4::D(ca) => ca
71 .into_iter()
72 .map(|ca| ca.into_bytes(ctx))
73 .collect::<Result<Vec<_>>>()?,
74 };
75 Ok::<_, Error>(ca)
76 })
77 .transpose()?;
78
79 Ok(Self {
80 reject_unauthorized,
81 ca,
82 })
83 }
84}

Callers

nothing calls this directly

Calls 2

as_objectMethod · 0.80
into_bytesMethod · 0.80

Tested by

no test coverage detected