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
impl MetadataEntry
sourcepub fn to_filename(&self) -> &str
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");sourcepub fn from_filename(file: &str) -> Option<MetadataEntry>
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);