Moduł Acme::Void

Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowa

Obsługa modułu Acme::Void

use Acme::Void; # wywołanie funkcji w jawnie pustym kontekście void do_something(); # a teraz kontekst pusty zaznaczony wyraźniej void = do_something(); # kontekstu pustego możesz użyć zamiast undef my $str = void; # pustka zwraca pustkę void->foo; # zawsze void use Acme::Void qw(:all); # dla tych co lubią inne języki my $foo = nil; my $bar = null; # nieszczęśliwa miłość... if( $your_love eq nothing ){ my @heart = empty; } # a tu nie wykonujemy żadnej operacji noop; # można też użyć stylu obiektowego sub meet_a_cute_girl { my $self = shift; $self->noop; # to znowu nic! } # równość void = empty = nil = noop = nothing = null = undef; void = void->void;

Co to jest?

Dzięki temu modułowi kontekst pusty użyty w Twoich skryptach może być jeszcze bardziej pusty niż dotychczas.

Szczegóły

Na pewno potrzebujesz void i innych nic nie robiących funkcji by Twoje programy były bardziej cool

Jak to działa

Moduł korzysta z modułu Class:BlackHole, który zamienia sposób postępowania Perla z wywołaniami nieistniejących metod na brak operacji. Cała magia to jedna krotka procedura:sub :lvalue { lnoreturn if want qw(LVALUE ASSIGN); return my $self = bless sub {}, $class if want qw(OBJECT LVALUE); return; };Procedura ta jest wywoływana dla obługiwanych słów kluczowych. Zwraca odpowiednią wartość lub procedurę pustą w zależności od kontekstu wywołania.

Funkcje

void
Umożliwia styl stosowany powyżej.
empty, nil, noop, nothing, null
Wszystko to synonimy dla void. By je zaimportować nie zapomnij użyć ':all'.

Zależności

Want, Class::BlackHole

Dodatkowe informacje

Cała dokumentacja znajduje się na http://search.cpan.org/~ryochin/Acme-Void-0.02/Void.pm

Autor opracowania

P.B.

Uniwersytet Gdański - Instytut Informatyki - Strona domowa - Perl - Wyklady
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.