tonic_build::manual

Struct ServiceBuilder

source
pub struct ServiceBuilder { /* private fields */ }
Expand description

Service builder.

This builder can be used to manually define a gRPC service in rust code without the use of a .proto file.

§Example

let greeter_service = Service::builder()
    .name("Greeter")
    .package("helloworld")
    // Add various methods to the service
    // .method()
    .build();

Implementations§

source§

impl ServiceBuilder

source

pub fn name(self, name: impl AsRef<str>) -> Self

Set the name for this Service.

This value will be used both as the base for the generated rust types and service trait as well as part of the route for calling this service. Routes have the form: /<package_name>.<service_name>/<method_route_name>

source

pub fn package(self, package: impl AsRef<str>) -> Self

Set the package this Service is part of.

This value will be used as part of the route for calling this service. Routes have the form: /<package_name>.<service_name>/<method_route_name>

source

pub fn comment(self, comment: impl AsRef<str>) -> Self

Add a comment string that should be included as a doc comment for this Service.

source

pub fn method(self, method: Method) -> Self

Adds a Method to this Service.

source

pub fn build(self) -> Service

Build a Service.

Panics if name or package weren’t set.

Trait Implementations§

source§

impl Debug for ServiceBuilder

source§

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

Formats the value using the given formatter. Read more
source§

impl Default for ServiceBuilder

source§

fn default() -> ServiceBuilder

Returns the “default value” for a type. Read more

Auto Trait Implementations§

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.

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
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.