Skip to main content

ServiceSchema

Struct ServiceSchema 

Source
pub struct ServiceSchema<'a> { /* private fields */ }
Expand description

Runtime descriptor for a Smithy service shape.

Implementations§

Source§

impl<'a> ServiceSchema<'a>

Source

pub const fn new( shape_id: ShapeId<'a>, version: Option<&'a str>, protocols: &'a [ShapeId<'a>], operations: &'a [&'a OperationSchema<'a>], ) -> Self

Creates a service descriptor.

protocols lists the shape IDs of the protocols the service serves, and operations lists every operation bound to the service, including operations bound through resources.

Source

pub const fn with_traits(self, traits: &'a LazyLock<TraitMap>) -> Self

Attaches the traits applied to the service shape. Mirrors [Schema::with_traits].

Source

pub fn traits(&self) -> Option<&TraitMap>

Returns the traits recorded for the service shape, initializing them on first access.

Source

pub const fn shape_id(&self) -> &ShapeId<'a>

Returns the service shape ID.

Source

pub const fn version(&self) -> Option<&'a str>

Returns the modeled service version, if any.

Source

pub fn protocols(&self) -> &'a [ShapeId<'a>]

Returns the shape IDs of the protocols applied to this service.

Source

pub fn operations(&self) -> &'a [&'a OperationSchema<'a>]

Returns the operations bound to this service.

Source

pub fn operation(&self, id: &ShapeId<'_>) -> Option<&'a OperationSchema<'a>>

Returns the operation with the given shape ID, if bound to this service.

Trait Implementations§

Source§

impl<'a> Debug for ServiceSchema<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for ServiceSchema<'a>

§

impl<'a> !RefUnwindSafe for ServiceSchema<'a>

§

impl<'a> Send for ServiceSchema<'a>

§

impl<'a> Sync for ServiceSchema<'a>

§

impl<'a> Unpin for ServiceSchema<'a>

§

impl<'a> UnsafeUnpin for ServiceSchema<'a>

§

impl<'a> !UnwindSafe for ServiceSchema<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,