Enum NameTypeSupport

Source
pub enum NameTypeSupport {
    OnlyPaths,
    OnlyNamespaced,
    Both,
}
Expand description

Represents which kinds of identifiers can be used for a local socket’s name on the current platform.

Variants§

§

OnlyPaths

Only filesystem paths can be used.

This is true for all Unix/POSIX and Unix-like systems other than Linux.

§

OnlyNamespaced

Only names in an dedicated namespace can be used.

This is true only for Windows.

§

Both

Both of the above options are available.

This is true only for Linux.

Implementations§

Source§

impl NameTypeSupport

Source

pub const ALWAYS_AVAILABLE: Self = NAME_TYPE_ALWAYS_SUPPORTED_REAL

The types of local socket names supported on the current platform regardless of the environment and OS version.

On most platforms, the value is known at compile time, i.e. the support for paths wasn’t introduced in a specific version of the OS or isn’t known to be supported at all. Currently, this includes all supported OSes. If support is added for an OS which added this functionality in a specific version, this constant will be the most restrictive value for that platform, with query possibly returning the actual value according to the current version of the OS.

Simply put, you should probably just use this value for consistency across platforms, unless you really need a specific name type to be supported.

Source

pub fn query() -> Self

Returns the types of local socket names supported on the current platform with the current environment.

On most platforms, the value is known at compile time, i.e. the support for one of the types wasn’t introduced in an update to the OS or isn’t known to be supported at all. Currently, this includes all supported OSes. For compatibility with OSes which might add the functionality in the future starting with a specific version, this function isn’t a const fn – see ALWAYS_AVAILABLE if you need a constant expression.

Source

pub const fn paths_supported(self) -> bool

Returns true if, according to self, filesystem-based local sockets are supported; false otherwise.

Source

pub const fn namespace_supported(self) -> bool

Returns true if, according to self, namespaced local socket names are supported; false otherwise.

Trait Implementations§

Source§

impl Clone for NameTypeSupport

Source§

fn clone(&self) -> NameTypeSupport

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for NameTypeSupport

Source§

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

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

impl Hash for NameTypeSupport

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for NameTypeSupport

Source§

fn eq(&self, other: &NameTypeSupport) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

const fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for NameTypeSupport

Source§

impl Eq for NameTypeSupport

Source§

impl StructuralPartialEq for NameTypeSupport

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> To for T
where T: ?Sized,

Source§

fn to<T>(self) -> T
where Self: Into<T>,

Converts to T by calling Into<T>::into.
Source§

fn try_to<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Tries to convert to T by calling TryInto<T>::try_into.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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.