_  _   ,_
/^\/^\-/ @D
~(________/ PERL.LT
|L |L
L L
Straipsniai  Funkcijos 
Funkcijos/package - deklaruoti atskirą globalią namespace
  • package NAMESPACE
  • package

    Deklaruoja kompiliacijos vienetą esant duotoje vardų srityje. Deklaracijos galiojimo sritis yra nuo pačios deklaracijos iki bloko pabaigos, failo arba eval (taip pat kaip ir my operatorius). Visi tolimesni neparuošti dinaminiai identifikatoriai bus šioje vardų srityje. Paketo sakinys paveikia tik dinaminius kintamuosius - įskaitant tuos, kurie buvo panaudoti su local, bet neleksikiniai kintamieji, kurie yra sukurti su my. Paprastai tai būtų pirmoji deklaracija faile, įterpta require ar use operatoriumi. Galima persijungti į paketą daugiau nei vienoje vietoje; jis papraščiausiai paveikia, kuris simbolis lentelėje yra naudojamas kompiliatoriaus likusiam blokui. Galima kreiptis į kintamuosius ir filehandle'us kituose paketuose pridedant priešdėlį su paketo pavadinimo ir dvitaškiu:$Package::Variable . Jei paketo vardas yra null'inis, imamas main paketas. T.y. $::sail yra tolygus $main::sail (kaip ir $main'sail , vis dar sutinkamas senesniame kode).

    Jei NAMESPACE praleistas, nėra jokio einamojo paketo ir visi identifikatoriai turi būti pilnai paruošti arba leksiniai. Visgi, rimtai rekomenduojama nenaudoti šios galimybės, nes tai gali atnešti netikėtų rezultatų, o kai kurias Perl versijas netgi pakabinti. Tai jau atgyvenę ir bus išimta iš ateities versijų.

    See "Packages" perlmod'e dėl daugiau informacijos apie paketus, modulius ir klases. Žr. perlsub dėl kitų galiojimo srities niuansų.

algirdas@perl.lt 2005.04.11 - $dabar