【发布时间】:2015-12-11 22:07:58
【问题描述】:
在这个文件中
https://github.com/csirtgadgets/massive-octo-spice/blob/develop/src/lib/CIF/Observable/Binary.pm,
我被这句话弄糊涂了
使用“CIF::Observable”;
在第 9 行。Perl 中有关键字“with”吗?它是如何工作的?
package CIF::Observable::Binary;
use strict;
use warnings;
use Mouse;
use Digest::SHA qw/sha256_hex/;
with 'CIF::Observable';
use constant DEFAULT_HASH_TYPE => 'sha256';
has '+otype' => (
default => 'binary',
);
has 'hash' => (
is => 'ro',
isa => 'CIF::Type::Hash',
default => sub { sha256_hex($_[0]->{'observable'}) },
);
has 'htype' => (
is => 'ro',
isa => 'Str',
default => DEFAULT_HASH_TYPE(),
);
sub process {}
sub understands {
my $self = shift;
my $args = shift;
return unless($args->{'observable'});
return unless($args->{'otype'});
return unless($args->{'otype'} eq 'binary');
return 1;
}
__PACKAGE__->meta()->make_immutable();
1;
【问题讨论】:
标签: perl with-statement