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 long_values_aurweb;
12pub mod no_architecture;
13pub mod openpgp_key_id;
14pub mod undefined_architecture;
15pub mod unknown_architecture;
16pub mod unsafe_checksum;
17
18fn source_info_from_resource(
28 resources: &Resources,
29 lint_rule: String,
30) -> Result<&SourceInfoV1, Error> {
31 match resources {
32 Resources::SourceRepository {
33 source_info: SourceInfo::V1(source_info),
34 ..
35 }
36 | Resources::SourceInfo(SourceInfo::V1(source_info)) => Ok(source_info),
37 _ => Err(Error::InvalidResources {
38 scope: resources.scope(),
39 lint_rule,
40 expected: LintScope::SourceInfo,
41 }),
42 }
43}