KARP :: CLAN

Rapportfouten uit het perspectief van de beller van een "clan" van modules
Download nu

KARP :: CLAN Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Steffen Beyer
  • Uitgever website:
  • http://search.cpan.org/~stbey/

KARP :: CLAN Tags


KARP :: CLAN Beschrijving

Meld fouten uit het perspectief van de beller van een "clan" van modules KARP :: Clan is een PERL-module op basis van "karper.pm" van PERL 5.005_03. Het is gewijzigd om alle pakketnamen te overslaan die overeenkomen met het patroon dat wordt gegeven in de verklaring "qw ()" (of argumentlijst) .Suppose heeft u een gezin van modules of klassen met de naam "Pack :: a", "Pack :: b" enzovoort, en elk van hen gebruikt "karper :: clan qw (^ pack: :);" (of ten minste degene waarin de fout of de waarschuwing wordt verhoogd). Dit wanneer bijvoorbeeld uw script "tool.pl" oproepen module "pack :: a" en module "pack :: een" oproepen module "pack :: B ", een uitzondering in module" Pack :: B "lijkt te zijn ontstaan in" Tool.pl "waar" Pack :: een "werd genoemd, en niet in" Pack :: a "waar" Pack :: B " "Was genoemd, zoals de niet-gemodificeerde" carp.pm "zou proberen te laten geloven :-). Dit werkt op dezelfde manier als" Pack :: b "roept" Pack :: C "waar de uitzondering is verhoogd, enzovoort , deze geeft alle fouten de schuld in het "Pack :: *" -modules op de gebruiker van deze modules, dwz op u. ;-) Het overslaan van een clan (of familie) van pakketten volgens een patroon dat zijn leden beschrijft, is noodzakelijk in gevallen waarin deze modules geen klassen zijn afgeleid van elkaar (en dus bij het onderzoeken van @isa - zoals in de oorspronkelijke "karper. PM "-module - helpt niet). Het doel en voordeel hiervan is dat een" clan "van modules kan samenwerken (en elkaar kunnen bellen) en uitzonderingen op verschillende diepten naar beneden de roephiërarchie laten zien en nog steeds als een monolithisch blokkering wordt weergegeven (alsof ze een enkele module waren) vanuit het perspectief van de beller. In geval wil je gewoon alle foutmeldingen van de module afweren waarin je 'karpers gebruikt :: clan ", dat wil zeggen, als je alle foutmeldingen wilt maken Berichten of waarschuwingen om te voorkomen van waaruit uw module werd genoemd (dit is wat u gewoonlijk vroeger gebruikt om "karper te gebruiken;" voor ;-)), in plaats van in uw module zelf (wat u kunt doen met een "Die" of "WARNEN" hoe dan ook), u hoeft geen patroon te bieden, de module geeft automatisch de juiste voor Y ou.i.e., gewoon "gebruik karper :: clan;" Zonder argumenten en call "karper" of "Croak", en ze verdedigen uw module automatisch tegen alle schuld! Met andere woorden, een patroon is alleen nodig als u meerdere modules (meer dan één) samenwerkt en verschijnen alsof ze er maar één waren. Een stapel Tracéas een foutopsporingshulp, kun je "karper ::: clan" dwingen om een "Croak" te behandelen als een "bekennen" en een "karper" als een "Cluck". Met andere woorden, dwingen een gedetailleerd stapelspoor te geven. Dit kan zeer behulpzaam zijn bij het begrijpen waarom, of van waaruit, een waarschuwing of fout wordt gegenereerd. Deze functie is ingeschakeld door "importeren" het niet-bestaande symbool 'uitgebreide', of door de globale variabele "$ karpers in te stellen" :: Clan :: uitgebreid "naar een echte waarde. Je zou het meestal in staat stellen door het te zeggen van CARP :: Clan QW (uitgebreid); merk op dat u beiden een" gezinspatroon "en de snaar" verbans "in de" QW "kunt opgeven () "Term (of argumentlijst) van de verklaring" Gebruik ", maar bedenk dat een patroon van pakketten naar voren is, is zinloos wanneer" uitgebreid "een volledige stapelbaan veroorzaakt. Synopsis karper - waarschuwing van fouten (vanuit het perspectief van de beller) Cluk - waarschuwen voor fouten met stapel backtrace croak - sterven aan fouten (uit perspectief van beller) Bekennen - sterven aan fouten met stapel backtrace gebruik karper :: clan qw (^ myclan: :); Croak "We zijn hier weg!"; gebruik karper :: clan; bekennen "Dit is hoe we hier zijn!"; Vereisten: · Perl Wat is er nieuw in deze release: · Deze release lost een probleem op met het informeren van het type licentie en maakt de testsuite compatibel met PERL-versies eerder dan 5.6.0.


KARP :: CLAN Gerelateerde software