devel/p5-lexical-underscore 0.004 DragonFly
Access lexical underscore of your caller
- System
- DragonFly
- Repository
- DPorts
- Maintainer
- [email protected] (as in FreeBSD)
- License
- ART10, GPLv1+
- Categories
- devel, perl5
- Package size
- 11.3 KiB, 42.6 KiB installed
Description
Starting with Perl 5.10, it is possible to create a lexical version of the Perl default variable $_. Certain Perl constructs like the given keyword automatically use a lexical $_ rather than the global $_.
It is occasionallly useful for a sub to be able to access its caller's $_ variable regardless of whether it was lexical or not. The (_) sub prototype is the official way to do so, however there are sometimes disadvantages to this; in particular it can only appear as the final required argument in a prototype, and there is no way of the sub differentiating between an explicitly passed argument and $_.
The lexical::underscore function returns a scalar reference to either a lexical $_ variable somewhere up the call stack (using PadWalker magic), or to the global $_ if there was no lexical version.
Wrapping lexical::underscore in ${ ... } dereferences the scalar reference, allowing you to access (and even assign to) it.
In the other systems
The newest version among them is 0.004, as upstream numbers it.
| System | Port | Version | Vulnerabilities | Status | Maintainer | Last update |
|---|---|---|---|---|---|---|
| DragonFly | devel/p5-lexical-underscore | 0.004 newest | none known | - | [email protected] | - |
| FreeBSD | devel/p5-lexical-underscore | 0.004 newest | none known | - | [email protected] | - |
| HardenedBSD | devel/p5-lexical-underscore | 0.004 newest | no data | - | [email protected] | - |
| GhostBSD | devel/p5-lexical-underscore | 0.004 newest | no data | - | [email protected] | - |
Install
Binary package:
pkg install p5-lexical-underscore
From DPorts:
cd /usr/dports/devel/p5-lexical-underscore && make install clean
Dependency graph
Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.