alpm_types/
lib.rs

1#![doc = include_str!("../README.md")]
2
3mod checksum;
4pub use checksum::{
5    Blake2b512Checksum,
6    Checksum,
7    ChecksumAlgorithm,
8    Digest,
9    Md5Checksum,
10    Sha1Checksum,
11    Sha224Checksum,
12    Sha256Checksum,
13    Sha384Checksum,
14    Sha512Checksum,
15    SkippableChecksum,
16};
17
18mod source;
19pub use source::Source;
20
21pub mod url;
22pub use url::{SourceUrl, Url};
23
24/// Public re-exports of common hash functions, for use with [`Checksum`].
25pub mod digests {
26    pub use blake2::Blake2b512;
27    pub use digest::Digest;
28    pub use md5::Md5;
29    pub use sha1::Sha1;
30    pub use sha2::{Sha224, Sha256, Sha384, Sha512};
31}
32
33mod compression;
34pub use compression::CompressionAlgorithmFileExtension;
35
36mod date;
37pub use date::{BuildDate, FromOffsetDateTime};
38
39mod env;
40pub use env::{BuildEnvironmentOption, InstalledPackage, MakepkgOption, PackageOption};
41
42mod file_type;
43pub use file_type::FileTypeIdentifier;
44
45mod error;
46pub use error::Error;
47
48mod license;
49pub use license::License;
50
51mod name;
52pub use name::{BuildTool, Name, SharedObjectName};
53
54mod package;
55pub use package::{
56    contents::{INSTALL_SCRIPTLET_FILE_NAME, MetadataFileName},
57    error::Error as PackageError,
58    file_name::PackageFileName,
59    source::{PKGBUILD_FILE_NAME, SRCINFO_FILE_NAME},
60};
61
62mod path;
63pub use path::{
64    AbsolutePath,
65    Backup,
66    BuildDirectory,
67    Changelog,
68    Install,
69    RelativePath,
70    SonameLookupDirectory,
71    StartDirectory,
72};
73
74mod openpgp;
75pub use openpgp::{OpenPGPIdentifier, OpenPGPKeyId, OpenPGPv4Fingerprint, Packager};
76
77mod pkg;
78pub use pkg::{ExtraData, PackageBaseName, PackageDescription, PackageType};
79
80mod relation;
81pub use relation::{
82    Group,
83    OptionalDependency,
84    PackageRelation,
85    RelationOrSoname,
86    SharedLibraryPrefix,
87    Soname,
88    SonameV1,
89    SonameV2,
90    VersionOrSoname,
91};
92
93mod size;
94pub use size::{CompressedSize, InstalledSize};
95
96mod system;
97pub use system::{
98    Architecture,
99    Architectures,
100    ElfArchitectureFormat,
101    SystemArchitecture,
102    UnknownArchitecture,
103};
104
105mod version;
106pub use version::{
107    base::{Epoch, PackageRelease, PackageVersion},
108    buildtool::BuildToolVersion,
109    comparison::{VersionSegment, VersionSegments},
110    pkg_full::FullVersion,
111    pkg_generic::Version,
112    pkg_minimal::MinimalVersion,
113    requirement::{VersionComparison, VersionRequirement},
114    schema::SchemaVersion,
115};
116
117/// Public re-exports for use with [`SchemaVersion`].
118pub mod semver_version {
119    pub use semver::Version;
120}