Result for 674639FEF1B8D43E60B52C9DDF8B2E616445F02E

Query result

Key Value
MD52686D6E88E0433A87FDD708E42558E4C
PackageArchnoarch
PackageDescriptionPerl 5 doesn't natively support Java-style interfaces, and it doesn't support Perl 6 style roles either. You can get both of these things in half a dozen different ways via various CPAN modules, but they usually require that you buy into "their way" of implementing your code. Other have turned to "duck typing". This is, for the most part, a fairly naive check that says "can you do this method", under the "if it looks like a duck, and quacks like a duck, then it must be a duck". It assumes that if you have a '->quack' method, then they will treat you as a duck, because doing things like adding 'Duck' to your '@ISA' array means you are also forced to take their implementation. There is, of course, a better way. For better or worse, Perl's '->isa' functionality to determine if something is or is not a particular class/object is defined as a *method*, not a function, and so that means that as well as adding something to you '@ISA' array, so that Perl's 'UNIVERSAL::isa' method can work with it, you are also allowed to simply overload your own 'isa' method and answer directly whether or not you are something. The simplest form of the idiom looks like this. sub isa { return 1 if $_[1] eq 'Duck'; shift->SUPER::isa(@_); } This reads "Check my type as normal, but if anyone wants to know if I'm a duck, then tell them yes". Now, there are a few people that have argued that this is "lying" about your class, but this argument is based on the idea that '@ISA' is somehow more "real" than using the method directly. It also assumes that what you advertise you implement needs to be in sync with the method resolution for any given function. But in the best and cleanest implementation of code, the API is orthogonal (although most often related) to the implementation. And although '@ISA' is about implementation *and* API, overloading 'isa' to let you change your API is not at all bad when seen in this light.
PackageNameperl-asa
PackageRelease7.1
PackageVersion1.04
SHA-1674639FEF1B8D43E60B52C9DDF8B2E616445F02E
SHA-256DF9660E48A2AD2D71D0EB5F54404F8A052B4B6AA14C939B6CE18220998B3FF19
hashlookup:children-total6
hashlookup:trust50

Network graph view

Children (Total: 6)

The searched file hash includes 6 children files known and seen by metalookup. A sample is included below:

Key Value
FileName./usr/share/doc/libasa-perl/CONTRIBUTING
FileSize3969
MD5AF6DCAFDD2D05C336C458D03DEA927F2
SHA-1FE4BDEC77D4EB1DA80219EA585CF81DB21D17194
SHA-25600D0DDD53DED093A05C9A88707B2E55C75D27D32D902E90F51E95D831D385695
SSDEEP96:65kF1itxzBTj7taWLKgAHiQgmlGGk6zQ9/Lbq:65hF7cFgw1gmlGG/wG
TLSHT19481957F7990137A69C201A1F21E41A2A3DBE22E1361007144DF45AD032E6B7E2BFF99
Key Value
FileName./usr/share/perl5/asa.pm
FileSize5617
MD5900A611267F7D166C28C1342C87568B3
SHA-1380CF1A7401F99FBBED723D7A71E58319AFD260A
SHA-25604A4C3CE9D765DCB4EAB142738061602275957345DC3F5063E08058C8F5B6FDC
SSDEEP96:Lq8QqY3lBtyqgq1LlOcI1cfzpIy6IWUEGdEiwFgdM+m3XILy40UvHW77hPSDv2j:Lq8lGTtyqgqLIebpI6SkEEm40UOpIvO
TLSHT162C1E70FBA015335272F4535598B6C69FF1FC8392D17A8B6BC6D8228A723E68433359C
tar:gnamebin
tar:unameroot
Key Value
FileName./usr/share/man/man3/asa.3pm.gz
FileSize3543
MD5AFAEA3AD3046354E43194EB43126E157
SHA-1BC69CD12A83742441A2A31915DC5C7911A87319E
SHA-2567BE45DBAFAAA11674726F582EDF582D4D7F19B730EA1D1317AED0BDAD7038CE4
SSDEEP96:v4uvvgj4GqGl+VbyIRfStgbYhCmWYjaDM0O50bGh:1vvcfSO0ggACujsa0qh
TLSHT177713C9367D3AFB02B1A37D45A20C15527E9660A4ECFB44CD9D7EAB07A114A6309CC88
Key Value
FileName./usr/share/doc/perl-asa/README
FileSize379
MD502D84653FFC144C81FD4629CAAD967D2
SHA-1033A517B58D30F1F8284F26AE4D5B09ABEA555C3
SHA-25696598B67C4A1E742822AC164D21B7E62F00C81F004F1E833D7B226413CE18C1F
SSDEEP6:hATqmSTvQySFyqJz1j05jyS3R9AxElWBFQPZRINELTcWW/Rhfbj+O20p1n:hATqmKaJzmv9AxElaFQPZwdLfbjrFp1
TLSHT1E3E06818AC88C3B95C4783F7A0872941FF65BA89563A647138EDC08AF06BD06C7726C1
Key Value
FileName./usr/share/licenses/perl-YAML-Tiny/LICENSE
FileSize18349
MD529B2E3806695CB66D447268F5A9FD5C7
SHA-1B768EF63D60A77D5A05A71FB19B6B1D2805AD944
SHA-25621CDA7A55A8D4B32A43C654F0D4D4A1587096B35BF2A93EA12A2E3A8C2C0B88F
SSDEEP384:rp2Msr0v0F6gB3KOrc9RlWWwdCnH7LD+MKO6qsC2H:rp2yv+LoWpdCnbvPA
TLSHT18D82A42F774443F205C30A61668B68DFE32FA17A722A5094385DC25D271BE3983FEAD5
Key Value
FileName./usr/share/doc/perl-asa/Changes
FileSize426
MD5A44870AA90AA633287932489CAE82790
SHA-199D56DB4D753CB81FF0141C2C1DAB3EB00BEFFA5
SHA-2567DA39F36DAB25619D2B7E75E265A4668D61522AC462A93A4CD5A7BC619177117
SSDEEP6:qDCV//vI6tn5vfeQBGRM2M6FrBQHwb0gvHs4MNPZWykuGM6wwEEhEpS:HdXzfff6FrBGwbdPbMNPZWhM6ww/
TLSHT19DE0AB084AB004A07607424184B72BA46BF8B086E3810CD7B2BE80F01303246AE3708F