pub enum MatterLocalService {
Commissioned {
compressed_fabric_id: u64,
node_id: u64,
},
Commissionable {
id: u64,
discriminator: u16,
enhanced: bool,
},
}Expand description
A Matter service that this node advertises (publishes) over a discovery transport such as mDNS.
This is the publish-side identity; the query-side analog is
MatterRemoteService. The discovery-transport encoding (e.g. the mDNS
MdnsLocalService record) lives in the mdns module
(MatterLocalService::service).
Variants§
Commissioned
A commissioned Matter service for a particular fabric
The published name is in the form <compressed-fabric-id-hex>-<node-id-hex>.
Commissionable
A non-commissioned Matter service
The published name is in the form <id-hex>. The discriminator should be used as an mDNS TXT entry
Implementations§
Source§impl MatterLocalService
impl MatterLocalService
Sourcepub fn service<'a>(
&self,
dev_det: &BasicInfoConfig<'_>,
matter_port: u16,
buf: &'a mut [u8],
) -> Result<(MdnsLocalService<'a, impl Iterator<Item = &'a str> + Clone, impl Iterator<Item = (&'a str, &'a str)> + Clone>, &'a mut [u8]), Error>
pub fn service<'a>( &self, dev_det: &BasicInfoConfig<'_>, matter_port: u16, buf: &'a mut [u8], ) -> Result<(MdnsLocalService<'a, impl Iterator<Item = &'a str> + Clone, impl Iterator<Item = (&'a str, &'a str)> + Clone>, &'a mut [u8]), Error>
Build a full mDNS service description for this Matter service, including the service name, type, protocol, port, subtypes, and TXT records.
Trait Implementations§
Source§impl Clone for MatterLocalService
impl Clone for MatterLocalService
Source§fn clone(&self) -> MatterLocalService
fn clone(&self) -> MatterLocalService
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MatterLocalService
impl Debug for MatterLocalService
impl Eq for MatterLocalService
Source§impl Hash for MatterLocalService
impl Hash for MatterLocalService
Source§impl PartialEq for MatterLocalService
impl PartialEq for MatterLocalService
Source§fn eq(&self, other: &MatterLocalService) -> bool
fn eq(&self, other: &MatterLocalService) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for MatterLocalService
Auto Trait Implementations§
impl Freeze for MatterLocalService
impl RefUnwindSafe for MatterLocalService
impl Send for MatterLocalService
impl Sync for MatterLocalService
impl Unpin for MatterLocalService
impl UnsafeUnpin for MatterLocalService
impl UnwindSafe for MatterLocalService
Blanket Implementations§
Source§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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> ⓘ
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 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> ⓘ
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 moreSource§impl<T, I> IntoFallibleInit<T> for Iwhere
I: Init<T>,
impl<T, I> IntoFallibleInit<T> for Iwhere
I: Init<T>,
Source§fn into_fallible<E>(self) -> impl Init<T, E>
fn into_fallible<E>(self) -> impl Init<T, E>
Convert the infallible initializer to a fallible one.
Source§impl<Source, Target> OctetsInto<Target> for Sourcewhere
Target: OctetsFrom<Source>,
impl<Source, Target> OctetsInto<Target> for Sourcewhere
Target: OctetsFrom<Source>,
type Error = <Target as OctetsFrom<Source>>::Error
Source§fn try_octets_into(
self,
) -> Result<Target, <Source as OctetsInto<Target>>::Error>
fn try_octets_into( self, ) -> Result<Target, <Source as OctetsInto<Target>>::Error>
Performs the conversion.
Source§fn octets_into(self) -> Target
fn octets_into(self) -> Target
Performs an infallible conversion.