How to Install and Uninstall perl-Contextual-Return Package on openSuSE Tumbleweed
Last updated: November 17,2024
1. Install "perl-Contextual-Return" package
Please follow the instructions below to install perl-Contextual-Return on openSuSE Tumbleweed
$
sudo zypper refresh
Copied
$
sudo zypper install
perl-Contextual-Return
Copied
2. Uninstall "perl-Contextual-Return" package
This tutorial shows how to uninstall perl-Contextual-Return on openSuSE Tumbleweed:
$
sudo zypper remove
perl-Contextual-Return
Copied
3. Information about the perl-Contextual-Return package on openSuSE Tumbleweed
Information for package perl-Contextual-Return:
-----------------------------------------------
Repository : openSUSE-Tumbleweed-Oss
Name : perl-Contextual-Return
Version : 0.004014-1.26
Arch : noarch
Vendor : openSUSE
Installed Size : 158.7 KiB
Installed : No
Status : not installed
Source package : perl-Contextual-Return-0.004014-1.26.src
Upstream URL : http://search.cpan.org/dist/Contextual-Return/
Summary : Create context-sensitive return values
Description :
Usually, when you need to create a subroutine that returns different values
in different contexts (list, scalar, or void), you write something like:
sub get_server_status {
my ($server_ID) = @_;
my %server_data = _ascertain_server_status($server_ID);
if (wantarray()) {
return @server_data{ qw(name uptime load users) };
}
if (defined wantarray()) {
return $server_data{load};
}
if (!defined wantarray()) {
carp 'Useless use of get_server_status() in void context';
return;
}
else {
croak q{Bad context! No biscuit!};
}
}
That works okay, but the code could certainly be more readable. In its
simplest usage, this module makes that code more readable by providing
three subroutines--'LIST()', 'SCALAR()', 'VOID()'--that are true only when
the current subroutine is called in the corresponding context:
use Contextual::Return;
sub get_server_status {
my ($server_ID) = @_;
my %server_data = _ascertain_server_status($server_ID);
if (LIST) { return @server_data{ qw(name uptime load users) } }
if (SCALAR) { return $server_data{load} }
if (VOID) { print "$server_data{load}\n" }
else { croak q{Bad context! No biscuit!} }
}
-----------------------------------------------
Repository : openSUSE-Tumbleweed-Oss
Name : perl-Contextual-Return
Version : 0.004014-1.26
Arch : noarch
Vendor : openSUSE
Installed Size : 158.7 KiB
Installed : No
Status : not installed
Source package : perl-Contextual-Return-0.004014-1.26.src
Upstream URL : http://search.cpan.org/dist/Contextual-Return/
Summary : Create context-sensitive return values
Description :
Usually, when you need to create a subroutine that returns different values
in different contexts (list, scalar, or void), you write something like:
sub get_server_status {
my ($server_ID) = @_;
my %server_data = _ascertain_server_status($server_ID);
if (wantarray()) {
return @server_data{ qw(name uptime load users) };
}
if (defined wantarray()) {
return $server_data{load};
}
if (!defined wantarray()) {
carp 'Useless use of get_server_status() in void context';
return;
}
else {
croak q{Bad context! No biscuit!};
}
}
That works okay, but the code could certainly be more readable. In its
simplest usage, this module makes that code more readable by providing
three subroutines--'LIST()', 'SCALAR()', 'VOID()'--that are true only when
the current subroutine is called in the corresponding context:
use Contextual::Return;
sub get_server_status {
my ($server_ID) = @_;
my %server_data = _ascertain_server_status($server_ID);
if (LIST) { return @server_data{ qw(name uptime load users) } }
if (SCALAR) { return $server_data{load} }
if (VOID) { print "$server_data{load}\n" }
else { croak q{Bad context! No biscuit!} }
}