Struct VolumeName

Source
pub struct VolumeName { /* private fields */ }
Expand description

An MS-DOS 11 character volume label.

ISO-8859-1 encoding is assumed. Trailing spaces are trimmed. Reserved characters are not allowed. There is no file extension, unlike with a filename.

Volume labels can be found in the BIOS Parameter Block, and in a root directory entry with the ‘Volume Label’ bit set. Both places should have the same contents, but they can get out of sync.

MS-DOS FDISK would show you the one in the BPB, but DIR would show you the one in the root directory.

Implementations§

Source§

impl VolumeName

Source

pub fn name(&self) -> &[u8]

Get name

Source

pub fn create_from_str(name: &str) -> Result<VolumeName, FilenameError>

Create a new MS-DOS volume label.

Source

pub unsafe fn to_short_filename(self) -> ShortFileName

Convert to a Short File Name

§Safety

Volume Labels can contain things that Short File Names cannot, so only do this conversion if you are creating the name of a directory entry with the ‘Volume Label’ attribute.

Trait Implementations§

Source§

impl Clone for VolumeName

Source§

fn clone(&self) -> VolumeName

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

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

Performs copy-assignment from source. Read more
Source§

impl Debug for VolumeName

Source§

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

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

impl Display for VolumeName

Source§

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

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

impl PartialEq for VolumeName

Source§

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

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

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 Eq for VolumeName

Source§

impl StructuralPartialEq for VolumeName

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