String :: Interpolate

String :: Interpolate is een Perl-wikkel voor het bebouwen van de PERL-interpolatiemotor.
Download nu

String :: Interpolate Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Brian McCauley
  • Uitgever website:
  • http://search.cpan.org/~nobull/String-Interpolate-0.3/lib/String/Interpolate.pm

String :: Interpolate Tags


String :: Interpolate Beschrijving

String :: Interpolate is een Perl-wrapper voor ingebouwde de Perl interpolatie motor. SYNOPSIS # Functionele interface gebruik String :: Interpolate qw (safe_interpolate interpoleren); onze ($ GREET) = 'Hello'; # Kan lexicale druk interpolate niet ( '$ GREET $ 1n', ); # Object-interface gebruik String :: Interpolate; mijn $ who; mijn $ template = new String :: Interpolate {WHO => wie $}; $ Template -> {TIME} = sub () {localtime}; # Tie $ TIME om localtime () $ template -> (); # Stel $ 1, $ 2 $ template -> = 'is'; # Sets $ 3 $ die 'oude vriend' =; $ Template -> ( '$ REV {olleh} $ WHO, $ 2 $ 3 $ 1 $ TIME $ _'); # Set string naar $ template te verwerken -> {REV} = sub {achteruit @_}; # Tie% REV om achteruit () $ _ = ''; afdrukken "$ templaten"; # Voer interpolatie # peform de interpolatie in een veilige ruimte. mijn $ replace = veilig String :: Interpolate 'pi $ 1'; mijn $ search = qr / (w +) /; $ _ = "HELLO worldn"; s / $ search / $ vervangen / eg; # / E Onderdrukt optimalisatie druk; String :: Interpolate biedt een nette interface naar de oplossing voor dat perenial Perl probleem - hoe de Perl snaar interpolatie motor beroepen op een koord in een scalaire variable.A String :: Interpolate object kapselt een string en een context waarin het wordt onderworpen aan Perl interpolatie. In de meest eenvoudige, standaard geval de context eenvoudigweg de naamruimte (pakket) waarvan de constructor was called.A String :: Interpolate doel kan een verwijzing naar een array en hashes die wordt gebruikt om de speciale variabelen bevolken $ 1 etc ingedrukt sommige variabelen voor respectievelijk vóór elke interpolation.In algemene bijzondere globaal globale variabelen zoals $ _ kunnen worden gebruikt bij de interpolatie, de uitzondering @_ die altijd leeg tijdens het interpolation.The geïnterpoleerde reeks wordt verwerkt met vernauwingen en waarschuwingen ingeschakeld exclusief 'strikte vars' en 'waarschuwingen UNINITIALIZED' zodat interpoleren niet-gedefinieerde variabelen zal stilletjes genegeerd worden. Dit gedrag kan worden gewijzigd met behulp van de pragma () method.Because de Perl snaar interpolatie motor kan willekeurige Perl code die je niet wilt wilt gebruiken op strings van niet-vertrouwde bronnen zonder enige voorzorgsmaatregelen te bellen. Om deze reden kan String :: Interpolate voorwerpen worden genomen om de veiligheid compartimenten gebruiken. Dit is natuurlijk alleen zo veilig als veilig en u wordt geadviseerd om het hoofdstuk "WARNING" van de Safe documentation.When interpoleren in een veilige compartiment pakket legenda worden geïmporteerd met gebonden wrapper variabelen zodat hun waarden kunnen niet worden geïnterpreteerd als referenties en zodat zij niet kunnen worden gebruikt om de waarden buiten het compartiment verandert. Dit probleem kan worden onderdrukt door de unsafe_symbols () methode. Merk op dat als je wilt gebonden variabele of variabelen die verwijzingen naar objecten die gebruik maken van overbelasting in een veilige ruimte te importeren dan zul je nodig hebt om veel voetenwerk doen, tenzij je safe_hole () gebruiken method.By default * _ wordt gedeeld door Safe compartimenten kunnen leiden, zodat de ruimte lekken. De $ _ en% _ variabelen worden daarom onderworpen aan dezelfde soortgelijke voorzorgsmaatregelen om geïmporteerde symbolen. Dit gedrag kan worden onderdrukt met behulp van de unsafe_underscore () method.Perl snaar interpolatie kan natuurlijk, gooien uitzonderingen. Standaard String :: Interpolate objecten niet vangen (of rethrow) deze uitzonderingen bij het werken in een eenvoudige namespace en val hen doen bij het werken in een veilige ruimte. Dit probleem kan worden overschreven door de val () of Pragma () methoden. Als er een uitzondering tijdens interpolatie is gevangen dan undef zal worden teruggegeven als het resultaat van de interpolatie en $ @ is de uitzondering op de gebruikelijke way.When smet controle te houden ingeschakeld, een poging om interpolatie (met behulp van eval ()) uit te voeren op een bedorven tekenreeks natuurlijk mislukken. Echter, bij gebruik van een veilige compartiment :: string Interpolate de corrumperen strippen van de draad vóór interpolatie en plaats het terug achteraf. Ook String :: Interpolate zal argumenten doorgegeven aan callbackfuncties genoemd als gevolg van het uitvoeren van interpolatie op een bedorven koord aantasten. Merk op dat als gevolg van het mechanisme dat wordt gebruikt om toe te wijzen $ 1 et al kunnen ze nooit worden gehandhaafd, zelfs als de waarden in de array die wordt gebruikt om hen zijn tainted.By standaard String :: Interpolate geen subroutines exporteren, maar als een concessie aan programmeurs die liever niet expliciet gebruik voorwerpen van de functies interpoleren () en safe_interpolate () zijn exportable.Requirements: · Perl Vereisten: · Perl


String :: Interpolate Gerelateerde software

Mamory

MAMORY is een bibliotheek voor ROM-beheer in emulator-gerelateerde projecten. ...

158

Downloaden