Enum pkgsrc::MetadataEntry

source ·
pub enum MetadataEntry {
Show 14 variants BuildInfo, BuildVersion, Comment, Contents, DeInstall, Desc, Display, Install, InstalledInfo, MtreeDirs, Preserve, RequiredBy, SizeAll, SizePkg,
}
Expand description

Type of Metadata entry.

Package metadata stored either in a package archive or inside a package entry in a PkgDB::DBType::Files package database is contained in various files prefixed with +.

This enum supports all of those filenames and avoids having to hardcode their values. It supports converting to and from the filename or enum.

§Example

use pkgsrc::MetadataEntry;

let e = MetadataEntry::Desc;

/*
 * Validate that the `Desc` entry matches our expected filename.
 */
assert_eq!(e.to_filename(), "+DESC");
assert_eq!(MetadataEntry::from_filename("+DESC"), Some(e));

/*
 * This is not a known +FILE
 */
assert_eq!(MetadataEntry::from_filename("+BADFILE"), None);

Variants§

§

BuildInfo

Optional package build information stored in +BUILD_INFO.

§

BuildVersion

Optional version information (usually CVS Id’s) for the files used to create the package stored in +BUILD_VERSION.

§

Comment

Single line description of the package stored in +COMMENT.

§

Contents

Packing list contents, also known as the packlist or PLIST, stored in +CONTENTS.

§

DeInstall

Optional script executed upon deinstall, stored in +DEINSTALL.

§

Desc

Multi-line description of the package stored in +DESC.

§

Display

Optional file, also known as MESSAGE, to be shown during package install or deinstall, stored in +DISPLAY.

§

Install

Optional script executed upon install, stored in +INSTALL.

§

InstalledInfo

Variables set by this package, currently only automatic=yes being supported, stored in +INSTALLED_INFO.

§

MtreeDirs

Obsolete file used to pre-create directories prior to a package install, stored in +MTREE_DIRS.

§

Preserve

Optional marker that this package should not be deleted under normal circumstances, stored in +PRESERVE.

§

RequiredBy

Optional list of packages that are reverse dependencies of (i.e. depend upon) this package, stored in +REQUIRED_BY.

§

SizeAll

Optional size of this package plus all of its dependencies, stored in +SIZE_ALL.

§

SizePkg

Optional size of this package, stored in +SIZE_ALL.

Implementations§

source§

impl MetadataEntry

source

pub fn to_filename(&self) -> &str

Return filename for the associated MetadataEntry type.

§Example
use pkgsrc::MetadataEntry;

let e = MetadataEntry::Contents;
assert_eq!(e.to_filename(), "+CONTENTS");
source

pub fn from_filename(file: &str) -> Option<MetadataEntry>

Return MetadataEntry enum in an Option for requested file.

§Example
use pkgsrc::MetadataEntry;

assert_eq!(MetadataEntry::from_filename("+CONTENTS"),
           Some(MetadataEntry::Contents));
assert_eq!(MetadataEntry::from_filename("+BADFILE"), None);

Trait Implementations§

source§

impl Debug for MetadataEntry

source§

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

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

impl PartialEq for MetadataEntry

source§

fn eq(&self, other: &MetadataEntry) -> 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 StructuralPartialEq for MetadataEntry

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> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

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

§

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.