NameSpace :: Schoon

Houd de import en functies uit uw naamruimte
Download nu

NameSpace :: Schoon Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Florian Ragwitz
  • Uitgever website:
  • http://search.cpan.org/~flora/

NameSpace :: Schoon Tags


NameSpace :: Schoon Beschrijving

Houd de import en functies uit uw naamruimte NameSpace :: Clean is een PERL-module om functies en import uit uw naamruimte te houden. Handpakketten CleanWhen U definieert een functie of importeert u een, in een Perl-pakket, het zal natuurlijk ook beschikbaar zijn als een methode. Dit veroorzaakt geen problemen, maar het kan subclading compliceren en bijvoorbeeld pluginklassen die zijn opgenomen via meerdere overerving door ze als basisklassen te laden. De naamruimte :: Clean Pragma zal aan het einde alle eerder aangegeven of geïmporteerde symbolen aan het einde verwijderen. van de compilercyclus van de huidige pakket. Functies in het pakket zelf worden nog steeds gebonden aan hun naam, maar ze zullen niet opdagen als methoden in uw klasse of instances.van Unimporting via nee U kunt NameSpace vertellen :: Schoon om te beginnen met het verzamelen van functies voor het volgende gebruik Namespace: :schoon; Specificatie. U kunt de Vlag van --Except gebruiken om NameSpace te vertellen: Reinigen die u niet wilt om een bepaalde functie of methode te verwijderen. Een gemeenschappelijk gebruik zou een module zijn die een importmethode uitvoert, samen met enkele functies: gebruik ModuleExportingImport; Gebruik NameSpace :: Clean -Except => ; Als u gewoon een enkele sub wilt - kunt u het direct doorgeven. Voor meer dan één waarde moet u een array-referentie gebruiken. Functies verwijderen wanneer uw scope is gecompileerd, is ook mogelijk om de naamruimte expliciet te vertellen: Reinig welke pakketten te verwijderen wanneer de omringende scope is voltooid. Hier is een voorbeeld: pakket foo; strikt gebruik; # Gezegend niet beschikbaar Sub My_class {Gebruik Scalar :: util QW (gezegend); Gebruik NameSpace :: Reinig QW (Gezegend); # Gezegend beschikbaar retournettende verschuiving; } # Gezegend niet beschikbaar Gebruik van NameSpace :: Reinig samen met elanden die u de geïnstalleerde meta-methode wilt behouden. Dus je lessen moeten eruit zien: pakket foo; gebruik eland; Gebruik NameSpace :: Clean -Except => 'Meta'; ... Hetzelfde geldt voor Moose :: Rol.Cleaning Andere pakketten kun je vertellen dat je een ander pakket wilt opruimen in plaats van het importeren. Om dit te doen, moet je de -cleanee-optie als volgt doorgeven: Pakket mijn :: Moosex :: NameSpace :: Schoon; strikt gebruik; Gebruik Namespace :: Schoon (); # Geen opruiming, gewoon sub importeren {namespace :: clean-> importeren (-cleanee => Scalar (beller), -Except => 'Meta',); } Als u niet geeft om NameSpace :: Reinigt Discover-and - behalve Logica, en wil gewoon Subroutines verwijderen, probeer "clean_subroutines". Synopsis pakket foo; gebruik waarschuwingen; strikt gebruik; gebruik karper qw (croak); # 'Croak' wordt verwijderd Subbalk {23} # 'bar' wordt verwijderd # Verwijder alle eerder gedefinieerde functies Gebruik NameSpace :: Schoon; Sub baz {bar ()} # 'Baz' nog gedefinieerd, 'bar' nog steeds gebonden # Begin naar verzameling functie namen vanaf hier weer geen naamruimte :: schoon; Sub Quux {BAZ ()} # 'Quux' wordt verwijderd # Verwijder alle functies die zijn gedefinieerd na het 'nee' UnIMPORT GEBRUIK NAMEESPACE :: CLEAN; # Zal afdrukken: 'nee', 'nee', 'ja' en 'nee' print + (__ pakket __-> kan ('croak')? 'Ja': 'Nee'), " "; Print + (__-pakket __-> kan ('bar')? 'Ja': 'Nee')," "; Print + (__-pakket __-> kan ('baz')? 'Ja': 'Nee')," "; Print + (__-pakket __-> kan ('quux')? 'Ja': 'Nee')," "; 1; vereisten: · Perl


NameSpace :: Schoon Gerelateerde software