NAME¶
Lintian::CheckScript - Check script meta data
SYNOPSIS¶
use Lintian::CheckScript;
my $cs = Lintian::CheckScript->new ("$ENV{'LINTIAN_ROOT'}/checks/",
'files');
my $name = $cs->name;
foreach my $tag ($cs->tags) {
# $ti is an instance of Lintian::Tag::Info
my $ti = $cs->get_tag ($tag);
print "$tag is a part of the check $name\n";
# Do something with $ti / $tag
}
foreach my $needs ($cs->needs_info) {
print "$name needs $needs\n";
}
if ($cs->is_check_type ('binary') && $cs->is_check_type ('source')) {
# Check applies to binary pkgs AND source pkgs
}
DESCRIPTION¶
Instances of this class represents the data in the check ".desc"
files. It allows access to the tags (as Lintian::Tag::Info) and the common
meta data of the check (such as Needs-Info).
CLASS METHODS¶
- Lintian::CheckScript->new($basedir, $checkname[, $profile, $lang])
- Parses the $file as a check desc file. If $profile and $lang is given,
translations for the check will be loaded as well.
- $cs->name
- Returns the "name" of the check script. This is the value in the
Check-Script field in the file.
- $cs->type
- Returns the value stored in the "Type" field of the file. For
the purpose of testing if the check applies to a given package type, the
"is_check_type" method can be used instead.
Note in rare cases this may return undef. This is the case for the
lintian.desc, where this field is simply not present.
- $cs->abbrev
- Returns the value of the Abbrev field from the desc file.
- $cs->script_path
- Returns the (expected) path to the script implementing this check.
- needs_info
- Returns a list of all items listed in the Needs-Info field. Neither the
list nor its contents should be modified.
- $cs->is_check_type ($type)
- Returns a truth value if this check can be applied to a $type package.
Note if $cs->type return undef, this will return a truth value for all
inputs.
- $cs->get_tag ($tagname)
- Return the tag or undef (if the tag is not in this check).
- $cs->tags
- Returns the list of tag names in the check. The list nor its contents
should be modified.
- $cs->load_check
- Attempts to load the check. On failure, the load error will be propagated
to the caller. On success it returns normally.
- $cs->run_check ($proc, $group)
- Run the check on $proc, which is in the group $group. $proc should be a
lab entry and must have the proper collections run on it prior to calling
this method (See Lintian::Unpacker).
The method may error out if loading the check failed or if the check itself
calls die/croak/fail/etc.
Returns normally on success; the return value has no semantic meaning and is
currently "undef".
NB: load_check can be used to determine if the check itself is
loadable.
AUTHOR¶
Originally written by Niels Thykier <niels@thykier.net> for Lintian.
SEE ALSO¶
lintian(1),
Lintian::Profile(3),
Lintian::Tag::Info(3)