Skip to content

Raku port of Perl's __FILE__ and associated functionality

License

Notifications You must be signed in to change notification settings

lizmat/P5__FILE__

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Actions Status

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.

About

Raku port of Perl's __FILE__ and associated functionality

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages