NAME
Raku port of Perl's FILE and associated functionality
SYNOPSIS
use P5__FILE__; # exports __FILE__, __LINE__, __PACKAGE__, __SUB__
DESCRIPTION
This module tries to mimic the behaviour of Perl's __FILE__
, __LINE__
, __PACKAGE__
and __SUB__
functionality as closely as possible in Raku.
TERMS
PACKAGE
A special token that returns the name of the package in which it occurs.
Raku
$?PACKAGE.^name
Because $?PACKAGE
gives you the actual Package
object (which can be used for introspection), you need to call the .^name
method to get a string with the name of the package.
FILE
A special token that returns the name of the file in which it occurs.
Raku
$?FILE
LINE
A special token that compiles to the current line number.
Raku
$?LINE
SUB
A special token that returns a reference to the current subroutine, or "undef" outside of a subroutine.
Raku
&?ROUTINE
Because &?ROUTINE
gives you the actual Routine
object (which can be used for introspection), you need to call the .name
method to get a string with the name of the subroutine.
AUTHOR
Elizabeth Mattijsen liz@raku.rocks
Source can be located at: https://github.com/lizmat/P5__FILE__ . Comments and Pull Requests are welcome.
COPYRIGHT AND LICENSE
Copyright 2018, 2019, 2020, 2021 Elizabeth Mattijsen
Re-imagined from Perl as part of the CPAN Butterfly Plan.
This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.