pub struct AgentCardParser;Expand description
Parses Agent Card JSON (DW-114) from an inline JSON value or a
file path. The card shape is JSON-LD-ish: a top-level object with
name, description, url, version, capabilities, and
authentication fields. Unknown fields are tolerated (the spec is
not frozen). Required fields are name and url; missing either
is a parse error.
Implementations§
Source§impl AgentCardParser
impl AgentCardParser
Sourcepub fn parse_inline(value: &Value) -> Result<AgentCard, A2AStub>
pub fn parse_inline(value: &Value) -> Result<AgentCard, A2AStub>
Parse an Agent Card from an inline JSON value. Returns an
error when the value is not an object or is missing a required
field (name, url).
Sourcepub fn parse_path(path: &str) -> Result<AgentCard, A2AStub>
pub fn parse_path(path: &str) -> Result<AgentCard, A2AStub>
Parse an Agent Card from a file path. Reads the file and parses
it as JSON, then delegates to parse_inline. Returns an
error when the file cannot be read or is malformed.
Sourcepub fn parse_source(card: Option<&A2aAgentCard>) -> Result<AgentCard, A2AStub>
pub fn parse_source(card: Option<&A2aAgentCard>) -> Result<AgentCard, A2AStub>
Parse a card source (inline-or-path) from the config. Inline takes precedence over path; when neither is set, returns an error (a card-less agent has no discovery doc).
Auto Trait Implementations§
impl Freeze for AgentCardParser
impl RefUnwindSafe for AgentCardParser
impl Send for AgentCardParser
impl Sync for AgentCardParser
impl Unpin for AgentCardParser
impl UnwindSafe for AgentCardParser
Blanket Implementations§
§impl<T> AnyExt for T
impl<T> AnyExt for T
§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
T behind reference§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
T behind mutable reference§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
T behind Rc pointer§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
T behind Arc pointer§fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
T behind Box pointer§fn downcast_move<T>(this: Self) -> Option<T>
fn downcast_move<T>(this: Self) -> Option<T>
Self to T,
useful only in generic context as a workaround for specializationSource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more