Service

Trait Service 

Source
pub trait Service: 'static {
    type Request<'a>: Wire<'a>;
    type Response<'a>: Wire<'a>;

    const NAME: &str;
    const VERSIONS: Versions;

    // Required method
    fn request(x: Self::Request<'_>) -> Api<'_, Request>;
}
Expand description

Service description.

Required Associated Constants§

Source

const NAME: &str

Available on crate feature host only.
Source

const VERSIONS: Versions

Available on crate feature host only.

Range of versions implementing this service.

Required Associated Types§

Source

type Request<'a>: Wire<'a>

Source

type Response<'a>: Wire<'a>

Required Methods§

Source

fn request(x: Self::Request<'_>) -> Api<'_, Request>

Available on crate feature host only.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Service for ApiVersion

Source§

const NAME: &str = "ApiVersion"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = u32

Source§

impl Service for AppletExitStatus

Source§

const NAME: &str = "AppletExitStatus"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = AppletId

Source§

type Response<'a> = Option<ExitStatus>

Source§

impl Service for AppletInstall

Source§

const NAME: &str = "AppletInstall"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = Request<'a>

Source§

type Response<'a> = Response

Source§

impl Service for AppletReboot

Source§

const NAME: &str = "AppletReboot"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = AppletId

Source§

type Response<'a> = ()

Source§

impl Service for AppletRequest

Source§

const NAME: &str = "AppletRequest"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = Request<'a>

Source§

type Response<'a> = ()

Source§

impl Service for AppletResponse

Source§

const NAME: &str = "AppletResponse"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = AppletId

Source§

type Response<'a> = Option<&'a [u8]>

Source§

impl Service for AppletTunnel

Source§

const NAME: &str = "AppletTunnel"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = Tunnel<'a>

Source§

type Response<'a> = ()

Source§

impl Service for PlatformClearStore

Source§

const NAME: &str = "PlatformClearStore"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = usize

Source§

type Response<'a> = ()

Source§

impl Service for PlatformInfo

Source§

const NAME: &str = "PlatformInfo"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = Info<'a>

Source§

impl Service for PlatformLock

Source§

const NAME: &str = "PlatformLock"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = ()

Source§

impl Service for PlatformReboot

Source§

const NAME: &str = "PlatformReboot"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = !

Source§

impl Service for PlatformUpdate

Source§

const NAME: &str = "PlatformUpdate"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = Request<'a>

Source§

type Response<'a> = Response

Source§

impl Service for PlatformVendor

Source§

const NAME: &str = "PlatformVendor"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = &'a [u8]

Source§

type Response<'a> = &'a [u8]

Source§

impl Service for _AppletInstall0

Available on crate feature host only.
Source§

const NAME: &str = "_AppletInstall0"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = _Request0<'a>

Source§

type Response<'a> = ()

Source§

impl Service for _AppletUninstall0

Available on crate feature host only.
Source§

const NAME: &str = "_AppletUninstall0"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = ()

Source§

impl Service for _PlatformInfo0

Available on crate feature host only.
Source§

const NAME: &str = "_PlatformInfo0"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = _Info0<'a>

Source§

impl Service for _PlatformUpdate0

Available on crate feature host only.
Source§

const NAME: &str = "_PlatformUpdate0"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = _Request0<'a>

Source§

type Response<'a> = ()

Source§

impl Service for _PlatformUpdateMetadata

Available on crate feature host only.
Source§

const NAME: &str = "_PlatformUpdateMetadata"

Source§

const VERSIONS: Versions

Source§

type Request<'a> = ()

Source§

type Response<'a> = &'a [u8]