alpm_lint/lint_rules/source_info/
mod.rs1use alpm_srcinfo::{SourceInfo, SourceInfoV1};
6
7use crate::{Error, LintScope, Resources};
8
9pub mod duplicate_architecture;
10pub mod invalid_spdx_license;
11pub mod no_architecture;
12pub mod openpgp_key_id;
13pub mod undefined_architecture;
14pub mod unknown_architecture;
15pub mod unsafe_checksum;
16
17fn source_info_from_resource(
27 resources: &Resources,
28 lint_rule: String,
29) -> Result<&SourceInfoV1, Error> {
30 match resources {
31 Resources::SourceRepository {
32 source_info: SourceInfo::V1(source_info),
33 ..
34 }
35 | Resources::SourceInfo(SourceInfo::V1(source_info)) => Ok(source_info),
36 _ => Err(Error::InvalidResources {
37 scope: resources.scope(),
38 lint_rule,
39 expected: LintScope::SourceInfo,
40 }),
41 }
42}